itfx/.github/workflows/master.yml
2026-02-04 14:39:36 +08:00

43 lines
1.4 KiB
YAML

name: CI/CD Pipeline
on:
push:
branches:
- master # 监视的分支
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Build to Server
uses: appleboy/ssh-action@v0.1.5
with:
host: ${{ secrets.SSH_BUILD_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
script: |
mkdir -p /data/projects
cd /data/projects
git clone git@github.com:xiaoliutral/itfx.git
cd itfx
git pull origin master
docker build -t interfaceforward_api:latest -f src/InterfaceForward.Api/Dockerfile .
# 标记镜像
docker tag interfaceforward_api:latest registry.nanafa.com/interfaceforward_api:latest
# 推送镜像
docker push registry.nanafa.com/interfaceforward_api:latest
- name: Deploy to Server
uses: appleboy/ssh-action@v0.1.5
with:
host: ${{ secrets.SSH_MANAGER_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
script: |
cd /data
docker stack deploy -c api.yml api # yml没变化不会更新
docker service update --force --image registry.idwms.com/interfaceforward_api:latest itfx_interfaceforward_api # 一定要和service name一致