info-canicule/.forgejo/workflows/deploy.yml
Florian 93092b1f56
All checks were successful
Deploy info-canicule / deploy (push) Successful in 24s
ci: auto-heal session pass-cli avant make env
Appelle /opt/infra/scripts/ensure-pass-session.sh (auto-recovery via recovery
PAT) avant make env → plus de deploy cassé par « session invalidated ».

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-01 17:07:37 +02:00

32 lines
1 KiB
YAML

name: Deploy info-canicule
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Configure SSH
run: |
mkdir -p ~/.ssh
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "${{ secrets.VPS_KNOWN_HOSTS }}" > ~/.ssh/known_hosts
chmod 644 ~/.ssh/known_hosts
- name: Deploy on VPS
run: |
ssh deploy@vps.nocleus.com bash -se <<'EOSSH'
set -euo pipefail
cd /opt/projects/info-canicule
git fetch --prune origin main
git reset --hard origin/main
# Auto-répare la session pass-cli expirée avant de rendre le .env,
# sinon « Your session has been invalidated » (cf. infra scripts/ensure-pass-session.sh).
[ -x /opt/infra/scripts/ensure-pass-session.sh ] && /opt/infra/scripts/ensure-pass-session.sh || true
make env
docker compose up -d --build --wait
docker image prune -f
EOSSH