目前用 helm upgrade 手工或 CI 直接发布,希望改为 GitOps 持续对账、可视化差异和一键回滚。迁移重点是 values 管理、发布顺序和 Hook 处理。
helm list -A
helm get values demo -n demo > demo-values.yaml
helm get manifest demo -n demo > demo-manifest.yaml
gitops/
apps/demo/
Chart.yaml
values.yaml
values-prod.yaml
argocd app create demo \
--repo https://github.com/example/gitops.git \
--path apps/demo \
--dest-server https://kubernetes.default.svc \
--dest-namespace demo \
--helm-set-file values=values-prod.yaml \
--sync-policy none
argocd app diff demo
argocd app sync demo --dry-run
pre-install/post-install 对应 Argo CD 的 PreSync/PostSync。hook-delete-policy,避免重复执行。argocd app set demo --sync-policy automated --self-heal
argocd app get demo 为 Synced/Healthy。argocd app set demo --sync-policy none。helm rollback,但下一次 Argo CD 同步会覆盖。--helm-set-file 参数错误,渲染结果不同。auto-prune 删除 Helm 创建但 Git 中没有的资源。ServerSideApply,大 CRD 应用失败。argocd — 创建应用、diff、sync 和回滚helm — 查看旧 release 和 valueskubectl — 查看资源git — 管理 GitOps 仓库