SuperAPI AI 工具集

harness-automation

部署与运维

查看项目

更新于 10-16 05:30

技能介绍

Harness Automation 是一套面向 Harness 平台的通用操作模式集合,强调与具体项目解耦:所有 account、org、project 等标识都来自环境变量或显式参数,不在脚本中硬编码。

用途 该技能用于 Harness 平台上的流水线操作、CI/CD 编排以及 PR 工作流自动化,覆盖触发流水线、查询执行状态、创建拉取请求、诊断失败等常见任务。

工具调用优先级

  1. mcp__harness__* 工具(若已安装 MCP harness,为首选)。
  2. hc CLI(本地开发时的回退方案)。
  3. 通过 curl 调用 REST API(最后手段)。

MCP 工具集 提供以下工具:harness_list(列举资源,如流水线、PR、部署、仓库)、harness_get(获取特定资源)、harness_describe(详细描述)、harness_execute(触发流水线)、harness_status(执行状态)、harness_search(跨资源搜索)、harness_create(创建资源)、harness_update(修改)、harness_delete(删除)、harness_diagnose(故障排查)、harness_schema(拉取 YAML 编写所需的 schema)。

流水线标识 Harness 资源标识包括:account(租户级,环境变量 HARNESS_ACCOUNT)、org(组织,环境变量 HARNESS_ORG,默认 default)、project(逻辑分组,按调用传入)、identifier(项目内资源 ID)。这些标识不应硬编码在脚本中,应从环境或参数读取。

ECR 标签约定(适用时) 对于产出容器镜像的服务,标签格式为 {service}-{version}-{sanitized-branch}-{short-sha}-{YYYYMMDDHHMMSS},不可变,绝不使用 :latest。标签由 CI 模板计算,而非调用方。

流水线编写——优先复用 先检查 repos/*/harness/templates/(或等价的共享模板仓库)中是否已有模板;若存在,通过 template: include 引用,不要内联;若不存在且该模式已在 3 个以上流水线中使用,则将其提升到模板仓库。

常见流程 触发流水线并等待:调用 harness_execute,传入 project、pipeline、inputs(如 branch),随后轮询 harness_status 获取执行状态。 列出最近执行记录:调用 harness_list,resource 为 executions,传入 project、pipeline、limit。 创建 PR:调用 harness_create,resource 为 pull-request,传入 repo、source、target、title、body(body 中引用 JIRA-KEY)。

PR 工作流模式 分支:git checkout -b <type>/<jira-key>-<slug>。 提交:遵循 Conventional Commits,正文包含 Refs <JIRA-KEY>。 推送:git push -u origin <branch>。 开 PR:通过 harness_create 或 hc pr create。 CI:自动触发,通过 harness_status 监控。 评审:由 council agents(code-reviewer、security-auditor、infra-reviewer)对 diff 并行评审。 合并:在 CI 通过且获得批准后进行。

CI 步骤模式 以 PowerShell 项目为例,步骤使用 type: Run,命令如 pwsh -File tools/run-all-tests.ps1 和 pwsh -File tools/validate-all-policies.ps1。

安全规则 禁止使用 --no-verify;禁止强推到 main/master;禁止禁用签名;禁止绕过 hook 拦截,应修复根本问题;破坏性操作(删除流水线、删除仓库、清除执行记录)需用户明确确认。

故障排查 调用 harness_diagnose 并传入失败的 execution-id,可返回结构化失败分析。对于连接器故障,检查 harness_get resource: connectors,凭据可能静默过期。

相关技能 skills/claude-code-automation(用于 CI 守门人的无头模式)、skills/work-unit-protocol(第 20 节验证包含流水线通过)、plugin: harness-platform(需单独安装,提供更丰富的操作)。

适用场景与限制 适用于在 Harness 平台上进行流水线运维、CI/CD 编排和代码评审自动化的团队。该技能为项目无关的通用模式,具体 account/org/project 需由环境或参数提供;部分功能依赖 MCP harness 或 hc CLI 的可用性。