Files
xgj/config-env

Configure Build Environment Action

该 GitHub Action 用于在已有环境中执行验证与配置操作,确保必要工具可用并完成 Git 与 kubectl 配置,适用于已预装所有依赖的构建机场景。

🚦 能力概览

  • 配置 Git 用户信息
  • 🔍 校验 dockerkubectl 可用性及版本
  • ☸️ 可选写入 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

🚀 基本用法

- 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 写入:

- name: 跳过环境校验
  uses: actions/xgj/config-env@v1
  with:
    enable-validation: "false"

🚀 Docker 登录配置

- 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 }}

🔒 注意事项

  • 请确保运行环境已安装 dockerkubectl(若开启对应校验)。
  • kubeconfig 建议通过 GitHub Secrets 以 Base64 编码方式提供。
  • Action 执行失败会立即终止后续步骤,便于快速发现环境问题。

🧪 示例工作流

详见 examples/basic-usage.yml,展示了与 CI 构建流程结合的典型用法。

🤝 贡献

欢迎提 Issue 或提交 PR