From 7477b33cba5961bea54eaf63eded687b64877fd3 Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Fri, 17 Sep 2021 19:47:11 +0200 Subject: [PATCH 01/14] feat(argo-cd): Add ability to scrape redis metrics (#892) * feat(argo-cd): Add ability to scrape redis metrics Signed-off-by: Marco Kilchhofer * Bump chart version Signed-off-by: Marco Kilchhofer --- charts/argo-cd/Chart.yaml | 4 +- charts/argo-cd/README.md | 19 +++++++++ .../argo-cd/templates/redis/deployment.yaml | 18 +++++++++ .../templates/redis/metrics-service.yaml | 28 +++++++++++++ .../templates/redis/networkpolicy.yaml | 7 ++++ .../templates/redis/servicemonitor.yaml | 39 +++++++++++++++++++ charts/argo-cd/values.yaml | 31 +++++++++++++++ 7 files changed, 144 insertions(+), 2 deletions(-) create mode 100644 charts/argo-cd/templates/redis/metrics-service.yaml create mode 100644 charts/argo-cd/templates/redis/servicemonitor.yaml diff --git a/charts/argo-cd/Chart.yaml b/charts/argo-cd/Chart.yaml index 30488923..9976c962 100644 --- a/charts/argo-cd/Chart.yaml +++ b/charts/argo-cd/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: 2.1.2 description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. name: argo-cd -version: 3.19.0 +version: 3.20.0 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-cd/assets/logo.png keywords: @@ -21,4 +21,4 @@ dependencies: condition: redis-ha.enabled annotations: artifacthub.io/changes: | - - "[Added]: Add support for topologySpreadConstraints" + - "[Added]: Ability to scrape redis metrics" diff --git a/charts/argo-cd/README.md b/charts/argo-cd/README.md index 5e1459a2..d9834553 100644 --- a/charts/argo-cd/README.md +++ b/charts/argo-cd/README.md @@ -469,6 +469,25 @@ through `xxx.extraArgs` | redis.securityContext | Redis Pod Security Context | See [values.yaml](values.yaml) | | redis.servicePort | Redis service port | `6379` | | redis.tolerations | [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | `[]` | +| redis.metrics.enabled | Deploy metrics service and redis-exporter sidecar | `false` | +| redis.metrics.image.repository | redis-exporter image repository | `quay.io/bitnami/redis-exporter` | +| redis.metrics.image.tag | redis-exporter image tag | `1.26.0-debian-10-r2` | +| redis.metrics.image.imagePullPolicy | redis-exporter image PullPolicy | `IfNotPresent` | +| redis.metrics.containerPort | Port to use for redis-exporter sidecar | `9121` | +| redis.metrics.resources | Resource limits and requests for redis-exporter sidecar | `{}` | +| redis.metrics.service.type | Metrics service type | `ClusterIP` | +| redis.metrics.service.clusterIP | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) | `None` | +| redis.metrics.service.annotations | Metrics service annotations | `{}` | +| redis.metrics.service.labels | Metrics service labels | `{}` | +| redis.metrics.service.servicePort | Metrics service port | `9121` | +| redis.metrics.service.portName | Metrics service port name | `http-metrics` | +| redis.metrics.serviceMonitor.enabled | Enable a prometheus ServiceMonitor | `false` | +| redis.metrics.serviceMonitor.interval | Interval at which metrics should be scraped | `30s` | +| redis.metrics.serviceMonitor.relabelings | Prometheus [RelabelConfigs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) to apply to samples before scraping | `[]` | +| redis.metrics.serviceMonitor.metricRelabelings | Prometheus [MetricRelabelConfigs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) to apply to samples before ingestion | `[]` | +| redis.metrics.serviceMonitor.selector | Prometheus ServiceMonitor selector labels | `{}` | +| redis.metrics.serviceMonitor.namespace | Prometheus ServiceMonitor namespace | `` | +| redis.metrics.serviceMonitor.additionalLabels | Additional labels to add to the Prometheus ServiceMonitor | `{}` | | redis-ha | Configures [Redis HA subchart](https://github.com/DandyDeveloper/charts/tree/master/charts/redis-ha) The properties below have been changed from the subchart defaults | | | redis-ha.enabled | Enables the Redis HA subchart and disables the custom Redis single node deployment| `false` | | redis-ha.exporter.enabled | If `true`, the prometheus exporter sidecar is enabled | `true` | diff --git a/charts/argo-cd/templates/redis/deployment.yaml b/charts/argo-cd/templates/redis/deployment.yaml index f5003466..fa01c7b4 100755 --- a/charts/argo-cd/templates/redis/deployment.yaml +++ b/charts/argo-cd/templates/redis/deployment.yaml @@ -64,6 +64,24 @@ spec: {{- end }} resources: {{- toYaml .Values.redis.resources | nindent 10 }} + {{- if .Values.redis.metrics.enabled }} + - name: metrics + env: + - name: REDIS_ADDR + value: {{ printf "redis://localhost:%v" .Values.redis.containerPort }} + - name: REDIS_EXPORTER_WEB_LISTEN_ADDRESS + value: {{ printf "0.0.0.0:%v" .Values.redis.metrics.containerPort }} + image: {{ .Values.redis.metrics.image.repository }}:{{ .Values.redis.metrics.image.tag }} + imagePullPolicy: {{ .Values.redis.metrics.image.imagePullPolicy}} + ports: + - containerPort: {{ .Values.redis.metrics.containerPort }} + name: metrics + protocol: TCP + resources: {{- toYaml .Values.redis.metrics.resources | nindent 10 }} + {{- with .Values.redis.containerSecurityContext }} + securityContext: {{- toYaml . | nindent 10 }} + {{- end }} + {{- end }} {{- with .Values.redis.extraContainers }} {{- toYaml . | nindent 6 }} {{- end }} diff --git a/charts/argo-cd/templates/redis/metrics-service.yaml b/charts/argo-cd/templates/redis/metrics-service.yaml new file mode 100644 index 00000000..e799b5ea --- /dev/null +++ b/charts/argo-cd/templates/redis/metrics-service.yaml @@ -0,0 +1,28 @@ +{{- $redisHa := (index .Values "redis-ha") -}} +{{- if and .Values.redis.enabled (not $redisHa.enabled) .Values.redis.metrics.enabled -}} +apiVersion: v1 +kind: Service +metadata: + name: {{ template "argo-cd.redis.fullname" . }}-metrics + {{- with .Values.redis.metrics.service.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + labels: + {{- include "argo-cd.labels" (dict "context" . "component" .Values.redis.name "name" .Values.redis.name) | nindent 4 }} + {{- with .Values.redis.metrics.service.labels }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- with .Values.redis.metrics.service.clusterIP }} + clusterIP: {{ . }} + {{- end }} + ports: + - name: {{ .Values.redis.metrics.service.portName }} + protocol: TCP + port: {{ .Values.redis.metrics.service.servicePort }} + targetPort: metrics + selector: + {{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.redis.name "name" .Values.redis.name) | nindent 4 }} + type: {{ .Values.redis.metrics.service.type }} +{{- end }} diff --git a/charts/argo-cd/templates/redis/networkpolicy.yaml b/charts/argo-cd/templates/redis/networkpolicy.yaml index 881e257c..8b564add 100644 --- a/charts/argo-cd/templates/redis/networkpolicy.yaml +++ b/charts/argo-cd/templates/redis/networkpolicy.yaml @@ -21,6 +21,13 @@ spec: ports: - port: redis protocol: TCP + {{- if .Values.redis.metrics.enabled }} + - from: + - namespaceSelector: {} + ports: + - port: metrics + protocol: TCP + {{- end }} podSelector: matchLabels: {{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.redis.name) | nindent 6 }} diff --git a/charts/argo-cd/templates/redis/servicemonitor.yaml b/charts/argo-cd/templates/redis/servicemonitor.yaml new file mode 100644 index 00000000..b7029b74 --- /dev/null +++ b/charts/argo-cd/templates/redis/servicemonitor.yaml @@ -0,0 +1,39 @@ +{{- $redisHa := (index .Values "redis-ha") -}} +{{- if and .Values.redis.enabled (not $redisHa.enabled) .Values.redis.metrics.enabled .Values.redis.metrics.serviceMonitor.enabled -}} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ template "argo-cd.redis.fullname" . }} + {{- with .Values.redis.metrics.serviceMonitor.namespace }} + namespace: {{ . }} + {{- end }} + labels: + {{- include "argo-cd.labels" (dict "context" . "component" .Values.redis.name "name" .Values.redis.name) | nindent 4 }} + {{- with .Values.redis.metrics.serviceMonitor.selector }} + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .Values.redis.metrics.serviceMonitor.additionalLabels }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + endpoints: + - port: {{ .Values.redis.metrics.service.portName }} + {{- with .Values.redis.metrics.serviceMonitor.interval }} + interval: {{ . }} + {{- end }} + path: /metrics + {{- with .Values.redis.metrics.serviceMonitor.relabelings }} + relabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.redis.metrics.serviceMonitor.metricRelabelings }} + metricRelabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + namespaceSelector: + matchNames: + - {{ .Release.Namespace }} + selector: + matchLabels: + {{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.redis.name "name" .Values.redis.name) | nindent 6 }} +{{- end }} diff --git a/charts/argo-cd/values.yaml b/charts/argo-cd/values.yaml index 526660ab..9f828c8e 100755 --- a/charts/argo-cd/values.yaml +++ b/charts/argo-cd/values.yaml @@ -451,6 +451,37 @@ redis: ## Additional containers to be added to the redis pod. extraContainers: [] + metrics: + enabled: false + image: + repository: quay.io/bitnami/redis-exporter + tag: 1.26.0-debian-10-r2 + imagePullPolicy: IfNotPresent + containerPort: 9121 + resources: {} + # limits: + # cpu: 50m + # memory: 64Mi + # requests: + # cpu: 10m + # memory: 32Mi + service: + type: ClusterIP + clusterIP: None + annotations: {} + labels: {} + servicePort: 9121 + portName: http-metrics + serviceMonitor: + enabled: false + interval: 30s + relabelings: [] + metricRelabelings: [] + selector: {} + # prometheus: kube-prometheus + # namespace: monitoring + additionalLabels: {} + # This key configures Redis-HA subchart and when enabled (redis-ha.enabled=true) # the custom redis deployment is omitted redis-ha: From c7584ab51dbe1d7ef975a4938e0f130184a8dc76 Mon Sep 17 00:00:00 2001 From: Julien Duchesne Date: Fri, 17 Sep 2021 15:51:13 -0400 Subject: [PATCH 02/14] feat(argo-workflows): Allow setting the metrics port name (#934) * Allow setting the metrics port name Here, we scrape every pod that has a .*-metrics port here But the helm chart is locked to `metrics` which our Prometheus doesn't see This PR will make it configurable with a default value of `metrics` Signed-off-by: Julien Duchesne * Bump version Signed-off-by: Julien Duchesne * Bump minor version Signed-off-by: Marco Kilchhofer Co-authored-by: Marco Kilchhofer --- charts/argo-workflows/Chart.yaml | 4 ++-- .../templates/controller/workflow-controller-deployment.yaml | 2 +- charts/argo-workflows/values.yaml | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/charts/argo-workflows/Chart.yaml b/charts/argo-workflows/Chart.yaml index f05be3e9..0c78db41 100644 --- a/charts/argo-workflows/Chart.yaml +++ b/charts/argo-workflows/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argo-workflows description: A Helm chart for Argo Workflows type: application -version: 0.5.2 +version: 0.6.0 appVersion: "v3.1.8" icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png home: https://github.com/argoproj/argo-helm @@ -15,4 +15,4 @@ maintainers: - name: benjaminws annotations: artifacthub.io/changes: | - - "[Added]: Add controller initialDelay param to configmap" + - "[Added]: Add controller metricsConfig.portName parameter" diff --git a/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml b/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml index 7dee67e5..1cd28df2 100644 --- a/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml +++ b/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml @@ -75,7 +75,7 @@ spec: resources: {{- toYaml .Values.controller.resources | nindent 12 }} ports: - - name: metrics + - name: {{ .Values.controller.metricsConfig.portName }} containerPort: {{ .Values.controller.metricsConfig.port }} - containerPort: 6060 livenessProbe: {{ .Values.controller.livenessProbe | toYaml | nindent 12 }} diff --git a/charts/argo-workflows/values.yaml b/charts/argo-workflows/values.yaml index f87b3364..735ecb44 100644 --- a/charts/argo-workflows/values.yaml +++ b/charts/argo-workflows/values.yaml @@ -57,6 +57,7 @@ controller: enabled: false path: /metrics port: 9090 + portName: metrics servicePort: 8080 servicePortName: metrics # the controller container's securityContext From 6452b6a2e984696a277918fbc7784cf9c22ea4e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=D0=BE=CC=81man?= <3798179+ahalay@users.noreply.github.com> Date: Fri, 17 Sep 2021 23:14:31 +0300 Subject: [PATCH 03/14] feat(argo-cd): Ability to provide cluster role to repo-server (#919) * feat(argo-cd): Ability to provide cluster role to repo-server Signed-off-by: Roman Rudenko <3kmnazapad@gmail.com> * custom clusterRoleRules Signed-off-by: Roman Rudenko <3kmnazapad@gmail.com> * chore: beautify indentation Signed-off-by: Marco Kilchhofer * fix: noeol in clusterrolebinding.yaml Signed-off-by: Marco Kilchhofer Co-authored-by: Roman Rudenko Co-authored-by: Marco Kilchhofer --- charts/argo-cd/Chart.yaml | 4 ++-- charts/argo-cd/README.md | 5 ++++ .../clusterrole.yaml | 8 +++---- .../argocd-repo-server/clusterrole.yaml | 23 +++++++++++++++++++ .../clusterrolebinding.yaml | 16 +++++++++++++ charts/argo-cd/values.yaml | 11 +++++++++ 6 files changed, 61 insertions(+), 6 deletions(-) create mode 100644 charts/argo-cd/templates/argocd-repo-server/clusterrole.yaml create mode 100644 charts/argo-cd/templates/argocd-repo-server/clusterrolebinding.yaml diff --git a/charts/argo-cd/Chart.yaml b/charts/argo-cd/Chart.yaml index 9976c962..863d64d7 100644 --- a/charts/argo-cd/Chart.yaml +++ b/charts/argo-cd/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: 2.1.2 description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. name: argo-cd -version: 3.20.0 +version: 3.21.0 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-cd/assets/logo.png keywords: @@ -21,4 +21,4 @@ dependencies: condition: redis-ha.enabled annotations: artifacthub.io/changes: | - - "[Added]: Ability to scrape redis metrics" + - "[Added]: Ability to provide cluster role to repo-server" diff --git a/charts/argo-cd/README.md b/charts/argo-cd/README.md index d9834553..bb3e724d 100644 --- a/charts/argo-cd/README.md +++ b/charts/argo-cd/README.md @@ -187,6 +187,8 @@ NAME: my-release | controller.args.selfHealTimeout | define the controller `--self-heal-timeout-seconds` | `"5"` | | controller.args.statusProcessors | define the controller `--status-processors` | `"20"` | | controller.clusterAdminAccess.enabled | Enable RBAC for local cluster deployments. | `true` | +| controller.clusterRoleRules.enabled | Enable custom rules for the Application Controller's Cluster Role resource. | `false` | +| controller.clusterRoleRules.rules | List of custom rules for the Application Controller's Cluster Role resource. | `[]` | | controller.containerPort | Controller listening port. | `8082` | | controller.extraArgs | Additional arguments for the controller. A list of flags | `[]` | | controller.extraContainers | Additional containers for the controller. A list of containers. | `[]` | @@ -244,6 +246,9 @@ NAME: my-release | repoServer.autoscaling.maxReplicas | Maximum number of replicas for the repo server [HPA](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | `5` | | repoServer.autoscaling.targetCPUUtilizationPercentage | Average CPU utilization percentage for the repo server [HPA](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | `50` | | repoServer.autoscaling.targetMemoryUtilizationPercentage | Average memory utilization percentage for the repo server [HPA](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | `50` | +| repoServer.clusterAdminAccess.enabled | Enable RBAC for local cluster deployments. | `false` | +| repoServer.clusterRoleRules.enabled | Enable custom rules for the Repo server's Cluster Role resource. | `false` | +| repoServer.clusterRoleRules.rules | List of custom rules for the Repo server's Cluster Role resource. | `[]` | | repoServer.containerPort | Repo server port | `8081` | | repoServer.extraArgs | Additional arguments for the repo server. A list of flags. | `[]` | | repoServer.extraContainers | Additional containers for the repo server. A list of containers. | `[]` | diff --git a/charts/argo-cd/templates/argocd-application-controller/clusterrole.yaml b/charts/argo-cd/templates/argocd-application-controller/clusterrole.yaml index bd6ff8aa..0aa82961 100644 --- a/charts/argo-cd/templates/argocd-application-controller/clusterrole.yaml +++ b/charts/argo-cd/templates/argocd-application-controller/clusterrole.yaml @@ -6,9 +6,9 @@ metadata: labels: {{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }} rules: -{{- if .Values.controller.clusterRoleRules.enabled }} -{{- toYaml .Values.controller.clusterRoleRules.rules | nindent 2 }} -{{ else }} + {{- if .Values.controller.clusterRoleRules.enabled }} + {{- toYaml .Values.controller.clusterRoleRules.rules | nindent 0 }} + {{- else }} - apiGroups: - '*' resources: @@ -19,5 +19,5 @@ rules: - '*' verbs: - '*' -{{- end }} + {{- end }} {{- end }} diff --git a/charts/argo-cd/templates/argocd-repo-server/clusterrole.yaml b/charts/argo-cd/templates/argocd-repo-server/clusterrole.yaml new file mode 100644 index 00000000..4ea41da3 --- /dev/null +++ b/charts/argo-cd/templates/argocd-repo-server/clusterrole.yaml @@ -0,0 +1,23 @@ +{{- if and .Values.repoServer.serviceAccount.create .Values.repoServer.clusterAdminAccess.enabled }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: {{ template "argo-cd.repoServer.fullname" . }} + labels: + {{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }} +rules: + {{- if .Values.repoServer.clusterRoleRules.enabled }} + {{- toYaml .Values.repoServer.clusterRoleRules.rules | nindent 0 }} + {{- else }} +- apiGroups: + - '*' + resources: + - '*' + verbs: + - '*' +- nonResourceURLs: + - '*' + verbs: + - '*' + {{- end }} +{{- end }} diff --git a/charts/argo-cd/templates/argocd-repo-server/clusterrolebinding.yaml b/charts/argo-cd/templates/argocd-repo-server/clusterrolebinding.yaml new file mode 100644 index 00000000..9757912e --- /dev/null +++ b/charts/argo-cd/templates/argocd-repo-server/clusterrolebinding.yaml @@ -0,0 +1,16 @@ +{{- if and .Values.repoServer.serviceAccount.create .Values.repoServer.clusterAdminAccess.enabled }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: {{ template "argo-cd.repoServer.fullname" . }} + labels: + {{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ template "argo-cd.repoServer.fullname" . }} +subjects: +- kind: ServiceAccount + name: {{ template "argo-cd.repoServerServiceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- end }} diff --git a/charts/argo-cd/values.yaml b/charts/argo-cd/values.yaml index 9f828c8e..17d95a80 100755 --- a/charts/argo-cd/values.yaml +++ b/charts/argo-cd/values.yaml @@ -1061,6 +1061,17 @@ repoServer: # namespace: monitoring # additionalLabels: {} + ## Enable Admin ClusterRole resources. + ## Enable if you would like to grant cluster rights to ArgoCD repo-server. + clusterAdminAccess: + enabled: false + ## Enable Custom Rules for the Repo server's Cluster Role resource + ## Enable this and set the rules: to whatever custom rules you want for the Cluster Role resource. + ## Defaults to off + clusterRoleRules: + enabled: false + rules: [] + ## Repo server service account ## If create is set to true, make sure to uncomment the name and update the rbac section below serviceAccount: From 87a83c3aad65f0e8e59276a56909d666cd8cad99 Mon Sep 17 00:00:00 2001 From: Tuan Anh Tran Date: Mon, 20 Sep 2021 21:42:56 +0700 Subject: [PATCH 04/14] docs(argocd-image-updater): update values example for extraArgs (#939) * docs: update default values example for extraArgs Signed-off-by: Tuan Anh Tran * Fix noeol in Chart.yaml Signed-off-by: Marco Kilchhofer Co-authored-by: Marco Kilchhofer --- charts/argocd-image-updater/Chart.yaml | 4 ++-- charts/argocd-image-updater/values.yaml | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/charts/argocd-image-updater/Chart.yaml b/charts/argocd-image-updater/Chart.yaml index bf652d50..7ff1d925 100644 --- a/charts/argocd-image-updater/Chart.yaml +++ b/charts/argocd-image-updater/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argocd-image-updater 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 type: application -version: 0.2.0 +version: 0.2.1 appVersion: v0.10.1 home: https://github.com/argoproj-labs/argocd-image-updater icon: https://argocd-image-updater.readthedocs.io/en/stable/assets/logo.png @@ -15,4 +15,4 @@ maintainers: url: https://argoproj.github.io/ annotations: artifacthub.io/changes: | - - "[Added]: Ability to provide custom environment variables" + - "[Fixed]: Update default values example for extraArgs diff --git a/charts/argocd-image-updater/values.yaml b/charts/argocd-image-updater/values.yaml index c6bbf4d4..01f63fc7 100644 --- a/charts/argocd-image-updater/values.yaml +++ b/charts/argocd-image-updater/values.yaml @@ -16,16 +16,23 @@ nameOverride: "" fullnameOverride: "" # -- Extra arguments for argocd-image-updater not defined in config.argocd +# If a flag contains both key and value, they need to be split to a new entry extraArgs: [] # - --disable-kubernetes # - --dry-run - # - --health-port 8080 - # - --interval 2m - # - --kubeconfig ~/.kube/config - # - --match-application-name staging-* - # - --max-concurrency 5 + # - --health-port + # - 8080 + # - --interval + # - 2m + # - --kubeconfig + # - ~/.kube/config + # - --match-application-name + # - staging-* + # - --max-concurrency + # - 5 # - --once - # - --registries-conf-path /app/config/registries.conf + # - --registries-conf-path + # - /app/config/registries.conf # -- Extra environment variables for argocd-image-updater extraEnv: [] From 735f212f966726a487e0e9cf66b7537f97b504ac Mon Sep 17 00:00:00 2001 From: Peter O Date: Mon, 27 Sep 2021 09:14:34 +0200 Subject: [PATCH 05/14] feat(argo-workflows): Allow NodePort to be specified for server service (#938) * Allow NodePort to be specified for server service. Signed-off-by: Peter Oruba * Different version number and different condition in NodePort setting evaluation, both as per PR review suggested. Signed-off-by: Peter Oruba --- charts/argo-workflows/Chart.yaml | 4 ++-- charts/argo-workflows/templates/server/server-service.yaml | 3 +++ charts/argo-workflows/values.yaml | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/charts/argo-workflows/Chart.yaml b/charts/argo-workflows/Chart.yaml index 0c78db41..591b3aaf 100644 --- a/charts/argo-workflows/Chart.yaml +++ b/charts/argo-workflows/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argo-workflows description: A Helm chart for Argo Workflows type: application -version: 0.6.0 +version: 0.7.0 appVersion: "v3.1.8" icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png home: https://github.com/argoproj/argo-helm @@ -15,4 +15,4 @@ maintainers: - name: benjaminws annotations: artifacthub.io/changes: | - - "[Added]: Add controller metricsConfig.portName parameter" + - "[Added]: Add server.serviceNodePort parameter" diff --git a/charts/argo-workflows/templates/server/server-service.yaml b/charts/argo-workflows/templates/server/server-service.yaml index 5d161ee8..49314e6e 100644 --- a/charts/argo-workflows/templates/server/server-service.yaml +++ b/charts/argo-workflows/templates/server/server-service.yaml @@ -17,6 +17,9 @@ spec: name: {{ . }} {{- end }} targetPort: 2746 + {{- if and (eq .Values.server.serviceType "NodePort") .Values.server.serviceNodePort }} + nodePort: {{ .Values.server.serviceNodePort }} + {{- end }} selector: {{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.server.name) | nindent 4 }} sessionAffinity: None diff --git a/charts/argo-workflows/values.yaml b/charts/argo-workflows/values.yaml index 735ecb44..98a7fda6 100644 --- a/charts/argo-workflows/values.yaml +++ b/charts/argo-workflows/values.yaml @@ -223,6 +223,7 @@ server: name: server serviceType: ClusterIP servicePort: 2746 + # serviceNodePort: 32746 # servicePortName: http serviceAccount: create: true From 263919a8a8979f5b6c3a25f4c9a81b0da567d8df Mon Sep 17 00:00:00 2001 From: "Seo, Sinhyeok" <44961659+Sinhyeok@users.noreply.github.com> Date: Mon, 27 Sep 2021 19:04:14 +0900 Subject: [PATCH 06/14] fix(argo-cd): Also add hostAliases to dex deployment (#941) * feat: Add hostAliases to dex/deployment based on https://github.com/argoproj/argo-helm/pull/274 Signed-off-by: Sinhyeok * Bumped version number of argo-cd chart Signed-off-by: Sinhyeok * Beautify indentation Signed-off-by: Marco Kilchhofer * Beautify indentation of existing implementation Signed-off-by: Marco Kilchhofer * Update changelog Signed-off-by: Marco Kilchhofer Co-authored-by: attar.sh Co-authored-by: Marco Kilchhofer --- charts/argo-cd/Chart.yaml | 4 ++-- .../templates/argocd-application-controller/deployment.yaml | 6 +++--- charts/argo-cd/templates/argocd-repo-server/deployment.yaml | 6 +++--- charts/argo-cd/templates/argocd-server/deployment.yaml | 6 +++--- charts/argo-cd/templates/dex/deployment.yaml | 4 ++++ 5 files changed, 15 insertions(+), 11 deletions(-) diff --git a/charts/argo-cd/Chart.yaml b/charts/argo-cd/Chart.yaml index 863d64d7..bc547f09 100644 --- a/charts/argo-cd/Chart.yaml +++ b/charts/argo-cd/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: 2.1.2 description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. name: argo-cd -version: 3.21.0 +version: 3.21.1 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-cd/assets/logo.png keywords: @@ -21,4 +21,4 @@ dependencies: condition: redis-ha.enabled annotations: artifacthub.io/changes: | - - "[Added]: Ability to provide cluster role to repo-server" + - "[Fixed]: Dex deployment now also supports hostAliases" diff --git a/charts/argo-cd/templates/argocd-application-controller/deployment.yaml b/charts/argo-cd/templates/argocd-application-controller/deployment.yaml index 90963613..b924ea41 100755 --- a/charts/argo-cd/templates/argocd-application-controller/deployment.yaml +++ b/charts/argo-cd/templates/argocd-application-controller/deployment.yaml @@ -133,10 +133,10 @@ spec: {{- end }} {{- end }} serviceAccountName: {{ template "argo-cd.controllerServiceAccountName" . }} -{{- with .Values.global.hostAliases }} + {{- with .Values.global.hostAliases }} hostAliases: -{{ toYaml . | indent 6 }} -{{- end }} + {{- toYaml . | nindent 6 }} + {{- end }} volumes: - emptyDir: {} name: argocd-home diff --git a/charts/argo-cd/templates/argocd-repo-server/deployment.yaml b/charts/argo-cd/templates/argocd-repo-server/deployment.yaml index eabc1920..7ebb8991 100755 --- a/charts/argo-cd/templates/argocd-repo-server/deployment.yaml +++ b/charts/argo-cd/templates/argocd-repo-server/deployment.yaml @@ -141,10 +141,10 @@ spec: {{- end }} {{- end }} serviceAccountName: {{ template "argo-cd.repoServerServiceAccountName" . }} -{{- with .Values.global.hostAliases }} + {{- with .Values.global.hostAliases }} hostAliases: -{{ toYaml . | indent 6 }} -{{- end }} + {{- toYaml . | nindent 6 }} + {{- end }} volumes: {{- if .Values.repoServer.volumes }} {{- toYaml .Values.repoServer.volumes | nindent 6 }} diff --git a/charts/argo-cd/templates/argocd-server/deployment.yaml b/charts/argo-cd/templates/argocd-server/deployment.yaml index c84d9d95..38cd5cbf 100755 --- a/charts/argo-cd/templates/argocd-server/deployment.yaml +++ b/charts/argo-cd/templates/argocd-server/deployment.yaml @@ -152,10 +152,10 @@ spec: {{- end }} {{- end }} serviceAccountName: {{ template "argo-cd.serverServiceAccountName" . }} -{{- with .Values.global.hostAliases }} + {{- with .Values.global.hostAliases }} hostAliases: -{{ toYaml . | indent 6 }} -{{- end }} + {{- toYaml . | nindent 6 }} + {{- end }} volumes: {{- if .Values.server.volumes }} {{- toYaml .Values.server.volumes | nindent 6}} diff --git a/charts/argo-cd/templates/dex/deployment.yaml b/charts/argo-cd/templates/dex/deployment.yaml index 5fe78628..17043a95 100755 --- a/charts/argo-cd/templates/dex/deployment.yaml +++ b/charts/argo-cd/templates/dex/deployment.yaml @@ -127,6 +127,10 @@ spec: {{- end }} {{- end }} serviceAccountName: {{ template "argo-cd.dexServiceAccountName" . }} + {{- with .Values.global.hostAliases }} + hostAliases: + {{- toYaml . | nindent 6 }} + {{- end }} volumes: - emptyDir: {} name: tmp-dir From 20a60648c3f487bc57d72cb453dcce3b2ae39783 Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Mon, 27 Sep 2021 13:43:17 +0200 Subject: [PATCH 07/14] chore: Update to stale action v4 (#945) Signed-off-by: Marco Kilchhofer --- .github/workflows/stale.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 03965cc5..5947dfc3 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -7,7 +7,7 @@ jobs: stale: runs-on: ubuntu-latest steps: - - uses: actions/stale@v3 + - uses: actions/stale@v4 with: repo-token: ${{ secrets.GITHUB_TOKEN }} # Number of days of inactivity before an issue becomes stale From 9984a74eb29551ec02aaf71ef758ec1ad1ce312c Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Mon, 27 Sep 2021 13:44:37 +0200 Subject: [PATCH 08/14] chore: Require related chart name in issues (#942) Signed-off-by: Marco Kilchhofer Co-authored-by: Marko Bevc --- .github/ISSUE_TEMPLATE/bug_report.yaml | 17 +++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.yaml | 17 +++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index 5db1fbc3..168f8edb 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -11,6 +11,23 @@ body: validations: required: true +- type: dropdown + attributes: + label: Related helm chart + description: You may select more than one. + multiple: true + options: + - argo-cd + - argo-events + - argo-rollouts + - argo-workflows + - argocd-applicationset + - argocd-image-updater + - argocd-notifications + - other + validations: + required: true + - type: textarea attributes: label: To Reproduce diff --git a/.github/ISSUE_TEMPLATE/feature_request.yaml b/.github/ISSUE_TEMPLATE/feature_request.yaml index 2ff5ab68..2fa38441 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yaml +++ b/.github/ISSUE_TEMPLATE/feature_request.yaml @@ -13,6 +13,23 @@ body: validations: required: false +- type: dropdown + attributes: + label: Related helm chart + description: You may select more than one. + multiple: true + options: + - argo-cd + - argo-events + - argo-rollouts + - argo-workflows + - argocd-applicationset + - argocd-image-updater + - argocd-notifications + - other + validations: + required: true + - type: textarea attributes: label: Describe the solution you'd like From d4b603f4c8da99af32dd0b01ab3d9b06ad096a16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan-Otto=20Kr=C3=B6pke?= Date: Mon, 27 Sep 2021 14:06:24 +0200 Subject: [PATCH 09/14] feat(argocd-applicationset): Add extraArgs (#946) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat(argocd-applicationset): Add extraArgs Signed-off-by: Jan-Otto Kröpke * Align with existing code style Signed-off-by: Marco Kilchhofer * Fix linting error and update README Signed-off-by: Marco Kilchhofer Co-authored-by: Marco Kilchhofer --- charts/argocd-applicationset/Chart.yaml | 4 ++-- charts/argocd-applicationset/README.md | 1 + charts/argocd-applicationset/templates/deployment.yaml | 3 +++ charts/argocd-applicationset/values.yaml | 4 ++++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/charts/argocd-applicationset/Chart.yaml b/charts/argocd-applicationset/Chart.yaml index ba9b62cd..5b02af5c 100644 --- a/charts/argocd-applicationset/Chart.yaml +++ b/charts/argocd-applicationset/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argocd-applicationset description: A Helm chart for installing ArgoCD ApplicationSet type: application -version: 1.4.0 +version: 1.5.0 appVersion: "v0.2.0" home: https://github.com/argoproj/argo-helm icon: https://argocd-applicationset.readthedocs.io/en/stable/assets/logo.png @@ -14,4 +14,4 @@ maintainers: - name: maruina annotations: artifacthub.io/changes: | - - "[Added]: Configuration for Pod labels" + - "[Added]: Add extraArgs to define additional CLI parameters" diff --git a/charts/argocd-applicationset/README.md b/charts/argocd-applicationset/README.md index 1683c33b..506880a6 100644 --- a/charts/argocd-applicationset/README.md +++ b/charts/argocd-applicationset/README.md @@ -65,6 +65,7 @@ kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/c | args.namespace | string | `"argocd"` | The default Argo CD repo namespace | | args.policy | string | `"sync"` | How application is synced between the generator and the cluster | | args.probeBindAddr | string | `":8081"` | The default health check port | +| extraArgs | list | `[]` | List of extra cli args to add | | extraVolumeMounts | list | `[]` | List of extra mounts to add (normally used with extraVolumes) | | extraVolumes | list | `[]` | List of extra volumes to add | | fullnameOverride | string | `""` | Override the default fully qualified app name | diff --git a/charts/argocd-applicationset/templates/deployment.yaml b/charts/argocd-applicationset/templates/deployment.yaml index a577854b..c0527562 100644 --- a/charts/argocd-applicationset/templates/deployment.yaml +++ b/charts/argocd-applicationset/templates/deployment.yaml @@ -44,6 +44,9 @@ spec: - --policy={{ .Values.args.policy }} - --debug={{ .Values.args.debug }} - --dry-run={{ .Values.args.dryRun }} + {{- with .Values.extraArgs }} + {{- toYaml . | nindent 12 }} + {{- end }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} ports: diff --git a/charts/argocd-applicationset/values.yaml b/charts/argocd-applicationset/values.yaml index 5c9f8225..fd5a50d5 100644 --- a/charts/argocd-applicationset/values.yaml +++ b/charts/argocd-applicationset/values.yaml @@ -113,3 +113,7 @@ extraVolumeMounts: [] extraVolumes: [] # - name: foobar # emptyDir: {} + +# -- List of extra cli args to add +extraArgs: [] + # - --loglevel=warn From ae3ad0e57b28c7e8df9999378e6b3f6187abe3c5 Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Mon, 27 Sep 2021 15:57:43 +0200 Subject: [PATCH 10/14] chore(argocd-applicationset): Dedup default values for CI (#948) Signed-off-by: Marco Kilchhofer --- charts/argocd-applicationset/Chart.yaml | 4 +- .../ci/default-values.yaml | 76 +------------------ 2 files changed, 3 insertions(+), 77 deletions(-) diff --git a/charts/argocd-applicationset/Chart.yaml b/charts/argocd-applicationset/Chart.yaml index 5b02af5c..652adaf4 100644 --- a/charts/argocd-applicationset/Chart.yaml +++ b/charts/argocd-applicationset/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argocd-applicationset description: A Helm chart for installing ArgoCD ApplicationSet type: application -version: 1.5.0 +version: 1.5.1 appVersion: "v0.2.0" home: https://github.com/argoproj/argo-helm icon: https://argocd-applicationset.readthedocs.io/en/stable/assets/logo.png @@ -14,4 +14,4 @@ maintainers: - name: maruina annotations: artifacthub.io/changes: | - - "[Added]: Add extraArgs to define additional CLI parameters" + - "[Removed]: Duplicated default values during chart testing" diff --git a/charts/argocd-applicationset/ci/default-values.yaml b/charts/argocd-applicationset/ci/default-values.yaml index 233dd8e2..507f1e54 100644 --- a/charts/argocd-applicationset/ci/default-values.yaml +++ b/charts/argocd-applicationset/ci/default-values.yaml @@ -1,75 +1 @@ -# Default values for argo-applicationset. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - # The image repository - repository: quay.io/argocdapplicationset/argocd-applicationset - # Image pull policy - pullPolicy: IfNotPresent - # Overrides the image tag whose default is the chart appVersion. - tag: "" - -args: - metricsAddr: :8080 - probeBindAddr: :8081 - enableLeaderElection: false - namespace: argocd - argocdRepoServer: argocd-repo-server:8081 - policy: sync - debug: false - dryRun: false - -imagePullSecrets: [] -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "" - -podAnnotations: {} - -rbac: - pspEnabled: true - -podSecurityContext: {} - # fsGroup: 2000 - -securityContext: {} - # capabilities: - # drop: - # - ALL - # readOnlyRootFilesystem: true - # runAsNonRoot: true - # runAsUser: 1000 - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -nodeSelector: {} - -tolerations: [] - -affinity: {} - -mountSSHKnownHostsVolume: true -mountTLSCertsVolume: true -mountGPGKeysVolume: false -mountGPGKeyringVolume: true +# Test with default values From 248d6d25550812557712be588c17eeb798eb6062 Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Mon, 27 Sep 2021 17:09:43 +0200 Subject: [PATCH 11/14] chore(argo-rollouts): Define 2 separate tests (#949) Signed-off-by: Marco Kilchhofer --- charts/argo-rollouts/Chart.yaml | 4 ++-- charts/argo-rollouts/ci/default-values.yaml | 1 + charts/argo-rollouts/ci/enable-dashboard-values.yaml | 6 ++++++ charts/argo-rollouts/ci/test-values.yaml | 2 -- 4 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 charts/argo-rollouts/ci/default-values.yaml create mode 100644 charts/argo-rollouts/ci/enable-dashboard-values.yaml delete mode 100644 charts/argo-rollouts/ci/test-values.yaml diff --git a/charts/argo-rollouts/Chart.yaml b/charts/argo-rollouts/Chart.yaml index e6634acb..a71abd6b 100644 --- a/charts/argo-rollouts/Chart.yaml +++ b/charts/argo-rollouts/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: "v1.0.2" description: A Helm chart for Argo Rollouts name: argo-rollouts -version: 2.1.0 +version: 2.1.1 icon: https://argoproj.github.io/argo-rollouts/assets/logo.png home: https://github.com/argoproj/argo-helm maintainers: @@ -11,4 +11,4 @@ maintainers: - name: jessesuen annotations: artifacthub.io/changes: | - - "[Added]: Keep CRDs on Helm uninstall by default, add corresponding option" + - "[Added]: Two separate tests. One for default values and one for dashboard enabled." diff --git a/charts/argo-rollouts/ci/default-values.yaml b/charts/argo-rollouts/ci/default-values.yaml new file mode 100644 index 00000000..507f1e54 --- /dev/null +++ b/charts/argo-rollouts/ci/default-values.yaml @@ -0,0 +1 @@ +# Test with default values diff --git a/charts/argo-rollouts/ci/enable-dashboard-values.yaml b/charts/argo-rollouts/ci/enable-dashboard-values.yaml new file mode 100644 index 00000000..5c0a1c04 --- /dev/null +++ b/charts/argo-rollouts/ci/enable-dashboard-values.yaml @@ -0,0 +1,6 @@ +# Test with dashboard enabled +# Do not deploy the CRDs as they are already present from the previous test +installCRDs: false + +dashboard: + enabled: true diff --git a/charts/argo-rollouts/ci/test-values.yaml b/charts/argo-rollouts/ci/test-values.yaml deleted file mode 100644 index 7ea0c4c8..00000000 --- a/charts/argo-rollouts/ci/test-values.yaml +++ /dev/null @@ -1,2 +0,0 @@ -dashboard: - enabled: true From 098d59cbd797ee5f7211459f92738e0c1f02b4a6 Mon Sep 17 00:00:00 2001 From: Marco Kilchhofer Date: Mon, 27 Sep 2021 17:17:50 +0200 Subject: [PATCH 12/14] chore(argo-workflows): Also test with default values (#950) Signed-off-by: Marco Kilchhofer --- charts/argo-workflows/Chart.yaml | 4 ++-- charts/argo-workflows/ci/default-values.yaml | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 charts/argo-workflows/ci/default-values.yaml diff --git a/charts/argo-workflows/Chart.yaml b/charts/argo-workflows/Chart.yaml index 591b3aaf..a36c9cb2 100644 --- a/charts/argo-workflows/Chart.yaml +++ b/charts/argo-workflows/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argo-workflows description: A Helm chart for Argo Workflows type: application -version: 0.7.0 +version: 0.7.1 appVersion: "v3.1.8" icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png home: https://github.com/argoproj/argo-helm @@ -15,4 +15,4 @@ maintainers: - name: benjaminws annotations: artifacthub.io/changes: | - - "[Added]: Add server.serviceNodePort parameter" + - "[Added]: Also test with default values" diff --git a/charts/argo-workflows/ci/default-values.yaml b/charts/argo-workflows/ci/default-values.yaml new file mode 100644 index 00000000..507f1e54 --- /dev/null +++ b/charts/argo-workflows/ci/default-values.yaml @@ -0,0 +1 @@ +# Test with default values From 0fe9ec1addd96ca4302bb410c998c383f9cc7364 Mon Sep 17 00:00:00 2001 From: Artem Kosenko Date: Mon, 27 Sep 2021 22:32:15 +0300 Subject: [PATCH 13/14] feat(argo-cd): Implement server.additionalApplications[].info (#944) * fix issue 943 Signed-off-by: Artem Kosenko * Apply changes from code review Changes in detail: - Add missing examples/documentation in values.yaml - Beautify indentation - Use 'with' instead of 'if' to don't repeat variable names - Fix changelog annotation - Bump minor chart version as this adds a feature Signed-off-by: Marco Kilchhofer * Update README Signed-off-by: Marco Kilchhofer Co-authored-by: Marko Bevc Co-authored-by: Marco Kilchhofer --- charts/argo-cd/Chart.yaml | 4 +- charts/argo-cd/README.md | 2 + .../templates/argocd-server/applications.yaml | 38 ++++++++++--------- charts/argo-cd/values.yaml | 18 ++++++--- 4 files changed, 38 insertions(+), 24 deletions(-) diff --git a/charts/argo-cd/Chart.yaml b/charts/argo-cd/Chart.yaml index bc547f09..4e7c318f 100644 --- a/charts/argo-cd/Chart.yaml +++ b/charts/argo-cd/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: 2.1.2 description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. name: argo-cd -version: 3.21.1 +version: 3.22.0 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-cd/assets/logo.png keywords: @@ -21,4 +21,4 @@ dependencies: condition: redis-ha.enabled annotations: artifacthub.io/changes: | - - "[Fixed]: Dex deployment now also supports hostAliases" + - "[Added]: Support for server.additionalApplications[].info" diff --git a/charts/argo-cd/README.md b/charts/argo-cd/README.md index bb3e724d..95a938dc 100644 --- a/charts/argo-cd/README.md +++ b/charts/argo-cd/README.md @@ -175,6 +175,8 @@ NAME: my-release | configs.secret.extra | add additional secrets to be added to argocd-secret | `{}` | | configs.styles | Define custom CSS styles for your argo instance ([Read More](https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/)). This Settings will automatically mount the provided css and reference it in the argo configuration. | `""` (See [values.yaml](values.yaml)) | | openshift.enabled | enables using arbitrary uid for argo repo server | `false` | +| server.additionalApplications | Deploy ArgoCD Applications within this helm release | `[]` (See [values.yaml](values.yaml)) | +| server.additionalProjects | Deploy ArgoCD Projects within this helm release | `[]` (See [values.yaml](values.yaml)) | ## ArgoCD Controller diff --git a/charts/argo-cd/templates/argocd-server/applications.yaml b/charts/argo-cd/templates/argocd-server/applications.yaml index 1b9d424a..d4d6171b 100644 --- a/charts/argo-cd/templates/argocd-server/applications.yaml +++ b/charts/argo-cd/templates/argocd-server/applications.yaml @@ -2,41 +2,45 @@ apiVersion: v1 kind: List items: -{{- range .Values.server.additionalApplications }} + {{- range .Values.server.additionalApplications }} - apiVersion: argoproj.io/v1alpha1 kind: Application metadata: - {{- if .additionalAnnotations }} + {{- with .additionalAnnotations }} annotations: - {{- range $key, $value := .additionalAnnotations }} + {{- range $key, $value := . }} {{ $key }}: {{ $value | quote }} + {{- end }} {{- end }} - {{- end }} - {{- if .additionalLabels }} + {{- with .additionalLabels }} labels: -{{- toYaml .additionalLabels | nindent 8 }} + {{- toYaml . | nindent 8 }} {{- end }} name: {{ .name }} - {{- if .namespace }} - namespace: {{ .namespace }} + {{- with .namespace }} + namespace: {{ . }} {{- end }} - {{- if .finalizers }} + {{- with .finalizers }} finalizers: -{{- toYaml .finalizers | nindent 8 }} + {{- toYaml . | nindent 8 }} {{- end }} spec: project: {{ tpl .project $ }} source: -{{- toYaml .source | nindent 8 }} + {{- toYaml .source | nindent 8 }} destination: -{{- toYaml .destination | nindent 8 }} - {{- if .syncPolicy }} + {{- toYaml .destination | nindent 8 }} + {{- with .syncPolicy }} syncPolicy: -{{- toYaml .syncPolicy | nindent 8 }} + {{- toYaml . | nindent 8 }} {{- end }} - {{- if .ignoreDifferences }} + {{- with .ignoreDifferences }} ignoreDifferences: -{{- toYaml .ignoreDifferences | nindent 8 }} + {{- toYaml . | nindent 8 }} {{- end }} -{{- end }} + {{- with .info }} + info: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- end }} {{- end }} \ No newline at end of file diff --git a/charts/argo-cd/values.yaml b/charts/argo-cd/values.yaml index 17d95a80..d914eacf 100755 --- a/charts/argo-cd/values.yaml +++ b/charts/argo-cd/values.yaml @@ -847,13 +847,21 @@ server: # path: guestbook # directory: # recurse: true - # destination: + # destination: # server: https://kubernetes.default.svc # namespace: guestbook - # syncPolicy: - # automated: - # prune: false - # selfHeal: false + # syncPolicy: + # automated: + # prune: false + # selfHeal: false + # ignoreDifferences: + # - group: apps + # kind: Deployment + # jsonPointers: + # - /spec/replicas + # info: + # - name: url + # value: https://argoproj.github.io/ ## Projects ## reference: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/ From 73d1aedaecca2f9c4f5b1adf3b7301c004fbe434 Mon Sep 17 00:00:00 2001 From: keiSunagawa Date: Wed, 29 Sep 2021 18:07:01 +0900 Subject: [PATCH 14/14] fix repo server extraContainers values unused (#953) Signed-off-by: keiSunagawa --- charts/argo-cd/Chart.yaml | 4 ++-- charts/argo-cd/templates/argocd-repo-server/deployment.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/charts/argo-cd/Chart.yaml b/charts/argo-cd/Chart.yaml index 4e7c318f..a68ababd 100644 --- a/charts/argo-cd/Chart.yaml +++ b/charts/argo-cd/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: 2.1.2 description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. name: argo-cd -version: 3.22.0 +version: 3.22.1 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-cd/assets/logo.png keywords: @@ -21,4 +21,4 @@ dependencies: condition: redis-ha.enabled annotations: artifacthub.io/changes: | - - "[Added]: Support for server.additionalApplications[].info" + - "[Fixed]: repoServer.extraContainers unused" diff --git a/charts/argo-cd/templates/argocd-repo-server/deployment.yaml b/charts/argo-cd/templates/argocd-repo-server/deployment.yaml index 7ebb8991..3c86cb8f 100755 --- a/charts/argo-cd/templates/argocd-repo-server/deployment.yaml +++ b/charts/argo-cd/templates/argocd-repo-server/deployment.yaml @@ -114,7 +114,7 @@ spec: failureThreshold: {{ .Values.repoServer.readinessProbe.failureThreshold }} resources: {{- toYaml .Values.repoServer.resources | nindent 10 }} - {{- with .Values.controller.extraContainers }} + {{- with .Values.repoServer.extraContainers }} {{- toYaml . | nindent 6 }} {{- end }} {{- if .Values.repoServer.nodeSelector }}