首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ArgoCD GitOps,其中每个荚的图像标记总是git提交散列。

ArgoCD GitOps,其中每个荚的图像标记总是git提交散列。
EN

Stack Overflow用户
提问于 2021-09-11 00:42:09
回答 1查看 3K关注 0票数 5

我们正试图在我的公司使用GitOps,使用ArgoCD,我们有一个主要问题:

Jenkins,我们的CI工具,目前推到我们的码头回购的任何公关合并与当前使用的git提交哈希标签。

编辑:在选择一个targetRevision时,我们希望将它的git哈希作为一个字符串来使用,用于重写掌舵图中的imageTag。

现在,选项1是,我们只是让它也更改任何相关的kubernetes文件中的imageTag。

但是,我想知道是否有一种方法可以使用PreSync钩子使ArgoCD自动完成这一任务。它已经知道git哈希了,因为它已经拉了git。让詹金斯做出承诺从来都不是理想的。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2021-09-11 06:07:25

您可以使用targetRevision: HEAD

https://github.com/argoproj/argocd-example-apps/blob/master/apps/values.yaml

因此,ArgoCD中的应用程序配置如下

代码语言:javascript
复制
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: message-app-staging
  namespace: argocd
  environment: staging
  finalizers:
    - resources-finalizer.argocd.argoproj.io
spec:
  project: default

  # Source of the application manifests
  source:
    repoURL: https://github.com/akash-gautam/message-app-manifests.git
    targetRevision: HEAD
    path: manifests/staging

  # Destination cluster and namespace to deploy the application
  destination:
    server: https://kubernetes.default.svc
    namespace: staging

  syncPolicy:
    automated:
      prune: false
      selfHeal: false

如果指定了分支名称或符号引用(如HEAD),Argo将继续将活动状态与在指定分支尖端定义的资源清单或符号引用的解析提交进行比较。

以上情况最好与舵机一起使用。

如果您在YAML中有静态报表,我建议您也检查一下:https://github.com/Alwinius/bowhttps://github.com/keel-hq/keel

Bow从GitOps部署存储库中定义的图像的Docker注册中心检测更新的图像标记,其中包含Kubernetes部署/状态集或Helm模板。

额外:https://www.padok.fr/en/blog/argocd-image-updater

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69139198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档