SuperAPI AI 工具集

jfrog-reconcile-manifest

部署与运维

查看项目

更新于 10-16 06:20

技能介绍

用途:根据用户显式提供的期望状态 manifest YAML,对比 JFrog Platform 当前配置,计算差异,向用户展示变更计划,仅在用户批准后应用差异。凭证 JFROG_URL、JFROG_ACCESS_TOKEN 需在调用前加载并校验。

主要能力:支持三方对比(基线 manifest、期望状态、实时状态)与两方对比(期望状态与实时状态)。当存在基线时,差异摘要包含清单变更、平台漂移和净操作;无基线时仅做期望与实时的两方对比。覆盖项目、仓库、成员、OIDC、Xray 索引与 Curation 状态。对已存在但不在 manifest 中的项目/仓库/映射仅标记警告,不自动删除;成员移除、漂移恢复等需显式确认。

使用方式:输入 manifest 为用户直接给出的路径或解析结构,按 templates/manifest-template.yaml 模式;可选 baseline 由调用方提供,否则从配置的状态后端(Artifactory 或 git)获取,禁止使用本地发现的文件作为基线。通过 yq 读取 state.destination 等字段;优先使用 jf api,curl 作为回退。API 调用需分别捕获状态码与响应体,循环中加 sleep 1,避免限流。先经 AskQuestion 询问是否检索基线,调用 jfrog-system-config-repo 技能从 Artifactory 或 git 拉取最新快照,保存到 /tmp/baseline-manifest.yaml。随后按项目读取实时状态,计算差异,分组展示计划,等待用户 Yes/No 批准后执行。

适用场景:需要将 JFrog Platform 配置以声明式清单方式对齐、审计漂移并受控应用变更的运维流程。

限制:清单必须由用户显式提供,不得自动发现本地文件;基线只能来自配置的状态后端;不自动删除额外资源,仅告警;应用前必须获得用户批准;涉及权限 full_network 或 all;具体收费、价格与支持平台资料中暂未提供。