mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-14 17:37:05 +05:30
github: switch snapshots to GitHub
This commit is contained in:
parent
78771c86bf
commit
178f824155
2 changed files with 50 additions and 16 deletions
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
|
@ -94,8 +94,4 @@ jobs:
|
|||
- name: Deploy snapshot
|
||||
run: scripts/deploy-snapshot.sh
|
||||
env:
|
||||
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||
SSH_USERNAME: ${{ secrets.SSH_USERNAME }}
|
||||
SERVER_ADDRESS: ${{ secrets.SERVER_ADDRESS }}
|
||||
SERVER_DESTINATION: ${{ secrets.SERVER_DESTINATION }}
|
||||
SSH_PORT: ${{ secrets.SSH_PORT }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
|
|
@ -1,13 +1,51 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
export SSHDIR="$HOME/.ssh"
|
||||
export SERVER_DEPLOY_STRING="$SSH_USERNAME@$SERVER_ADDRESS:$SERVER_DESTINATION"
|
||||
mkdir -p "$SSHDIR"
|
||||
echo "$ACTIONS_DEPLOY_KEY" > "$SSHDIR/key"
|
||||
chmod 600 "$SSHDIR/key"
|
||||
mkdir -p "$GITHUB_WORKSPACE/Claw"
|
||||
cp -v ./android/build/outputs/apk/release/android-release.apk "$GITHUB_WORKSPACE/Claw/Claw.apk"
|
||||
cd "$GITHUB_WORKSPACE/Claw"
|
||||
rsync -ahvcr --omit-dir-times --progress --delete --no-o --no-g -e "ssh -i $SSHDIR/key -o StrictHostKeyChecking=no -p $SSH_PORT" . "$SERVER_DEPLOY_STRING"
|
||||
set -ex
|
||||
|
||||
LATEST_TAG="latest"
|
||||
CURRENT_REV="$(git rev-parse --short HEAD)"
|
||||
ASSET_DIRECTORY="${GITHUB_WORKSPACE:?}/android/outputs"
|
||||
|
||||
function overwrite_local_tag() {
|
||||
git tag -f "${LATEST_TAG}"
|
||||
}
|
||||
|
||||
function overwrite_remote_tag() {
|
||||
git push -f origin "${LATEST_TAG}"
|
||||
}
|
||||
|
||||
function has_release() {
|
||||
gh release view "${LATEST_TAG}" &>/dev/null
|
||||
echo "$?"
|
||||
}
|
||||
|
||||
function delete_release() {
|
||||
gh release delete --yes "${LATEST_TAG}"
|
||||
}
|
||||
|
||||
function create_rev_file() {
|
||||
pushd "${ASSET_DIRECTORY}" || return
|
||||
echo "${CURRENT_REV}" | tee rev-hash.txt
|
||||
popd || return
|
||||
}
|
||||
|
||||
function create_release() {
|
||||
local CHANGELOG_FILE
|
||||
CHANGELOG_FILE="$(mktemp)"
|
||||
echo "Latest release for Claw from revision ${CURRENT_REV}" | tee "${CHANGELOG_FILE}"
|
||||
pushd "${ASSET_DIRECTORY}" || return
|
||||
gh release create --prerelease --title "Latest snapshot build" --notes-file "${CHANGELOG_FILE}" "${LATEST_TAG}" ./*
|
||||
popd || return
|
||||
}
|
||||
|
||||
overwrite_local_tag
|
||||
|
||||
if [[ "$(has_release)" -eq 0 ]]; then
|
||||
delete_release
|
||||
fi
|
||||
|
||||
create_rev_file
|
||||
|
||||
overwrite_remote_tag
|
||||
|
||||
create_release
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue