如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
gitlab-kas-agent-ci-image 是专为 GitLab KAS (Kubernetes Agent Server) Agent 开发的 CI (持续集成) 专用镜像。其核心用途是在自动化流程中对 GitLab KAS Agent 的代码变更、功能更新进行验证和测试,确保 Agent 与 KAS Server 的兼容性、功能正确性及稳定性。
完整测试工具链集成
预安装 GitLab KAS Agent 测试所需的全套依赖(如 Go 编译器、测试框架、Kubernetes 客户端工具、API 模拟工具等),无需额外配置即可启动测试流程。
多维度测试支持
支持单元测试(验证 Agent 核心逻辑)、集成测试(验证 Agent 与 KAS Server 交互)、兼容性测试(验证不同 KAS 版本适配性)及 E2E 测试(模拟真实环境下的 Agent 全流程运行)。
GitLab CI/CD 原生兼容
镜像结构和环境变量设计符合 GitLab CI/CD 规范,可直接集成到 GitLab 项目的 .gitlab-ci.yml 配置中,实现提交/合并请求触发的自动化测试。
环境隔离与一致性
标准化测试环境,避免因本地环境差异导致的测试结果不一致问题,确保团队内测试流程统一。
在项目根目录的 .gitlab-ci.yml 中引用该镜像,配置测试阶段:
yamlstages: - test variables: # 基础环境变量(根据实际情况调整) GITLAB_TOKEN: "${CI_JOB_TOKEN}" # 使用 CI 内置令牌(默认具备项目访问权限) KAS_URL: "https://kas.gitlab.example.com" # 目标 KAS Server 地址 TEST_TIMEOUT: "30m" # 测试超时时间 unit-test: stage: test image: gitlab-kas-agent-ci-image:latest # 引用 CI 镜像 script: - echo "Running unit tests..." - go test ./internal/... -v -timeout ${TEST_TIMEOUT} # 运行单元测试 integration-test: stage: test image: gitlab-kas-agent-ci-image:latest variables: TEST_MODE: "integration" # 指定测试模式为集成测试 script: - echo "Running integration tests with KAS Server: ${KAS_URL}" - go test ./integration/... -v -kas-url ${KAS_URL} -timeout ${TEST_TIMEOUT} e2e-test: stage: test image: gitlab-kas-agent-ci-image:latest variables: TEST_MODE: "e2e" # 指定测试模式为 E2E 测试 K8S_CLUSTER_CONFIG: "${KUBE_CONFIG}" # (可选)E2E 测试需提供 K8s 集群配置 script: - echo "Running E2E tests..." - go test ./e2e/... -v -kas-url ${KAS_URL} -kubeconfig <(echo ${K8S_CLUSTER_CONFIG}) -timeout ${TEST_TIMEOUT}
若需在本地手动触发测试,通过 docker run 命令启动容器:
bashdocker run -it --rm \ -e GITLAB_TOKEN="your_personal_access_token" \ -e KAS_URL="https://kas.gitlab.example.com" \ -e TEST_MODE="unit" \ -e TEST_TIMEOUT="10m" \ -v $(pwd):/app \ # 挂载本地代码目录到容器内 gitlab-kas-agent-ci-image:latest \ /bin/bash -c "cd /app && go test ./internal/... -v -timeout \${TEST_TIMEOUT}"
以下环境变量用于控制测试流程,可在 CI/CD 配置或手动运行时指定:
| 变量名 | 描述 | 类型 | 默认值 | 是否必填 |
|---|---|---|---|---|
GITLAB_TOKEN | GitLab API 访问令牌,用于拉取项目代码、调用 KAS 服务(需 api 权限) | string | ${CI_JOB_TOKEN} | 否 |
KAS_URL | 目标 KAS Server 的访问地址(如 https://kas.gitlab.com) | string | https://kas.gitlab.com | 是 |
TEST_MODE | 测试类型:unit(单元)、integration(集成)、e2e(E2E)、all(全量) | string | unit | 否 |
TEST_TIMEOUT | 测试总超时时间(格式:30s/5m/1h) | duration | 15m | 否 |
KAS_VERSION | 目标 KAS Server 版本(用于兼容性测试,如 v16.0.0) | string | (自动检测) | 否 |
DEBUG | 是否启用调试模式(输出详细测试日志) | boolean | false | 否 |
K8S_CLUSTER_CONFIG | E2E 测试所需的 Kubernetes 集群配置(Base64 编码或原始 kubeconfig 内容) | string | (可选) | 仅 E2E 测试 |
GITLAB_TOKEN)。GITLAB_TOKEN 建议通过 GitLab CI/CD 「变量」功能加密存储(勾选「保护变量」和「掩码变量」)。gitlab-kas-agent-ci-image:v16.0.0),避免兼容性问题。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

来自真实用户的反馈,见证轩辕镜像的优质服务