用途
该技能用于通过 Argo CD 的 REST API 管理 Argo CD 应用、同步操作以及集群,属于命令行与接口层面的运维操作能力。
主要能力
根据资料,可通过 curl 调用 Argo CD REST API 完成以下操作:
- 列出应用:请求
/api/v1/applications,输出应用名称、同步状态、健康状态和仓库地址。 - 获取应用详情:请求
/api/v1/applications/my-app,输出名称、sync、health 和 source 信息。 - 同步应用:POST 到
/api/v1/applications/my-app/sync,可携带空对象或指定参数。 - 按指定版本同步:在请求体中设置
{"revision": "HEAD", "prune": true}。 - 获取应用资源树:请求
/api/v1/applications/my-app/resource-tree,输出各节点的 kind、name 和健康状态。 - 列出集群:请求
/api/v1/clusters,输出名称、server 和连接状态。 - 列出仓库:请求
/api/v1/repositories,输出仓库地址和连接状态。 - 查看受管资源:请求
/api/v1/applications/my-app/managed-resources,输出 kind、name 和 status。
使用方式
使用前需配置环境变量:
- ARGOCD_SERVER:Argo CD 服务器 URL,例如 https://argocd.example.com
- ARGOCD_TOKEN:Bearer 令牌,可通过
argocd account generate-token或 API 生成
所有请求通过 curl 发起,并在请求头中携带 Authorization: Bearer $ARGOCD_TOKEN。示例命令中使用 jq 对返回的 JSON 结果进行字段筛选。
适用场景
适用于需要以脚本或命令行方式查看 Argo CD 应用状态、同步应用、查看资源树、查看集群与仓库连接情况以及受管资源状态的场景,便于集成到自动化或运维流程中。
限制与注意事项
- 若 Argo CD 使用自签名证书,需在 curl 中使用
-k参数。 - 同步操作是异步的,需要轮询应用状态来跟踪进度。
- 执行同步前应始终确认,尤其是在使用
prune: true时。
关于收费、价格、平台支持范围等信息暂未提供。