# Configure Build Environment Action 该 GitHub Action 用于在已有环境中执行验证与配置操作,确保必要工具可用并完成 Git 与 kubectl 配置,适用于已预装所有依赖的构建机场景。 ## 🚦 能力概览 - ✅ 配置 Git 用户信息 - 🔍 校验 `docker` 与 `kubectl` 可用性及版本 - ☸️ 可选写入 Base64 编码的 kubeconfig,并验证集群连通性 - 🐳 可选登录私有 Docker 仓库 - ⚠️ **不进行任何软件安装**,适用于受控环境 ## 📥 输入参数 | 参数名 | 描述 | 必填 | 默认值 | | --- | --- | --- | --- | | `git-user-name` | Git 用户名 | ❌ | `GiteaActions` | | `git-user-email` | Git 用户邮箱 | ❌ | `actions@gitea.com` | | `kube-config` | Base64 编码的 kubeconfig | ❌ | `''` | | `enable-validation` | 是否执行环境校验 (`true`/`false`) | ❌ | `true` | | `docker-registry` | Docker 私有仓库地址 | ❌ | `docker-registry.bjxgj.com` | | `docker-username` | Docker 仓库用户名 | ❌ | `ci-action` | | `docker-password` | Docker 仓库密码(当未跳过登录时必填) | ❌ | `''` | | `skip-docker-login` | 是否跳过 Docker 登录 (`true`/`false`) | ❌ | `false` | ## 📤 输出参数 | 参数名 | 描述 | | --- | --- | | `docker-version` | 检测到的 Docker 版本或状态 | | `kubectl-version` | 检测到的 kubectl 版本或状态 | | `kubectl-context` | 集群验证成功时的当前 context | ## 🚀 基本用法 ```yaml - name: 校验并配置环境 uses: actions/xgj/config-env@v1 with: git-user-name: "CI Bot" git-user-email: "ci@example.com" kube-config: ${{ secrets.KUBE_CONFIG }} docker-password: ${{ secrets.DOCKER_PASSWORD }} ``` ## 🎯 自定义校验 禁用所有校验,仅进行 Git 配置(若提供)及 kubeconfig 写入: ```yaml - name: 跳过环境校验 uses: actions/xgj/config-env@v1 with: enable-validation: "false" ``` ## 🚀 Docker 登录配置 ```yaml - name: 验证 kubectl 集群 uses: actions/xgj/config-env@v1 with: enable-validation: "true" kube-config: ${{ secrets.KUBE_CONFIG }} docker-registry: "registry.example.com" docker-username: "ci-bot" docker-password: ${{ secrets.DOCKER_PASSWORD }} ``` ## 🔒 注意事项 - 请确保运行环境已安装 `docker` 与 `kubectl`(若开启对应校验)。 - kubeconfig 建议通过 GitHub Secrets 以 Base64 编码方式提供。 - Action 执行失败会立即终止后续步骤,便于快速发现环境问题。 ## 🧪 示例工作流 详见 `examples/basic-usage.yml`,展示了与 CI 构建流程结合的典型用法。 ## 🤝 贡献 欢迎提 Issue 或提交 PR!