chore: Add feature flag for enabling StatefulSet

Signed-off-by: seanson@users.noreply.github.com <seanson@users.noreply.github.com>
This commit is contained in:
seanson@users.noreply.github.com 2020-12-15 16:56:47 +11:00
parent 380606de8e
commit 0581868379
No known key found for this signature in database
GPG key ID: 356A1B69190BEB01
2 changed files with 40 additions and 32 deletions

View file

@ -1,6 +1,6 @@
{{- $redisHa := (index .Values "redis-ha") -}} {{- $redisHa := (index .Values "redis-ha") -}}
apiVersion: apps/v1 apiVersion: apps/v1
kind: StatefulSet kind: {{ .Values.controller.enableStatefulSet | ternary "StatefulSet" "Deployment" }}
metadata: metadata:
name: {{ template "argo-cd.controller.fullname" . }} name: {{ template "argo-cd.controller.fullname" . }}
labels: labels:

View file

@ -34,6 +34,9 @@ controller:
# If changing the number of replicas you must pass the number as ARGOCD_CONTROLLER_REPLICAS as an environment variable # If changing the number of replicas you must pass the number as ARGOCD_CONTROLLER_REPLICAS as an environment variable
replicas: 1 replicas: 1
# Deploy the application as a StatefulSet instead of a Deployment, this is required for HA capability.
# This is a feature flag that will become the default in chart version 3.x
enableStatefulSet: false
## Argo controller commandline flags ## Argo controller commandline flags
args: args:
@ -52,10 +55,10 @@ controller:
## Environment variables to pass to argocd-controller ## Environment variables to pass to argocd-controller
## ##
env: [] env:
# - name: "ARGOCD_CONTROLLER_REPLICAS" []
# value: "" # - name: "ARGOCD_CONTROLLER_REPLICAS"
# value: ""
## Annotations to be added to controller pods ## Annotations to be added to controller pods
## ##
@ -66,7 +69,8 @@ controller:
podLabels: {} podLabels: {}
## Labels to set container specific security contexts ## Labels to set container specific security contexts
containerSecurityContext: {} containerSecurityContext:
{}
# capabilities: # capabilities:
# drop: # drop:
# - all # - all
@ -242,12 +246,12 @@ dex:
priorityClassName: "" priorityClassName: ""
## Labels to set container specific security contexts ## Labels to set container specific security contexts
containerSecurityContext: {} containerSecurityContext:
{}
# capabilities: # capabilities:
# drop: # drop:
# - all # - all
resources: {} resources: {}
# limits: # limits:
# cpu: 50m # cpu: 50m
@ -291,7 +295,8 @@ redis:
priorityClassName: "" priorityClassName: ""
## Labels to set container specific security contexts ## Labels to set container specific security contexts
containerSecurityContext: {} containerSecurityContext:
{}
# capabilities: # capabilities:
# drop: # drop:
# - all # - all
@ -326,7 +331,7 @@ redis-ha:
redis: redis:
masterGroupName: argocd masterGroupName: argocd
config: config:
save: "\"\"" save: '""'
haproxy: haproxy:
enabled: true enabled: true
metrics: metrics:
@ -409,7 +414,8 @@ server:
priorityClassName: "" priorityClassName: ""
## Labels to set container specific security contexts ## Labels to set container specific security contexts
containerSecurityContext: {} containerSecurityContext:
{}
# capabilities: # capabilities:
# drop: # drop:
# - all # - all
@ -759,7 +765,8 @@ repoServer:
priorityClassName: "" priorityClassName: ""
## Labels to set container specific security contexts ## Labels to set container specific security contexts
containerSecurityContext: {} containerSecurityContext:
{}
# capabilities: # capabilities:
# drop: # drop:
# - all # - all
@ -815,24 +822,24 @@ repoServer:
## Use init containers to configure custom tooling ## Use init containers to configure custom tooling
## https://argoproj.github.io/argo-cd/operator-manual/custom_tools/ ## https://argoproj.github.io/argo-cd/operator-manual/custom_tools/
## When using the volumes & volumeMounts section bellow, please comment out those above. ## When using the volumes & volumeMounts section bellow, please comment out those above.
# volumes: # volumes:
# - name: custom-tools # - name: custom-tools
# emptyDir: {} # emptyDir: {}
# #
# initContainers: # initContainers:
# - name: download-tools # - name: download-tools
# image: alpine:3.8 # image: alpine:3.8
# command: [sh, -c] # command: [sh, -c]
# args: # args:
# - wget -qO- https://get.helm.sh/helm-v2.16.1-linux-amd64.tar.gz | tar -xvzf - && # - wget -qO- https://get.helm.sh/helm-v2.16.1-linux-amd64.tar.gz | tar -xvzf - &&
# mv linux-amd64/helm /custom-tools/ # mv linux-amd64/helm /custom-tools/
# volumeMounts: # volumeMounts:
# - mountPath: /custom-tools # - mountPath: /custom-tools
# name: custom-tools # name: custom-tools
# volumeMounts: # volumeMounts:
# - mountPath: /usr/local/bin/helm # - mountPath: /usr/local/bin/helm
# name: custom-tools # name: custom-tools
# subPath: helm # subPath: helm
## Argo Configs ## Argo Configs
configs: configs:
@ -921,10 +928,11 @@ configs:
# Custom secrets. Useful for injecting SSO secrets into environment variables. # Custom secrets. Useful for injecting SSO secrets into environment variables.
# Ref: https://argoproj.github.io/argo-cd/operator-manual/sso/ # Ref: https://argoproj.github.io/argo-cd/operator-manual/sso/
# Note that all values must be non-empty. # Note that all values must be non-empty.
extra: {} extra:
{}
# LDAP_PASSWORD: "mypassword" # LDAP_PASSWORD: "mypassword"
# Argo TLS Data. # Argo TLS Data.
argocdServerTlsConfig: argocdServerTlsConfig:
{} {}
# key: # key: