Picture.Cut.Service/.gitea/workflows/push-dev.yaml

89 lines
2.9 KiB
YAML

name: 部署到开发环境
on:
push:
branches:
- dev
env:
IMAGE_NAME: ${{ gitea.repository_owner }}/cut.service
PROJECT_NAME: Dolphin.ExamPictureCut.HttpApi.Host
PUBLISH_PATH: marking.cut.service
PUBLISH_HOST: 10.255.255.44
PUBLISH_PORT: 22
ASPNETCORE_ENVIRONMENT: Development
jobs:
job1:
runs-on: linux-amd
container:
image: node:16-bullseye
volumes:
- /opt/.runner/nuget_packages:/root/.nuget/packages
steps:
- name: 下载源码
uses: actions/checkout@v3
- name: 编译后端
uses: actions/aspnet@master
with:
project_name: ${{ env.PROJECT_NAME }}
- name: 打包上传镜像
uses: actions/docker@8.0
with:
registry: ${{ secrets.DOCKER_REGISTRY }}
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
image: ${{ env.IMAGE_NAME }}
context: publish
tags: latest,${{ gitea.ref_name }}
- name: 复制发布脚本
uses: docker://appleboy/drone-scp
with:
host: ${{ env.PUBLISH_HOST }}
port: ${{ env.PUBLISH_PORT }}
username: ${{ secrets.PUBLISH_USER_NAME }}
password: ${{ secrets.PUBLISH_PASSWORD }}
source: docker-compose.yaml
target: ${{ env.PUBLISH_PATH }}
- name: 部署到服务器
uses: docker://appleboy/drone-ssh
with:
host: ${{ env.PUBLISH_HOST }}
port: ${{ env.PUBLISH_PORT }}
username: ${{ secrets.PUBLISH_USER_NAME }}
password: ${{ secrets.PUBLISH_PASSWORD }}
script: |
#拉取更新
cd ${{ env.PUBLISH_PATH }}
echo 'REGISTRY=${{ secrets.DOCKER_REGISTRY }}'>.env
echo 'OWNER=${{ gitea.repository_owner }}'>>.env
echo 'TAG=${{ gitea.ref_name }}'>>.env
echo 'ASPNETCORE_ENVIRONMENT=${{ env.ASPNETCORE_ENVIRONMENT }}'>>.env
docker stack deploy -c docker-compose.yaml --with-registry-auth mk
- name: 发送构建通知
if: ${{ always() }}
uses: actions/webhook@master
with:
urls: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=fd8e4bfb-a906-4601-9894-e166b3ecedda
content_type: application/json
template: |
{
"msgtype": "markdown",
"markdown": {
"content": "${{ job.status == 'success' && '✅' || '❌' }}**${{ gitea.repository }}**
>**构建结果**: ${{ job.status }}
>**构建详情**: [点击查看](${{ gitea.server_url }}/${{ gitea.repository }}/actions/runs/${{ gitea.run_number }})
>**代码分支**: ${{ gitea.ref_name }}
>**提交标识**: ${{ gitea.sha }}
>**提交发起**: ${{ gitea.actor}}
"
}
}