Skip to content

ci/cd: Added GitHub Action for auto-deploy on push to main. #1

ci/cd: Added GitHub Action for auto-deploy on push to main.

ci/cd: Added GitHub Action for auto-deploy on push to main. #1

Workflow file for this run

name: Continuous Integration
on:
push:
branches:
- main
concurrency:
group: main
cancel-in-progress: true
jobs:
qa:
name: Django Tests
uses: ./.github/workflows/django_tests.yml
deploy:
name: Deploy
needs: qa
runs-on: ubuntu-latest
steps:
- name: Configure SSH
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
SSH_HOST: ${{ secrets.SSH_HOST }}
SSH_USER: ${{ secrets.SSH_USER }}
run: |
mkdir -p ~/.ssh/
echo "$SSH_PRIVATE_KEY" > ~/.ssh/github
chmod 600 ~/.ssh/github
cat >>~/.ssh/config <<END
Host target
HostName $SSH_HOST
User $SSH_USER
IdentityFile ~/.ssh/github
LogLevel ERROR
StrictHostKeyChecking no
END
- name: Run Deploy
run: |
ssh target "cd /root/drf-nuxt-library && docker compose down && docker system prune -f -a --volumes && git pull && docker compose up -d --build --force-recreate"