From 334d8ae728114ae45f10190b9527d3f70dabc71d Mon Sep 17 00:00:00 2001 From: Aikawa Date: Wed, 27 Jul 2022 09:50:42 +0900 Subject: [PATCH] feat(argo-workflows): Add global tag (#1377) * feat(argo-workflows): Moved `.Values.images` values to global Signed-off-by: yu-croco * Revert "feat(argo-workflows): Moved `.Values.images` values to global" This reverts commit 67b4294675440ba2dfef5c8db8473d416144cc35. Signed-off-by: yu-croco * feat(argo-workflows): Add global tag Signed-off-by: yu-croco --- charts/argo-workflows/Chart.yaml | 4 ++-- charts/argo-workflows/README.md | 7 ++++--- charts/argo-workflows/templates/_helpers.tpl | 7 +++++++ .../controller/workflow-controller-deployment.yaml | 8 ++++---- .../templates/controller/workflow-controller-service.yaml | 2 +- .../templates/server/server-deployment.yaml | 6 +++--- .../argo-workflows/templates/server/server-service.yaml | 2 +- charts/argo-workflows/values.yaml | 8 +++++--- 8 files changed, 27 insertions(+), 17 deletions(-) diff --git a/charts/argo-workflows/Chart.yaml b/charts/argo-workflows/Chart.yaml index a2e8c940..ac7627a9 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.16.7 +version: 0.16.8 appVersion: v3.3.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: | - - "[Changed]: Assign common labels to some resources" + - "[Added]: Set global tag" diff --git a/charts/argo-workflows/README.md b/charts/argo-workflows/README.md index b3aae666..7d14a64f 100644 --- a/charts/argo-workflows/README.md +++ b/charts/argo-workflows/README.md @@ -45,6 +45,7 @@ Fields to note: | fullnameOverride | string | `nil` | String to fully override "argo-workflows.fullname" template | | images.pullPolicy | string | `"Always"` | imagePullPolicy to apply to all containers | | images.pullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry | +| images.tag | string | `""` | Common tag for Argo Workflows images. Defaults to `.Chart.AppVersion`. | | kubeVersionOverride | string | `""` | Override the Kubernetes version, which is used to evaluate certain manifests | | nameOverride | string | `nil` | String to partially override "argo-workflows.fullname" template | | singleNamespace | bool | `false` | Restrict Argo to operate only in a single namespace (the namespace of the Helm release) by apply Roles and RoleBindings instead of the Cluster equivalents, and start workflow-controller with the --namespaced flag. Use it in clusters with strict access policy. | @@ -73,7 +74,7 @@ Fields to note: | controller.extraEnv | list | `[]` | Extra environment variables to provide to the controller container | | controller.image.registry | string | `"quay.io"` | Registry to use for the controller | | controller.image.repository | string | `"argoproj/workflow-controller"` | Registry to use for the controller | -| controller.image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. | +| controller.image.tag | string | `""` | Image tag for the workflow controller. Defaults to `.Values.images.tag`. | | controller.initialDelay | string | `nil` | Resolves ongoing, uncommon AWS EKS bug: https://github.com/argoproj/argo-workflows/pull/4224 | | controller.instanceID.enabled | bool | `false` | Configures the controller to filter workflow submissions to only those which have a matching instanceID attribute. | | controller.instanceID.explicitID | string | `""` | Use a custom instanceID | @@ -143,7 +144,7 @@ Fields to note: | executor.env | object | `{}` | Adds environment variables for the executor. | | executor.image.registry | string | `"quay.io"` | Registry to use for the Workflow Executors | | executor.image.repository | string | `"argoproj/argoexec"` | Repository to use for the Workflow Executors | -| executor.image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. | +| executor.image.tag | string | `""` | Image tag for the workflow executor. Defaults to `.Values.images.tag`. | | executor.resources | object | `{}` | Resource limits and requests for the Workflow Executors | | executor.securityContext | object | `{}` | sets security context for the executor container | @@ -162,7 +163,7 @@ Fields to note: | server.extraEnv | list | `[]` | Extra environment variables to provide to the argo-server container | | server.image.registry | string | `"quay.io"` | Registry to use for the server | | server.image.repository | string | `"argoproj/argocli"` | Repository to use for the server | -| server.image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. | +| server.image.tag | string | `""` | Image tag for the Argo Workflows server. Defaults to `.Values.images.tag`. | | server.ingress.annotations | object | `{}` | Additional ingress annotations | | server.ingress.enabled | bool | `false` | Enable an ingress resource | | server.ingress.extraPaths | list | `[]` | Additional ingress paths | diff --git a/charts/argo-workflows/templates/_helpers.tpl b/charts/argo-workflows/templates/_helpers.tpl index 2289951d..f0306cac 100644 --- a/charts/argo-workflows/templates/_helpers.tpl +++ b/charts/argo-workflows/templates/_helpers.tpl @@ -120,3 +120,10 @@ Return the target Kubernetes version {{- define "argo-workflows.kubeVersion" -}} {{- default .Capabilities.KubeVersion.Version .Values.kubeVersionOverride }} {{- end -}} + +{{/* +Return the default Argo Workflows app version +*/}} +{{- define "argo-workflows.defaultTag" -}} + {{- default .Chart.AppVersion .Values.images.tag }} +{{- end -}} diff --git a/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml b/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml index 9f53a2e4..53cab446 100644 --- a/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml +++ b/charts/argo-workflows/templates/controller/workflow-controller-deployment.yaml @@ -4,7 +4,7 @@ metadata: name: {{ template "argo-workflows.controller.fullname" . }} labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.controller.image.tag | trunc 63 | quote }} {{- with .Values.controller.deploymentAnnotations }} annotations: {{- toYaml . | nindent 4 }} @@ -18,7 +18,7 @@ spec: metadata: labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 8 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.controller.image.tag | trunc 63 | quote }} {{- with.Values.controller.podLabels }} {{- toYaml . | nindent 8 }} {{- end }} @@ -34,14 +34,14 @@ spec: {{- end }} containers: - name: controller - image: "{{ .Values.controller.image.registry }}/{{ .Values.controller.image.repository }}:{{ .Values.controller.image.tag | default .Chart.AppVersion }}" + image: "{{ .Values.controller.image.registry }}/{{ .Values.controller.image.repository }}:{{ default (include "argo-workflows.defaultTag" .) .Values.controller.image.tag }}" imagePullPolicy: {{ .Values.images.pullPolicy }} command: [ "workflow-controller" ] args: - "--configmap" - "{{ template "argo-workflows.controller.fullname" . }}-configmap" - "--executor-image" - - "{{ .Values.executor.image.registry }}/{{ .Values.executor.image.repository }}:{{ .Values.executor.image.tag | default .Chart.AppVersion }}" + - "{{ .Values.executor.image.registry }}/{{ .Values.executor.image.repository }}:{{ default (include "argo-workflows.defaultTag" .) .Values.executor.image.tag }}" - "--loglevel" - "{{ .Values.controller.logging.level }}" - "--gloglevel" diff --git a/charts/argo-workflows/templates/controller/workflow-controller-service.yaml b/charts/argo-workflows/templates/controller/workflow-controller-service.yaml index 37d4658d..3ca1afad 100644 --- a/charts/argo-workflows/templates/controller/workflow-controller-service.yaml +++ b/charts/argo-workflows/templates/controller/workflow-controller-service.yaml @@ -5,7 +5,7 @@ metadata: name: {{ template "argo-workflows.controller.fullname" . }} labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.controller.image.tag | trunc 63 | quote }} {{- with .Values.controller.serviceLabels }} {{ toYaml . | nindent 4 }} {{- end }} diff --git a/charts/argo-workflows/templates/server/server-deployment.yaml b/charts/argo-workflows/templates/server/server-deployment.yaml index f80ff838..d4881d52 100644 --- a/charts/argo-workflows/templates/server/server-deployment.yaml +++ b/charts/argo-workflows/templates/server/server-deployment.yaml @@ -5,7 +5,7 @@ metadata: name: {{ template "argo-workflows.server.fullname" . }} labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.server.image.tag | trunc 63 | quote }} {{- with .Values.server.deploymentAnnotations }} annotations: {{- toYaml . | nindent 4 }} @@ -19,7 +19,7 @@ spec: metadata: labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 8 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.server.image.tag | trunc 63 | quote }} {{- with .Values.server.podLabels }} {{- toYaml . | nindent 8 }} {{- end }} @@ -35,7 +35,7 @@ spec: {{- end }} containers: - name: argo-server - image: "{{ .Values.server.image.registry }}/{{ .Values.server.image.repository }}:{{ .Values.server.image.tag | default .Chart.AppVersion }}" + image: "{{ .Values.server.image.registry }}/{{ .Values.server.image.repository }}:{{ default (include "argo-workflows.defaultTag" .) .Values.server.image.tag }}" imagePullPolicy: {{ .Values.images.pullPolicy }} securityContext: {{- toYaml .Values.server.securityContext | nindent 12 }} diff --git a/charts/argo-workflows/templates/server/server-service.yaml b/charts/argo-workflows/templates/server/server-service.yaml index 9161aaef..3b147ab2 100644 --- a/charts/argo-workflows/templates/server/server-service.yaml +++ b/charts/argo-workflows/templates/server/server-service.yaml @@ -5,7 +5,7 @@ metadata: name: {{ template "argo-workflows.server.fullname" . }} labels: {{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }} - app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | trunc 63 | quote }} + app.kubernetes.io/version: {{ default (include "argo-workflows.defaultTag" .) .Values.server.image.tag | trunc 63 | quote }} {{- with .Values.server.serviceAnnotations }} annotations: {{- toYaml . | nindent 4 }} diff --git a/charts/argo-workflows/values.yaml b/charts/argo-workflows/values.yaml index 70e76ceb..569ac5c5 100644 --- a/charts/argo-workflows/values.yaml +++ b/charts/argo-workflows/values.yaml @@ -1,4 +1,6 @@ images: + # -- Common tag for Argo Workflows images. Defaults to `.Chart.AppVersion`. + tag: "" # -- imagePullPolicy to apply to all containers pullPolicy: Always # -- Secrets with credentials to pull images from a private registry @@ -45,7 +47,7 @@ controller: registry: quay.io # -- Registry to use for the controller repository: argoproj/workflow-controller - # -- Overrides the image tag whose default is the chart appVersion. + # -- Image tag for the workflow controller. Defaults to `.Values.images.tag`. tag: "" # -- parallelism dictates how many workflows can be running at the same time parallelism: @@ -280,7 +282,7 @@ executor: registry: quay.io # -- Repository to use for the Workflow Executors repository: argoproj/argoexec - # -- Overrides the image tag whose default is the chart appVersion. + # -- Image tag for the workflow executor. Defaults to `.Values.images.tag`. tag: "" # -- Resource limits and requests for the Workflow Executors resources: {} @@ -302,7 +304,7 @@ server: registry: quay.io # -- Repository to use for the server repository: argoproj/argocli - # -- Overrides the image tag whose default is the chart appVersion. + # -- Image tag for the Argo Workflows server. Defaults to `.Values.images.tag`. tag: "" # -- optional map of annotations to be applied to the ui Deployment deploymentAnnotations: {}