From e85767fd79997ed6f4f320c86bdefa54e353b517 Mon Sep 17 00:00:00 2001 From: xiaolipro <2357729423@qq.com> Date: Thu, 3 Sep 2026 17:13:09 +0800 Subject: [PATCH] deploy --- .gitea/workflows/deploy.yml | 44 +++++++++++++++++++++++++++++++++++++ InterfaceForward.sln | 3 ++- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 .gitea/workflows/deploy.yml diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..228faa1 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,44 @@ +# 复制到仓库: .gitea/workflows/deploy.yml +# 前置: 42 上已 ./scripts/19-setup-act-runner.sh(runs-on: k3s-host) +name: Build and Deploy + +on: + push: + branches: [master, main] + workflow_dispatch: + +env: + GITEA_REPO: gitea/itfx + DOCKERFILE: src/InterfaceForward.Api/Dockerfile + IMAGE_NAME: interfaceforward_api + DEPLOY_NAME: interfaceforward-api + CONTAINER_NAME: interfaceforward-api + TCR_REGISTRY: ccr.ccs.tencentyun.com + TCR_NAMESPACE: ideship + K3S_DIR: /data/k3s + KUBECONFIG: /etc/rancher/k3s/k3s.yaml + NAMESPACE: prod + +jobs: + deploy: + runs-on: k3s-host + steps: + - name: Build and deploy + run: | + set -euxo pipefail + export KUBECONFIG="${{ env.KUBECONFIG }}" + TAG="${{ gitea.sha }}" + IMG="${{ env.TCR_REGISTRY }}/${{ env.TCR_NAMESPACE }}/${{ env.IMAGE_NAME }}:${TAG}" + echo "image=${IMG}" + cd "${{ env.K3S_DIR }}" + chmod +x scripts/ci-kaniko-build.sh + ./scripts/ci-kaniko-build.sh \ + "${{ env.GITEA_REPO }}" \ + "${{ env.DOCKERFILE }}" \ + "${{ env.IMAGE_NAME }}" \ + "${TAG}" \ + "${TAG}" + kubectl -n "${{ env.NAMESPACE }}" set image "deploy/${{ env.DEPLOY_NAME }}" \ + "${{ env.CONTAINER_NAME }}=${IMG}" + kubectl -n "${{ env.NAMESPACE }}" rollout status "deploy/${{ env.DEPLOY_NAME }}" --timeout=180s + kubectl -n "${{ env.NAMESPACE }}" get pods -l "app=${{ env.DEPLOY_NAME }}" -o wide diff --git a/InterfaceForward.sln b/InterfaceForward.sln index 474fe2c..a391a2f 100644 --- a/InterfaceForward.sln +++ b/InterfaceForward.sln @@ -1,6 +1,6 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# +# Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{EA8DF4A8-7618-4C28-BEDC-21629B8B219B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InterfaceForward.Api", "src\InterfaceForward.Api\InterfaceForward.Api.csproj", "{0E2F3A09-4EC4-4A61-85DC-9F9F770C3B65}" @@ -13,6 +13,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "solution items", "solution global.json = global.json docker-compose.yml = docker-compose.yml Directory.Build.props = Directory.Build.props + .gitea\workflows\deploy.yml = .gitea\workflows\deploy.yml EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InterfaceForward.Repositories", "src\InterfaceForward.Repositories\InterfaceForward.Repositories.csproj", "{AB53F0CC-DE7A-4AE9-B6AA-2A8283B4EB23}"