Skip to content

Commit

Permalink
deploy: setup auto deploy to staging and production servers
Browse files Browse the repository at this point in the history
  • Loading branch information
ArtemSBulgakov committed Jan 24, 2024
1 parent b0df811 commit 45b7ebe
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 0 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/deploy-production.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Deploy to production server

concurrency:
group: production
cancel-in-progress: false

on:
workflow_dispatch:

jobs:
deploy:
name: Deploy to production server
runs-on: self-hosted
environment:
name: production
steps:
- name: Deploy via SSH
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_KEY }}
fingerprint: ${{ secrets.SSH_FINGERPRINT }}
script_stop: true # Stop script on error
script: |
cd ${{ secrets.REPOSITORY_ROOT }}
git reset --hard
git checkout ${{ github.ref_name }}
git pull
docker compose build
docker compose pull
docker compose up -d
35 changes: 35 additions & 0 deletions .github/workflows/deploy-staging.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Deploy to staging server

concurrency:
group: staging
cancel-in-progress: false

on:
push:
branches:
- main
workflow_dispatch:

jobs:
deploy:
name: Deploy to staging server
runs-on: self-hosted
environment:
name: staging
steps:
- name: Deploy via SSH
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_KEY }}
fingerprint: ${{ secrets.SSH_FINGERPRINT }}
script_stop: true # Stop script on error
script: |
cd ${{ secrets.REPOSITORY_ROOT }}
git reset --hard
git checkout ${{ github.ref_name }}
git pull
docker compose build
docker compose pull
docker compose up -d

0 comments on commit 45b7ebe

Please sign in to comment.