feat: add dev and prod deployment scaffolding

This commit is contained in:
Md Bayazid Bostame
2026-03-28 20:45:07 +01:00
parent 3c0073142f
commit 2b9b46bd15
13 changed files with 420 additions and 1 deletions

33
.github/workflows/deploy-prod.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: Deploy Production
on:
workflow_dispatch:
concurrency:
group: deploy-prod
cancel-in-progress: false
jobs:
deploy:
runs-on: ubuntu-latest
environment: production
steps:
- name: Deploy over SSH
uses: appleboy/ssh-action@v1.2.0
with:
host: ${{ secrets.PROD_DEPLOY_HOST }}
username: ${{ secrets.PROD_DEPLOY_USER }}
key: ${{ secrets.PROD_DEPLOY_SSH_KEY }}
port: ${{ secrets.PROD_DEPLOY_PORT || 22 }}
script: |
set -e
REPO_URL="git@github.com:${{ github.repository }}.git"
DEPLOY_DIR="${{ secrets.PROD_DEPLOY_PATH }}"
if [ ! -d "$DEPLOY_DIR/.git" ]; then
git clone "$REPO_URL" "$DEPLOY_DIR"
fi
cd "$DEPLOY_DIR"
git fetch --all --prune
git checkout main || git checkout -b main origin/main
git reset --hard origin/main
RUN_DJANGO_CHECK=1 ./scripts/deploy_stack.sh .env.prod docker-compose.prod.yml