diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index 2f7195e..a6b4d68 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -1,17 +1,45 @@ -name: 部署 admin-ui 到 K3s - +# 工作流名称 +name: 部署到 K3s +# 触发条件:推送到 main 分支时执行 on: push: - branches: - - master + branches: [ main ] + +# 定义任务 jobs: deploy: + # 运行环境(默认 Ubuntu) runs-on: ubuntu-latest steps: + # 步骤1:拉取仓库代码(必选) - name: 拉取代码 uses: actions/checkout@v4 - - name: 部署到 K3s + # 步骤2:安装 kubectl(修复 command not found) + - name: 安装 kubectl run: | - kubectl apply -f k8s/ - kubectl rollout restart deployment admin-ui \ No newline at end of file + # 下载适配 K3s 的 kubectl 版本(v1.28.0 可根据你的 K3s 版本调整) + curl -LO "https://dl.k8s.io/release/v1.28.0/bin/linux/amd64/kubectl" + chmod +x ./kubectl + sudo mv ./kubectl /usr/local/bin/ + # 验证安装 + kubectl version --client + + # -------------------------- + # 步骤4:配置 K3s 集群访问(就在这里!) + # -------------------------- + - name: 配置 K3s 集群访问 + run: | + # 创建 kubectl 配置目录 + mkdir -p ~/.kube + # 将 Gitea 秘钥中的 kubeconfig 内容写入文件 + echo "${{ secrets.KUBECONFIG_CONTENT }}" > ~/.kube/config + # 赋予配置文件正确权限(kubectl 要求权限不能太开放) + chmod 600 ~/.kube/config + # 验证是否能连接到 K3s 集群(可选,用于调试) + kubectl get nodes + + # 步骤5:执行部署命令(你的原有步骤) + - name: 部署到 K3s 集群 + run: | + kubectl apply -f k8s/ \ No newline at end of file