0

全部。我正在使用 Argo CD v1.6.1 并尝试使用 Kustomize 部署应用程序。Argo CD 似乎无法识别我的 Kustomize 清单文件。查看 Argo CD 页面上的 Kustomize 文档,看起来它只支持以下 Kustomize 选项:

  • namePrefix 是附加到 Kustomize 应用程序资源的前缀
  • nameSuffix 是附加到 Kustomize 应用程序资源的后缀
  • images 是 Kustomize 图像覆盖的列表
  • commonLabels 是附加标签的字符串映射

这些是我能够使用 Kustomize 在基本清单文件中操作的唯​​一内容吗?我希望能够将 patchStrategicMerge 选项与我拥有的覆盖文件一起使用,这允许我操作 base.yaml 文件中的任何内容。它似乎无法识别种类:Kustomization 和 apiVersion:kustomize.config.k8s.io/v1beta1

谢谢你。

4

1 回答 1

1

ArgoCD 的主要任务是部署清单。Kustomize 是进行任何更复杂编辑的正确位置。听起来您的 kustomize 应用程序中已经有一个覆盖结构,因此缺少的部分可能是将您的 Argo 应用程序指向正确的覆盖。

假设您有一个具有以下结构的仓库:

repo
 |_ app
 |_ kustomize
   |_ base
   |  |_ resource.yml
   |  |_ kustomization.yml
   |_ overlays
      |_ prod
         |_ patch.yml
         |_ kustomization.yml

然后你会希望你的 Argo 应用程序有:

source:
    repoURL: <REPO_URL>
    targetRevision: <REVISION>
    path: kustomize/overlays/prod

这意味着它正在使用您的覆盖 kustomization 文件,该文件应该拉入您的基本 kustomzition 文件和补丁。

您提到的附加字段就像一个额外的覆盖,不建议执行更复杂的操作,例如战略合并。

于 2020-10-01T19:47:41.307 回答