DEV Community

K@zuki.
K@zuki.

Posted on • Edited on

Automatically Updating Helm Chart Referenced in Argo CD Using Renovate - Part 2

Yesterday, I posted an article titled "Automatically Updating Helm Chart Referenced in Argo CD Using Renovate."

That method used regexManagers to retrieve version information from GitHub releases specified in the configuration. However, this time I will introduce an even easier and simpler method.

Recap of Previous Method

The previous method involved adding regexManagers and comments to the lines to be updated.



  // renovate.json5
  "regexManagers": [
    {
      "datasourceTemplate": "github-releases",
      "fileMatch": [
        "argocd-config/base/.*\\.yaml"
      ],
      "matchStrings": [
        // e.g.) targetRevision: 5.31.0 # renovate: depName=argoproj/argo-helm extractVersion=^argo-cd-(?<version>.+)$
        " +targetRevision: +(?<currentValue>[^'\" ]+) +# renovate: depName=(?<depName>[^ \\n]+) +(extractVersion=(?<extractVersion>[^\\n]+))?",
      ],
    },
  ]


Enter fullscreen mode Exit fullscreen mode


# Add comments to the lines to be updated
targetRevision: 5.31.0 # renovate: depName=argoproj/argo-helm extractVersion=^argo-cd-(?<version>.+)$


Enter fullscreen mode Exit fullscreen mode

This time, we will make the automatic update process even easier.

Making It Easier

Read the Documentation

To make the automatic update process even easier, we first read the documentation for Managers.

The reason for reading the documentation for Managers is that if there are already suitable Managers listed in the documentation, then you can simply write the configuration for that Manager and it will automatically become an update target.

If it is not listed, then write regexManagers, create an issue, or submit a pull request.

Looking through the documentation, it seems that there is a Manager called argocd.

screenshot

Although it is not clear whether it can be used as is, the Additional Information section suggests that it may be suitable for Argo CD applications.

The argocd manager has no fileMatch default patterns, so it won't match any files until you configure it with a pattern. This is because there is no commonly accepted file/directory naming convention for argocd YAML files and we don't want to check every single *.yaml file in repositories just in case any of them have ArgoCD definitions.

Define the Configuration

If there is a definition for regexManagers, delete it. Simply define the path to the files to be updated in fileMatch.



  "argocd": {
    "fileMatch": [
      "argocd-config/base/.*\\.yaml",
    ],
  },


Enter fullscreen mode Exit fullscreen mode

FYI: https://github.com/corrupt952/home-apps/blob/main/.github/renovate.json5#L19-L23

Updating the configuration in this way will make it an update target. It is much simpler than the previous method.

PRs Created

chore(deps): update helm release argo-cd to v5.31.1 #39

Mend Renovate

This PR contains the following updates:

Package Update Change
argo-cd patch 5.31.0 -> 5.31.1

Release Notes

argoproj/argo-helm

v5.31.1

Compare Source

A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.


Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

chore(deps): update helm release kubernetes-dashboard to v6.0.7 #40

Mend Renovate

This PR contains the following updates:

Package Update Change
kubernetes-dashboard patch 6.0.6 -> 6.0.7

Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

chore(deps): update helm release nfs-subdir-external-provisioner to v4.0.18 #41

Mend Renovate

This PR contains the following updates:

Package Update Change
nfs-subdir-external-provisioner patch 4.0.2 -> 4.0.18

Release Notes

kubernetes-sigs/nfs-subdir-external-provisioner

v4.0.18

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.17

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.16

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.15

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.14

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.13

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.12

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.11

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.10

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.9

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.8

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.6

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.5

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.4

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.

v4.0.3

Compare Source

nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.


Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

chore(deps): update helm release sealed-secrets to v2.8.2 #42

Mend Renovate

This PR contains the following updates:

Package Update Change
sealed-secrets patch 2.8.1 -> 2.8.2

Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

chore(deps): update helm release wordpress to v16.0.4 #43

Mend Renovate

This PR contains the following updates:

Package Update Change
wordpress (source) patch 16.0.2 -> 16.0.4

Configuration

πŸ“… Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

β™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

Conclusion

That was a simple way to automatically update the Argo CD application using Renovate.

Please try it out for yourself, even if you just install it for now.

Top comments (0)