Files
scripts/.gitea/workflows/deploy.yml
T
petrbalvin fad53f961e
Deploy / deploy (push) Successful in 16s
ci(deploy): bump actions/checkout to v7
2026-07-26 22:41:07 +02:00

36 lines
1.1 KiB
YAML

# Deploy — files over rsync. Runs on every push to main and on manual
# dispatch, because scripts are not versioned — they go live immediately.
# Requires secrets: DEPLOY_HOST, DEPLOY_USER, DEPLOY_PATH, DEPLOY_PASSWORD.
name: Deploy
on:
push:
branches: [main]
workflow_dispatch:
jobs:
deploy:
runs-on: alpine
steps:
- uses: actions/checkout@v7
- name: Generate SHA256SUMS
run: sha256sum *.py > SHA256SUMS
- name: Deploy via rsync
timeout-minutes: 3
env:
DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }}
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
DEPLOY_PATH: ${{ secrets.DEPLOY_PATH }}
DEPLOY_PASSWORD: ${{ secrets.DEPLOY_PASSWORD }}
run: |
set -euo pipefail
echo "Deploying to ${DEPLOY_USER}@${DEPLOY_HOST}:${DEPLOY_PATH}"
sshpass -p "$DEPLOY_PASSWORD" rsync -avz --delete \
-e "ssh -o StrictHostKeyChecking=accept-new -o UserKnownHostsFile=/dev/null" \
*.py SHA256SUMS "${DEPLOY_USER}@${DEPLOY_HOST}:${DEPLOY_PATH}"
echo "Deploy complete."