Yesterday, I posted an article titled "Automatically Updating Helm Chart Referenced in Argo CD Using Renovate."
Automatically Updating Helm Charts Referenced by Argo CD with Renovate
K@zuki. ・ May 4 '23
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]+))?",
],
},
]
# Add comments to the lines to be updated
targetRevision: 5.31.0 # renovate: depName=argoproj/argo-helm extractVersion=^argo-cd-(?<version>.+)$
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
.
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",
],
},
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
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
A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
Configuration
- [ ] 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
This PR contains the following updates:
Package | Update | Change |
---|---|---|
kubernetes-dashboard | patch |
6.0.6 -> 6.0.7
|
Configuration
- [ ] 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
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
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.17
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.16
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.15
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.14
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.13
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.12
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.11
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.10
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.9
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.8
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.6
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.5
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.4
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
v4.0.3
nfs-subdir-external-provisioner is an automatic provisioner that used your already configured NFS server, automatically creating Persistent Volumes.
Configuration
- [ ] 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
This PR contains the following updates:
Package | Update | Change |
---|---|---|
sealed-secrets | patch |
2.8.1 -> 2.8.2
|
Configuration
- [ ] 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
This PR contains the following updates:
Configuration
- [ ] 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)