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