如何让 ArgoCD 为任何 git 提供商的每个功能分支部署应用程序?

问题描述 投票:0回答:0

我已经使用 Helm chart here 安装了 ArgoCD v2.6.5,版本

5.27.0
.

我们的团队使用

feature/
分支进行独立开发工作,然后合并到
develop
,然后合并到
main
。这大致遵循 git-flow。

在开发 Helm 图表时,如果我们可以使用 ArgoCD 持续监控我们的 git 存储库的所有功能分支,并将它们部署到单独的命名空间,那将非常有用。

理想情况下,我希望这一切以自动方式发生,仅由 ArgoCD 触发。

开发人员工作流程看起来像这样:

  • 当一个新的
    feature/*
    分支被推送到
    origin
    时,一个新的
    Application
    被创建,它跟踪特性分支,并根据特性分支名称被部署到一个新的命名空间。
  • 当一个
    feature/*
    分支关闭时,
    Application
    应该被删除。

我研究了

ApplicationSets
,更具体地说是Git生成器SCM Provider生成器

据我所知,两者都不符合要求:

  • Git 生成器只提到
    revision
    ,但没有基于修订版的分支过滤或模板化能力
  • SCM Provider生成器
    automatically discover[s] repositories within an organization
    ,太高级了。它确实有
    allBranches
    branchMatch
    但它们在 SCM 提供商的组织的 all 存储库上运行,并且也仅限于那些特定的 SCM 提供商。

是否可以扫描单个 git 存储库,仅获取

feature/*
分支,并为每个分支创建
Applications
(分支关闭后删除)?最好使用自动 ArgoCD 同步,例如
ApplicationSet
生成器。

git git-flow argocd
© www.soinside.com 2019 - 2024. All rights reserved.