Argo CD и настройка

#kustomize #argocd

#настройка #argocd

Вопрос:

ВСЕ. Я использую Argo CD версии v1.6.1 и пытаюсь развернуть приложение с помощью Kustomize. Argo CD, похоже, не распознает мои файлы манифеста Kustomize. Просматривая документацию по настройке на странице Argo CD, похоже, что она поддерживает только следующие параметры настройки:

  • namePrefix — это префикс, добавляемый к ресурсам для пользовательских приложений
  • nameSuffix — это суффикс, добавляемый к ресурсам для пользовательских приложений
  • изображения — это список переопределений пользовательских изображений
  • commonLabels — это строковое отображение дополнительных меток

Это единственные вещи, которыми я смогу манипулировать в своих базовых файлах манифеста, используя Kustomize? Я надеялся, что смогу использовать опцию patchesStrategicMerge с моими файлами наложения, которые у меня есть, которые позволяют мне манипулировать чем угодно в файлах base.yaml. Похоже, он не распознает kind: Kustomization и apiVersion: kustomize.config.k8s.io/v1beta1

Спасибо.

Ответ №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
  

Это будет означать, что он использует ваш файл настройки оверлеев, который должен содержать ваш базовый файл настройки и исправления.

Дополнительные поля, о которых вы упомянули, похожи на дополнительное наложение и не рекомендуются для выполнения более сложных действий, таких как стратегическое слияние.