name: Deploy on: push: branches: - dev - develop workflow_dispatch: jobs: deploy-dev: if: ${{ github.event_name == 'push' }} runs-on: ubuntu-latest steps: - name: Deploy dev over SSH run: | mkdir -p ~/.ssh printf '%s\n' "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/deploy_key chmod 600 ~/.ssh/deploy_key ssh -i ~/.ssh/deploy_key -o StrictHostKeyChecking=accept-new "${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }}" ' set -e cd "${{ secrets.DEV_DEPLOY_PATH }}" git fetch --all --prune git pull --ff-only docker compose up -d --build ' deploy-prod: if: ${{ github.event_name == 'workflow_dispatch' }} runs-on: ubuntu-latest steps: - name: Deploy prod over SSH run: | mkdir -p ~/.ssh printf '%s\n' "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/deploy_key chmod 600 ~/.ssh/deploy_key ssh -i ~/.ssh/deploy_key -o StrictHostKeyChecking=accept-new "${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_HOST }}" ' set -e cd "${{ secrets.PROD_DEPLOY_PATH }}" git fetch --all --prune git pull --ff-only docker compose up -d --build '