my-favs/.forgejo/workflows/deploy.yml
rcalvo 00f4f52c03
All checks were successful
Deploy / deploy (push) Successful in 3s
Deploy with --no-cache
2026-03-29 04:51:32 +00:00

35 lines
1.1 KiB
YAML

name: Deploy
on:
push:
branches: [main]
workflow_dispatch:
inputs:
ref:
description: "Commit or branch to deploy (default: main)"
required: false
default: "main"
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Deploy via SSH
run: |
REF="${{ github.event.inputs.ref || github.sha }}"
SHORT_SHA=$(echo "${REF}" | cut -c1-7)
mkdir -p ~/.ssh
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null
ssh -o StrictHostKeyChecking=no opc@${{ secrets.DEPLOY_HOST }} << ENDSSH
cd /home/opc/services/my-favs
git fetch origin
git checkout ${REF}
git pull origin main || true
export VITE_DEPLOYED_VERSION="v:${SHORT_SHA}"
sudo -E docker compose up -d --build --no-cache
echo "${REF}" > .deployed-commit
echo "Deployed: ${REF} at $(date -u +%Y-%m-%dT%H:%M:%SZ)"
ENDSSH