build: move to systemd trigger
This commit is contained in:
33
.github/workflows/deploy.yml
vendored
33
.github/workflows/deploy.yml
vendored
@@ -67,18 +67,23 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Add deploy SSH key
|
- name: Deploy via systemd trigger
|
||||||
run: |
|
run: |
|
||||||
mkdir -p ~/.ssh
|
SERVICE="${{ needs.build-and-push.outputs.repo_slug }}"
|
||||||
echo "${{ secrets.WINSOMNIA_DEPLOY_KEY }}" > ~/.ssh/id_ed25519
|
ENV="${{ needs.build-and-push.outputs.deploy_env }}"
|
||||||
chmod 600 ~/.ssh/id_ed25519
|
IMAGE="${{ needs.build-and-push.outputs.image }}"
|
||||||
|
|
||||||
- name: Add host key
|
REMOTE_ROOT="${{ secrets.WINSOMNIA_INFRA_ROOT }}"
|
||||||
run: ssh-keyscan ${{ secrets.WINSOMNIA_DEPLOY_HOST }} >> ~/.ssh/known_hosts
|
REMOTE_PATH="$REMOTE_ROOT/$SERVICE/$ENV"
|
||||||
|
|
||||||
- name: Run deploy.sh on server
|
ssh ${{ secrets.WINSOMNIA_DEPLOY_USER }}@${{ secrets.WINSOMNIA_DEPLOY_HOST }} <<EOF
|
||||||
run: |
|
set -e
|
||||||
REMOTE_PATH="${{ secrets.WINSOMNIA_INFRA_ROOT }}/${{ needs.build-and-push.outputs.repo_slug }}/${{ needs.build-and-push.outputs.deploy_env }}"
|
|
||||||
|
echo "[CI] Writing deploy request..."
|
||||||
ssh ${{ secrets.WINSOMNIA_DEPLOY_USER }}@${{ secrets.WINSOMNIA_DEPLOY_HOST }} \
|
cat > "$REMOTE_PATH/data/.deploy_req" <<REQ
|
||||||
"${REMOTE_PATH}/deploy.sh '${{ needs.build-and-push.outputs.image }}'"
|
IMAGE=$IMAGE
|
||||||
|
REQ
|
||||||
|
|
||||||
|
echo "[CI] Triggering deploy via systemd..."
|
||||||
|
sudo /bin/systemctl start winsomnia-deploy@${SERVICE}-${ENV}.service
|
||||||
|
EOF
|
||||||
Reference in New Issue
Block a user