diff --git a/.gitea/workflows/build-ubuntu.yaml b/.gitea/workflows/build-ubuntu.yaml index 15fbba3..295ebf0 100644 --- a/.gitea/workflows/build-ubuntu.yaml +++ b/.gitea/workflows/build-ubuntu.yaml @@ -184,9 +184,33 @@ jobs: uses: actions/checkout@v4 - name: 安装 kubectl - uses: azure/setup-kubectl@v3 - with: - version: 'latest' + run: | + echo "检查并安装 kubectl..." + # 先检查本地是否已有 kubectl + if command -v kubectl &> /dev/null; then + echo "kubectl 已存在,当前版本: $(kubectl version --client --short 2>/dev/null || kubectl version --client)" + else + # 检查仓库中是否有 kubectl + if [ -f "k8s/kubectl" ] && [ -x "k8s/kubectl" ]; then + echo "使用仓库中的 kubectl..." + sudo mv k8s/kubectl /usr/local/bin/ + sudo chmod +x /usr/local/bin/kubectl + else + # 从网络下载 kubectl + echo "从网络下载 kubectl..." + KUBECTL_VERSION=$(curl -L -s https://dl.k8s.io/release/stable.txt) + echo "下载 kubectl 版本: $KUBECTL_VERSION" + + curl -LO "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" + curl -LO "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256" + echo "验证下载..." + echo "$(cat kubectl.sha256) kubectl" | sha256sum --check + + sudo mv kubectl /usr/local/bin/ + sudo chmod +x /usr/local/bin/kubectl + fi + echo "kubectl 安装完成,版本: $(kubectl version --client --short 2>/dev/null || kubectl version --client)" + fi - name: 创建 kubeconfig run: | diff --git a/k8s/kubectl b/k8s/kubectl new file mode 100644 index 0000000..1480578 Binary files /dev/null and b/k8s/kubectl differ