Skip to content

Commit 9b2f20b

Browse files
chore(argocd-image-updater): Update dependency argoproj-labs/argocd-image-updater to v1 (#3579)
* chore(argocd-image-updater): Update dependency argoproj-labs/argocd-image-updater to v1 Signed-off-by: argoproj-renovate[bot] <161757507+argoproj-renovate[bot]@users.noreply.github.com> * chore: Sync more changes Signed-off-by: Marco Maurer <[email protected]> * chore: Update README Signed-off-by: Marco Maurer <[email protected]> * chore: Bump major chart version Signed-off-by: Marco Maurer <[email protected]> * chore: Sync NetworkPolicy for metrics Signed-off-by: Marco Maurer <[email protected]> * fix: Use containerPorts.metrics for metrics arg Signed-off-by: Marco Maurer <[email protected]> * chore: Sync suffix "-controller" to Deployment Signed-off-by: Marco Maurer <[email protected]> * chore: Also drop obsolete config key and refactor it to match Argo CD's approach Signed-off-by: Marco Maurer <[email protected]> * fix: ConfigMap can contain non-strings, quote them Signed-off-by: Marco Maurer <[email protected]> * fix: Use fullname in leader-election-role Signed-off-by: Marco Maurer <[email protected]> * ci: Do not keep CRDs between tests Signed-off-by: Marco Maurer <[email protected]> --------- Signed-off-by: argoproj-renovate[bot] <161757507+argoproj-renovate[bot]@users.noreply.github.com> Signed-off-by: Marco Maurer <[email protected]> Co-authored-by: argoproj-renovate[bot] <161757507+argoproj-renovate[bot]@users.noreply.github.com> Co-authored-by: Marco Maurer <[email protected]>
1 parent 5bcaaf4 commit 9b2f20b

17 files changed

+831
-216
lines changed

charts/argocd-image-updater/Chart.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ apiVersion: v2
22
name: argocd-image-updater
33
description: A Helm chart for Argo CD Image Updater, a tool to automatically update the container images of Kubernetes workloads which are managed by Argo CD
44
type: application
5-
version: 0.14.0
6-
appVersion: v0.17.0
5+
version: 1.0.0
6+
appVersion: v1.0.0
77
home: https://github.com/argoproj-labs/argocd-image-updater
88
icon: https://argocd-image-updater.readthedocs.io/en/stable/assets/logo.png
99
keywords:
@@ -18,5 +18,5 @@ annotations:
1818
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
1919
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
2020
artifacthub.io/changes: |
21-
- kind: fixed
22-
description: Change default value of `.Values.ingress.enabled` to `false`
21+
- kind: changed
22+
description: Bump argocd-image-updater to v1.0.0

charts/argocd-image-updater/README.md

Lines changed: 31 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -9,46 +9,33 @@ docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:late
99

1010
## Installation
1111

12+
```console
13+
helm install oci://ghcr.io/argoproj/argo-helm/argocd-image-updater --namespace argocd-image-updater-system
14+
```
15+
16+
If you still use the classic approach of installing Helm charts (non-OCI), you can do so by adding the Argo Helm repository and installing the chart with the following commands:
17+
1218
```console
1319
helm repo add argo https://argoproj.github.io/argo-helm
14-
helm install argocd-image-updater argo/argocd-image-updater
20+
helm install argocd-image-updater argo/argocd-image-updater --namespace argocd-image-updater-system
1521
```
1622

17-
You will also need to run through the [secret setup documentation] so Argo CD Image Updater can talk to the Argo CD API (until its automated in this chart).
23+
The Argo CD Image Updater controller **must** be run in the same Kubernetes cluster where your Argo CD `Application` resources are managed. The current controller architecture (v1.0+) does not support connecting to a remote Kubernetes cluster to manage applications.
1824

1925
## Prerequisites
2026

2127
* Helm v3.0.0+
2228

23-
## Configuration options
24-
25-
In order for your deployment of Argo CD Image Updater to be successful, you will need to make sure you set the correct configuration options described in detail on the [argocd-image-updater flags page].
29+
## Changelog
2630

27-
All of the `argocd-` prefixed flags, which tell `argocd-image-updater` how your Argo CD instance is setup, are set in the `config.argocd` values block. For instance:
31+
For full list of changes please check ArtifactHub [changelog].
2832

29-
```yaml
30-
config:
31-
argocd:
32-
grpcWeb: false
33-
serverAddress: "http://argocd.argo"
34-
insecure: true
35-
plaintext: true
36-
```
37-
38-
Any additional arguments mentioned on the [argocd-image-updater flags page] can be configured using the `extraArgs` value, like so.
39-
40-
### Argo CD API key
33+
Highlighted versions provide information about additional steps that should be performed by user when upgrading to newer version.
4134

42-
If you are unable to install Argo CD Image Updater into the same Kubernetes cluster you might configure it to use API of your Argo CD installation.
43-
Please also read [Configuration of Container Registries].
44-
45-
```yaml
46-
config:
47-
argocd:
48-
token: <your_secret_here>
49-
```
35+
### 1.0.0
5036

51-
If you specify a token value the secret will be created.
37+
This chart release includes the upstream breaking changes introduced in Argo CD Image Updater 1.0.0.
38+
Please read the migration docs carefully: https://argocd-image-updater.readthedocs.io/en/stable/configuration/migration/
5239

5340
### Registries
5441

@@ -72,26 +59,25 @@ The `config.registries` value can be used exactly as it looks in the documentati
7259
| authScripts.enabled | bool | `false` | Whether to mount the defined scripts that can be used to authenticate with a registry, the scripts will be mounted at `/scripts` |
7360
| authScripts.name | string | `"argocd-image-updater-authscripts"` | Name of the authentication scripts ConfigMap |
7461
| authScripts.scripts | object | `{}` | Map of key-value pairs where the key consists of the name of the script and the value the contents. |
75-
| config.applicationsAPIKind | string | `""` | API kind that is used to manage Argo CD applications (`kubernetes` or `argocd`) |
76-
| config.argocd.grpcWeb | bool | `true` | Use the gRPC-web protocol to connect to the Argo CD API |
77-
| config.argocd.insecure | bool | `false` | If specified, the certificate of the Argo CD API server is not verified. |
78-
| config.argocd.plaintext | bool | `false` | If specified, use an unencrypted HTTP connection to the Argo CD API instead of TLS. |
79-
| config.argocd.serverAddress | string | `""` | Connect to the Argo CD API server at server address |
80-
| config.argocd.token | string | `""` | If specified, the secret with Argo CD API key will be created. |
81-
| config.argocd.tokenSecretName | string | `"argocd-image-updater-secret"` | Name of the Secret containing the token |
82-
| config.disableKubeEvents | bool | `false` | Disable kubernetes events |
83-
| config.gitCommitMail | string | `""` | E-Mail address to use for Git commits |
84-
| config.gitCommitSignOff | bool | `false` | Enables sign off on commits |
85-
| config.gitCommitSigningKey | string | `""` | Path to public SSH key mounted in container, or GPG key ID used to sign commits |
86-
| config.gitCommitSigningMethod | string | `""` | Method used to sign Git commits. `openpgp` or `ssh` |
87-
| config.gitCommitTemplate | string | `""` | Changing the Git commit message |
88-
| config.gitCommitUser | string | `""` | Username to use for Git commits |
89-
| config.logLevel | string | `"info"` | Argo CD Image Update log level |
62+
| config."git.commit-message-template" | string | `""` | Changing the Git commit message |
63+
| config."git.commit-sign-off" | bool | `false` | Enables sign off on commits |
64+
| config."git.commit-signing-key" | string | `""` | Path to public SSH key mounted in container, or GPG key ID used to sign commits |
65+
| config."git.commit-signing-method" | string | `""` | Method used to sign Git commits. `openpgp` or `ssh` |
66+
| config."git.email" | string | `""` | E-Mail address to use for Git commits |
67+
| config."git.user" | string | `""` | Username to use for Git commits |
68+
| config."kube.events" | bool | `false` | Disable kubernetes events |
69+
| config."log.level" | string | `"info"` | Argo CD Image Update log level |
9070
| config.name | string | `"argocd-image-updater-config"` | Name of the ConfigMap |
9171
| config.registries | list | `[]` | Argo CD Image Updater registries list configuration. More information [here](https://argocd-image-updater.readthedocs.io/en/stable/configuration/registries/). |
9272
| config.sshConfig.config | string | `""` | Argo CD Image Updater ssh client parameter configuration |
9373
| config.sshConfig.name | string | `"argocd-image-updater-ssh-config"` | Name of the sshConfig ConfigMap |
94-
| containerPort | int | `8080` | ContainerPort for the deployment |
74+
| containerPorts.health | int | `8081` | Port for the probe endpoint |
75+
| containerPorts.metrics | int | `8443` | Port for the metrics |
76+
| containerPorts.webhook | int | `8082` | Port for the webhook events |
77+
| crds.additionalLabels | object | `{}` | Additional labels to be added to all CRDs |
78+
| crds.annotations | object | `{}` | Annotations to be added to all CRDs |
79+
| crds.install | bool | `true` | Install and upgrade CRDs |
80+
| crds.keep | bool | `true` | Keep CRDs on chart uninstall |
9581
| createClusterRoles | bool | `true` | Create cluster roles for cluster-wide installation. |
9682
| dualStack.ipFamilies | list | `[]` | IP families that should be supported and the order in which they should be applied to ClusterIP as well. Can be IPv4 and/or IPv6. |
9783
| dualStack.ipFamilyPolicy | string | `""` | IP family policy to configure dual-stack see [Configure dual-stack](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services) |
@@ -118,7 +104,7 @@ The `config.registries` value can be used exactly as it looks in the documentati
118104
| metrics.enabled | bool | `false` | Deploy metrics service |
119105
| metrics.service.annotations | object | `{}` | Metrics service annotations |
120106
| metrics.service.labels | object | `{}` | Metrics service labels |
121-
| metrics.service.servicePort | int | `8081` | Metrics service port |
107+
| metrics.service.servicePort | int | `8443` | Metrics service port |
122108
| metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
123109
| metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
124110
| metrics.serviceMonitor.interval | string | `"30s"` | Prometheus ServiceMonitor interval |
@@ -131,7 +117,7 @@ The `config.registries` value can be used exactly as it looks in the documentati
131117
| nodeSelector | object | `{}` | Kubernetes nodeSelector settings for the deployment |
132118
| podAnnotations | object | `{}` | Pod Annotations for the deployment |
133119
| podLabels | object | `{}` | Pod Labels for the deployment |
134-
| podSecurityContext | object | `{}` | Pod security context settings for the deployment |
120+
| podSecurityContext | object | See [values.yaml] | Pod security context settings for the deployment |
135121
| priorityClassName | string | `""` | Priority class for the deployment |
136122
| rbac.enabled | bool | `true` | Enable RBAC creation |
137123
| replicaCount | int | `1` | Replica count for the deployment. It is not advised to run more than one replica. |
@@ -162,9 +148,5 @@ The `config.registries` value can be used exactly as it looks in the documentati
162148
----------------------------------------------
163149
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
164150

165-
[MetricRelabelConfigs]: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
166-
[RelabelConfigs]: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
167-
[secret setup documentation]: https://argocd-image-updater.readthedocs.io/en/stable/install/installation/#method-2-connect-using-argo-cd-api-server
168-
[argocd-image-updater flags page]: https://argocd-image-updater.readthedocs.io/en/stable/install/reference/#flags
169151
[Configuration of Container Registries]: https://argocd-image-updater.readthedocs.io/en/stable/configuration/registries/
170152
[Support ECR authentication]: https://github.com/argoproj-labs/argocd-image-updater/issues/112

charts/argocd-image-updater/README.md.gotmpl

Lines changed: 14 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -9,46 +9,33 @@ docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:late
99

1010
## Installation
1111

12+
```console
13+
helm install oci://ghcr.io/argoproj/argo-helm/argocd-image-updater --namespace argocd-image-updater-system
14+
```
15+
16+
If you still use the classic approach of installing Helm charts (non-OCI), you can do so by adding the Argo Helm repository and installing the chart with the following commands:
17+
1218
```console
1319
helm repo add argo https://argoproj.github.io/argo-helm
14-
helm install argocd-image-updater argo/argocd-image-updater
20+
helm install argocd-image-updater argo/argocd-image-updater --namespace argocd-image-updater-system
1521
```
1622

17-
You will also need to run through the [secret setup documentation] so Argo CD Image Updater can talk to the Argo CD API (until its automated in this chart).
23+
The Argo CD Image Updater controller **must** be run in the same Kubernetes cluster where your Argo CD `Application` resources are managed. The current controller architecture (v1.0+) does not support connecting to a remote Kubernetes cluster to manage applications.
1824

1925
## Prerequisites
2026

2127
* Helm v3.0.0+
2228

23-
## Configuration options
24-
25-
In order for your deployment of Argo CD Image Updater to be successful, you will need to make sure you set the correct configuration options described in detail on the [argocd-image-updater flags page].
29+
## Changelog
2630

27-
All of the `argocd-` prefixed flags, which tell `argocd-image-updater` how your Argo CD instance is setup, are set in the `config.argocd` values block. For instance:
31+
For full list of changes please check ArtifactHub [changelog].
2832

29-
```yaml
30-
config:
31-
argocd:
32-
grpcWeb: false
33-
serverAddress: "http://argocd.argo"
34-
insecure: true
35-
plaintext: true
36-
```
37-
38-
Any additional arguments mentioned on the [argocd-image-updater flags page] can be configured using the `extraArgs` value, like so.
39-
40-
### Argo CD API key
33+
Highlighted versions provide information about additional steps that should be performed by user when upgrading to newer version.
4134

42-
If you are unable to install Argo CD Image Updater into the same Kubernetes cluster you might configure it to use API of your Argo CD installation.
43-
Please also read [Configuration of Container Registries].
44-
45-
```yaml
46-
config:
47-
argocd:
48-
token: <your_secret_here>
49-
```
35+
### 1.0.0
5036

51-
If you specify a token value the secret will be created.
37+
This chart release includes the upstream breaking changes introduced in Argo CD Image Updater 1.0.0.
38+
Please read the migration docs carefully: https://argocd-image-updater.readthedocs.io/en/stable/configuration/migration/
5239

5340
### Registries
5441

@@ -69,9 +56,5 @@ The `config.registries` value can be used exactly as it looks in the documentati
6956
----------------------------------------------
7057
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
7158

72-
[MetricRelabelConfigs]: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
73-
[RelabelConfigs]: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
74-
[secret setup documentation]: https://argocd-image-updater.readthedocs.io/en/stable/install/installation/#method-2-connect-using-argo-cd-api-server
75-
[argocd-image-updater flags page]: https://argocd-image-updater.readthedocs.io/en/stable/install/reference/#flags
7659
[Configuration of Container Registries]: https://argocd-image-updater.readthedocs.io/en/stable/configuration/registries/
7760
[Support ECR authentication]: https://github.com/argoproj-labs/argocd-image-updater/issues/112

charts/argocd-image-updater/ci/enable-extra-objects-values.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Test with extraObjects enabled
2-
# Do not deploy the CRDs as they are already present from the previous test
3-
installCRDs: false
2+
3+
crds:
4+
# Delete CRDs upon uninstall, otherwise they would conflict with other tests
5+
keep: false
46

57
extraObjects:
68
- apiVersion: v1

charts/argocd-image-updater/ci/enable-ingress-values.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
crds:
2+
# Delete CRDs upon uninstall, otherwise they would conflict with other tests
23
keep: false
34

45
ingress:
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
# Test with extraObjects enabled
2-
# Do not deploy the CRDs as they are already present from the previous test
3-
installCRDs: false
1+
# Test with PriorityClass set
2+
3+
crds:
4+
# Delete CRDs upon uninstall, otherwise they would conflict with other tests
5+
keep: false
46

57
priorityClassName: system-node-critical

charts/argocd-image-updater/templates/_helpers.tpl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ helm.sh/chart: {{ include "argocd-image-updater.chart" . }}
4848
app.kubernetes.io/version: {{ .Chart.AppVersion | trunc 63 | quote }}
4949
{{- end }}
5050
app.kubernetes.io/managed-by: {{ .Release.Service }}
51+
control-plane: argocd-image-updater-controller
5152
{{- end }}
5253

5354
{{/*

charts/argocd-image-updater/templates/configmap.yaml

Lines changed: 3 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,11 @@ metadata:
77
name: {{ .Values.config.name }}
88
namespace: {{ include "argocd-image-updater.namespace" . | quote }}
99
data:
10-
{{- with .Values.config.applicationsAPIKind }}
11-
applications_api: {{ . | quote }}
12-
{{- if eq . "argocd" }}
13-
argocd.grpc_web: {{ $.Values.config.argocd.grpcWeb | quote }}
14-
{{- with $.Values.config.argocd.serverAddress }}
15-
argocd.server_addr: {{ . | quote }}
16-
{{- end }}
17-
argocd.insecure: {{ $.Values.config.argocd.insecure | quote }}
18-
argocd.plaintext: {{ $.Values.config.argocd.plaintext | quote }}
19-
{{- end -}}
20-
{{- end }}
21-
{{- with .Values.config.logLevel }}
22-
log.level: {{ . | quote }}
23-
{{- end }}
24-
{{- with .Values.config.gitCommitUser }}
25-
git.user: {{ . | quote }}
26-
{{- end }}
27-
{{- with .Values.config.gitCommitMail }}
28-
git.email: {{ . | quote }}
29-
{{- end }}
30-
{{- with .Values.config.gitCommitTemplate }}
31-
git.commit-message-template: |
32-
{{- nindent 4 . }}
33-
{{- end }}
34-
{{- with .Values.config.gitCommitSigningKey }}
35-
git.commit-signing-key: {{ . | quote }}
36-
{{- end }}
37-
{{- with .Values.config.gitCommitSignOff }}
38-
git.commit-sign-off: {{ . | quote }}
39-
{{- end }}
40-
{{- with .Values.config.gitCommitSigningMethod }}
41-
git.commit-signing-method: {{ . | quote }}
42-
{{- end }}
43-
kube.events: {{ .Values.config.disableKubeEvents | quote }}
4410
{{- with .Values.config.registries }}
4511
registries.conf: |
4612
registries:
4713
{{- toYaml . | nindent 6 }}
4814
{{- end }}
15+
{{- range $key, $value := (omit .Values.config "name" "registries" "sshConfig") }}
16+
{{ $key }}: {{ $value | quote }}
17+
{{- end }}

0 commit comments

Comments
 (0)