Skip to content

Commit 57a5d9c

Browse files
authored
Create deploy-production.yml
1 parent 49df58e commit 57a5d9c

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Deploy to Production
2+
run-name: Deploy
3+
4+
on:
5+
push:
6+
branches:
7+
- production
8+
9+
jobs:
10+
deploy:
11+
runs-on: ubuntu-latest
12+
env:
13+
NAME: saba-bot
14+
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v3
18+
19+
- name: Build Docker image
20+
run: docker build -t ${{ env.NAME }}:latest .
21+
22+
- name: Save Docker image
23+
run: docker save ${{ env.NAME }}:latest -o ${{ env.NAME }}.tar
24+
25+
- name: Copy to VPS
26+
uses: appleboy/scp-action@master
27+
with:
28+
host: ${{ secrets.VPS_HOST }}
29+
username: ${{ secrets.VPS_USER }}
30+
key: ${{ secrets.VPS_SSH_KEY }}
31+
source: "${{ env.NAME }}.tar"
32+
target: "/home/${{ secrets.VPS_USER }}/"
33+
34+
- name: Deploy on VPS
35+
uses: appleboy/[email protected]
36+
with:
37+
host: ${{ secrets.VPS_HOST }}
38+
username: ${{ secrets.VPS_USER }}
39+
key: ${{ secrets.VPS_SSH_KEY }}
40+
script: |
41+
docker load -i /home/${{ secrets.VPS_USER }}/${{ env.NAME }}.tar
42+
docker stop ${{ env.NAME }} || true
43+
docker rm ${{ env.NAME }} || true
44+
docker run -d -p 80:80
45+
-v /home/${{ secrets.VPS_USER }}/data:/data \
46+
--name ${{ env.NAME }} \
47+
${{ env.NAME }}:latest \
48+
/data/saba-bot/config.json
49+
rm /home/${{ secrets.VPS_USER }}/${{ env.NAME }}.tar

0 commit comments

Comments
 (0)