diff --git a/charts/argo-rollouts/Chart.yaml b/charts/argo-rollouts/Chart.yaml index a879e08c..ca065a3e 100644 --- a/charts/argo-rollouts/Chart.yaml +++ b/charts/argo-rollouts/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 -appVersion: v1.6.4 +appVersion: v1.6.6 description: A Helm chart for Argo Rollouts name: argo-rollouts -version: 2.34.0 +version: 2.35.0 home: https://github.com/argoproj/argo-helm icon: https://argoproj.github.io/argo-rollouts/assets/logo.png keywords: @@ -18,5 +18,5 @@ annotations: fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252 url: https://argoproj.github.io/argo-helm/pgp_keys.asc artifacthub.io/changes: | - - kind: changed - description: Allow setting log config for rollouts dashboard + - kind: added + description: Allow configuring deployment strategy for the Argo Rollouts controller diff --git a/charts/argo-rollouts/README.md b/charts/argo-rollouts/README.md index 23f25df7..74da9386 100644 --- a/charts/argo-rollouts/README.md +++ b/charts/argo-rollouts/README.md @@ -80,6 +80,9 @@ For full list of changes please check ArtifactHub [changelog]. | controller.containerPorts.healthz | int | `8080` | Healthz container port | | controller.containerPorts.metrics | int | `8090` | Metrics container port | | controller.createClusterRole | bool | `true` | flag to enable creation of cluster controller role (requires cluster RBAC) | +| controller.deploymentStrategy.type | string | `""` | Deployment strategy type. Options: "Recreate" or "RollingUpdate". If not specified, defaults to "RollingUpdate". | +| controller.deploymentStrategy.rollingUpdate.maxSurge | int or string | `0` | Maximum number or percentage of additional pods that can be created during an update. | +| controller.deploymentStrategy.rollingUpdate.maxUnavailable | int or string | `0` | Maximum number or percentage of pods that can be unavailable during an update. | | controller.deploymentAnnotations | object | `{}` | Annotations to be added to the controller deployment | | controller.extraArgs | list | `[]` | Additional command line arguments to pass to rollouts-controller. A list of flags. | | controller.extraContainers | list | `[]` | Literal yaml for extra containers to be added to controller deployment. | diff --git a/charts/argo-rollouts/templates/controller/deployment.yaml b/charts/argo-rollouts/templates/controller/deployment.yaml index 9b8f456e..e05e30b9 100644 --- a/charts/argo-rollouts/templates/controller/deployment.yaml +++ b/charts/argo-rollouts/templates/controller/deployment.yaml @@ -17,8 +17,13 @@ spec: matchLabels: app.kubernetes.io/component: {{ .Values.controller.component }} {{- include "argo-rollouts.selectorLabels" . | nindent 6 }} + {{- if .Values.controller.deploymentStrategy }} strategy: - type: Recreate + {{- toYaml .Values.controller.deploymentStrategy | nindent 4 }} + {{- else }} + strategy: + type: RollingUpdate + {{- end }} replicas: {{ .Values.controller.replicas }} template: metadata: diff --git a/charts/argo-rollouts/values.yaml b/charts/argo-rollouts/values.yaml index e7a5f133..df6898bf 100644 --- a/charts/argo-rollouts/values.yaml +++ b/charts/argo-rollouts/values.yaml @@ -45,6 +45,14 @@ global: controller: # -- Value of label `app.kubernetes.io/component` component: rollouts-controller + + # -- Configuration for the deployment strategy defaults to RollingUpdate + deploymentStrategy: {} + # type: RollingUpdate + # rollingUpdate: + # maxSurge: 25% + # maxUnavailable: 25% + # -- Annotations to be added to the controller deployment deploymentAnnotations: {} # -- Annotations to be added to application controller pods