Directory

简介

Directory 类型原生应用直接从 .yml.yaml.json 文件中加载 manifests。Directory 原生应用可以通过平台 UI、Argo CD 监控面板、CLI,或以声明式方式创建。声明式语法示例如下:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: guestbook
spec:
  destination:
    namespace: default
    server: https://kubernetes.default.svc
  project: default
  source:
    path: guestbook
    repoURL: https://github.com/argoproj/argocd-example-apps.git
    targetRevision: HEAD

除非需要其他配置选项,否则无需指定 spec.source.directory 字段。Argo CD 会自动检测源仓库/路径中是否包含纯 manifest 文件。

优势

  • 简单:直接从 manifest 文件加载资源,无需额外抽象。

  • 低维护成本:无需进行配置管理。

使用场景

  • 管理多个 Kubernetes 资源(例如 Deployments、Services、ConfigMaps)。

  • 小型项目、资源较少,或希望快速采用 GitOps。

  • 在没有动态模板或复杂配置管理的情况下部署原始 YAML 文件。

WARNING

Directory 类型原生应用仅支持纯 manifest 文件。如果 Argo CD 在 Directory 路径中检测到 KustomizeHelmJsonnet 文件,则无法渲染 manifests。

参考资料

有关更详细的说明,请参阅:Directory