首页 > 解决方案 > 子模块和 ArgoCD 1.5.3 的问题

问题描述

自从我将 ArgoCD 服务器从 1.3 升级到 1.5.3 后,我遇到了子模块问题。

我想使用在一个存储库中定义的清单部署应用程序,该存储库具有第二个存储库作为子模块。

从 CLI 执行 ArgoCD 命令时,我不需要 ArgoCD 尝试克隆子模块。这是从 ArgoCD v1.4 添加的行为(现在支持子模块并将自动拾取 。1)。

我尝试设置环境变量 ARGOCD_GIT_MODULES_ENABLED=false,但是我仍然看到 argocd 尝试签出子模块并被拒绝访问的错误。

有没有人遇到过同样的问题并成功停用了这种新行为?

先感谢您,

标签: argocd

解决方案


我认为您已将应用程序添加到带有源配置的 argocd 使用 https 方法,如下所示:

source:
  repoURL: 'https://gitlab.com/my-group/test-service.git'
  path: deployment/dev
  targetRevision: develop

并且子模块被配置为使用 ssh 方法进行身份验证。

因此,argocd 将使用 https 是从 git 存储库中获取子模块的默认方法,并且您的子模块无法通过 https 方法访问,并且出现了这个问题

我有同样的问题,所以我repoURL从 https 更改为 ssh 方法,就像这样git@gitlab.com:my-group/test-service.git,并在 argocd 存储库管理器中对整个父母和子模块 git 存储库进行身份验证,我已经解决了我的问题。


推荐阅读