From 86831c2fd0691d32a845c3befb953cb701ca5390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=96=8C?= <259278618@qq.com> Date: Mon, 3 Aug 2026 13:50:31 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20dev=20=E5=88=86=E6=94=AF=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=8F=91=E5=B8=83=E5=88=B0=20dev=20k3s=20(=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=E4=BB=93=E5=BA=93+=E6=9C=AC=E5=9C=B0=E9=9B=86?= =?UTF-8?q?=E7=BE=A4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/dev-deploy.yaml | 33 +++++++++++++++++++++++ deploy/k8s/ai-agent.yaml | 46 ++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 .gitea/workflows/dev-deploy.yaml create mode 100644 deploy/k8s/ai-agent.yaml diff --git a/.gitea/workflows/dev-deploy.yaml b/.gitea/workflows/dev-deploy.yaml new file mode 100644 index 0000000..2ae878d --- /dev/null +++ b/.gitea/workflows/dev-deploy.yaml @@ -0,0 +1,33 @@ +# ============================================================ +# ai-agent dev 分支自动发布 +# 触发:push dev 分支 +# 流程:构建镜像 -> push 本地仓库(127.0.0.1:5000) -> 部署到 dev 宿主机本地 k3s +# 前置:runner 挂载 dev k3s kubeconfig 到 /root/.kube/k3s-dev.yaml +# ============================================================ +name: Deploy ai-agent to dev k3s + +on: + push: + branches: [ dev ] + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + steps: + - name: 拉取代码 + uses: actions/checkout@v4 + + - name: 构建并推送镜像 + run: | + TAG=dev-${GITHUB_SHA::8} + docker build -t 127.0.0.1:5000/ai-agent:${TAG} . + docker push 127.0.0.1:5000/ai-agent:${TAG} + + - name: 部署到 dev k3s + env: + KUBECONFIG: /root/.kube/k3s-dev.yaml + run: | + kubectl create namespace dev --dry-run=client -o yaml | kubectl apply -f - + kubectl apply -f deploy/k8s/ai-agent.yaml + kubectl set image deployment/ai-agent ai-agent=127.0.0.1:5000/ai-agent:dev-${GITHUB_SHA::8} -n dev + kubectl rollout status deployment/ai-agent -n dev --timeout=5m diff --git a/deploy/k8s/ai-agent.yaml b/deploy/k8s/ai-agent.yaml new file mode 100644 index 0000000..031542d --- /dev/null +++ b/deploy/k8s/ai-agent.yaml @@ -0,0 +1,46 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ai-agent + namespace: dev +spec: + replicas: 1 + selector: + matchLabels: + app: ai-agent + template: + metadata: + labels: + app: ai-agent + spec: + containers: + - name: ai-agent + image: 127.0.0.1:5000/ai-agent:dev-latest + imagePullPolicy: IfNotPresent + ports: + - containerPort: 3005 + env: + - name: TZ + value: Asia/Shanghai + readinessProbe: + tcpSocket: + port: 3005 + initialDelaySeconds: 10 + periodSeconds: 10 + livenessProbe: + tcpSocket: + port: 3005 + initialDelaySeconds: 30 + periodSeconds: 15 +--- +apiVersion: v1 +kind: Service +metadata: + name: ai-agent + namespace: dev +spec: + selector: + app: ai-agent + ports: + - port: 3005 + targetPort: 3005