mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
* Add lifecycle hooks option for keycloak container Signed-off-by: radu mazilu <radumazi2@gmail.com> * pr changes Signed-off-by: radu mazilu <radumazi2@gmail.com> * Update statefulset.yaml Signed-off-by: Reinhard Nägele <unguiculus@gmail.com> * Update Chart.yaml Signed-off-by: Reinhard Nägele <unguiculus@gmail.com>
264 lines
6.5 KiB
YAML
264 lines
6.5 KiB
YAML
init:
|
|
image:
|
|
repository: alpine
|
|
tag: 3.8
|
|
pullPolicy: IfNotPresent
|
|
|
|
clusterDomain: cluster.local
|
|
|
|
keycloak:
|
|
replicas: 1
|
|
|
|
image:
|
|
repository: jboss/keycloak
|
|
tag: 5.0.0
|
|
pullPolicy: IfNotPresent
|
|
|
|
## Optionally specify an array of imagePullSecrets.
|
|
## Secrets must be manually created in the namespace.
|
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
|
##
|
|
pullSecrets: []
|
|
# - myRegistrKeySecretName
|
|
|
|
hostAliases: []
|
|
# - ip: "1.2.3.4"
|
|
# hostnames:
|
|
# - "my.host.com"
|
|
|
|
securityContext:
|
|
runAsUser: 1000
|
|
fsGroup: 1000
|
|
runAsNonRoot: true
|
|
|
|
## The path keycloak will be served from. To serve keycloak from the root path, use two quotes (e.g. "").
|
|
basepath: auth
|
|
|
|
## Additional init containers, e. g. for providing custom themes
|
|
extraInitContainers: |
|
|
|
|
## Additional sidecar containers, e. g. for a database proxy, such as Google's cloudsql-proxy
|
|
extraContainers: |
|
|
|
|
## Custom script that is run before Keycloak is started.
|
|
preStartScript:
|
|
|
|
## lifecycleHooks defines the container lifecycle hooks
|
|
lifecycleHooks: |
|
|
# postStart:
|
|
# exec:
|
|
# command: ["/bin/sh", "-c", "ls"]
|
|
|
|
## Additional arguments to start command e.g. -Dkeycloak.import= to load a realm
|
|
extraArgs: ""
|
|
|
|
## Username for the initial Keycloak admin user
|
|
username: keycloak
|
|
|
|
## Password for the initial Keycloak admin user. Applicable only if existingSecret is not set.
|
|
## If not set, a random 10 characters password will be used
|
|
password: ""
|
|
|
|
# Specifies an existing secret to be used for the admin password
|
|
existingSecret: ""
|
|
|
|
# The key in the existing secret that stores the password
|
|
existingSecretKey: password
|
|
|
|
## Allows the specification of additional environment variables for Keycloak
|
|
extraEnv: |
|
|
# - name: KEYCLOAK_LOGLEVEL
|
|
# value: DEBUG
|
|
# - name: WILDFLY_LOGLEVEL
|
|
# value: DEBUG
|
|
# - name: CACHE_OWNERS
|
|
# value: "2"
|
|
# - name: DB_QUERY_TIMEOUT
|
|
# value: "60"
|
|
# - name: DB_VALIDATE_ON_MATCH
|
|
# value: true
|
|
# - name: DB_USE_CAST_FAIL
|
|
# value: false
|
|
|
|
affinity: |
|
|
podAntiAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
- labelSelector:
|
|
matchLabels:
|
|
app: {{ template "keycloak.name" . }}
|
|
release: "{{ .Release.Name }}"
|
|
matchExpressions:
|
|
- key: role
|
|
operator: NotIn
|
|
values:
|
|
- test
|
|
topologyKey: kubernetes.io/hostname
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 100
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app: {{ template "keycloak.name" . }}
|
|
release: "{{ .Release.Name }}"
|
|
matchExpressions:
|
|
- key: role
|
|
operator: NotIn
|
|
values:
|
|
- test
|
|
topologyKey: failure-domain.beta.kubernetes.io/zone
|
|
|
|
nodeSelector: {}
|
|
priorityClassName: ""
|
|
tolerations: []
|
|
|
|
## Additional pod labels
|
|
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
|
podLabels: {}
|
|
|
|
## Extra Annotations to be added to pod
|
|
podAnnotations: {}
|
|
|
|
livenessProbe:
|
|
initialDelaySeconds: 120
|
|
timeoutSeconds: 5
|
|
readinessProbe:
|
|
initialDelaySeconds: 30
|
|
timeoutSeconds: 1
|
|
|
|
resources: {}
|
|
# limits:
|
|
# cpu: "100m"
|
|
# memory: "1024Mi"
|
|
# requests:
|
|
# cpu: "100m"
|
|
# memory: "1024Mi"
|
|
|
|
## WildFly CLI configurations. They all end up in the file 'keycloak.cli' configured in the configmap which is
|
|
## executed on server startup.
|
|
cli:
|
|
nodeIdentifier: |
|
|
{{ .Files.Get "scripts/node-identifier.cli" }}
|
|
|
|
logging: |
|
|
{{ .Files.Get "scripts/logging.cli" }}
|
|
|
|
reverseProxy: |
|
|
{{ .Files.Get "scripts/reverse-proxy.cli" }}
|
|
|
|
ha: |
|
|
{{ .Files.Get "scripts/ha.cli" }}
|
|
|
|
datasource: |
|
|
{{ .Files.Get "scripts/datasource.cli" }}
|
|
|
|
# Custom CLI script
|
|
custom: |
|
|
|
|
## Add additional volumes and mounts, e. g. for custom themes
|
|
extraVolumes: |
|
|
extraVolumeMounts: |
|
|
|
|
## Add additional ports, eg. for custom admin console
|
|
extraPorts: |
|
|
|
|
podDisruptionBudget: {}
|
|
# maxUnavailable: 1
|
|
# minAvailable: 1
|
|
|
|
service:
|
|
annotations: {}
|
|
# service.beta.kubernetes.io/aws-load-balancer-internal: "0.0.0.0/0"
|
|
|
|
labels: {}
|
|
# key: value
|
|
|
|
## ServiceType
|
|
## ref: https://kubernetes.io/docs/user-guide/services/#publishing-services---service-types
|
|
type: ClusterIP
|
|
|
|
## Optional static port assignment for service type NodePort.
|
|
# nodePort: 30000
|
|
|
|
port: 80
|
|
|
|
# Optional: jGroups port for high availability clustering
|
|
jgroupsPort: 7600
|
|
|
|
## Ingress configuration.
|
|
## ref: https://kubernetes.io/docs/user-guide/ingress/
|
|
ingress:
|
|
enabled: false
|
|
path: /
|
|
|
|
annotations: {}
|
|
# kubernetes.io/ingress.class: nginx
|
|
# kubernetes.io/tls-acme: "true"
|
|
# ingress.kubernetes.io/affinity: cookie
|
|
|
|
## List of hosts for the ingress
|
|
hosts:
|
|
- keycloak.example.com
|
|
|
|
## TLS configuration
|
|
tls: []
|
|
# - hosts:
|
|
# - keycloak.example.com
|
|
# secretName: tls-keycloak
|
|
|
|
## Persistence configuration
|
|
persistence:
|
|
# If true, the Postgres chart is deployed
|
|
deployPostgres: false
|
|
|
|
# The database vendor. Can be either "postgres", "mysql", "mariadb", or "h2"
|
|
dbVendor: h2
|
|
|
|
## The following values only apply if "deployPostgres" is set to "false"
|
|
|
|
# Specifies an existing secret to be used for the database password
|
|
existingSecret: ""
|
|
|
|
# The key in the existing secret that stores the password
|
|
existingSecretKey: password
|
|
|
|
dbName: keycloak
|
|
dbHost: mykeycloak
|
|
dbPort: 5432
|
|
dbUser: keycloak
|
|
|
|
# Only used if no existing secret is specified. In this case a new secret is created
|
|
dbPassword: ""
|
|
|
|
postgresql:
|
|
### PostgreSQL User to create.
|
|
##
|
|
postgresUser: keycloak
|
|
|
|
## PostgreSQL Password for the new user.
|
|
## If not set, a random 10 characters password will be used.
|
|
##
|
|
postgresPassword: ""
|
|
|
|
## PostgreSQL Database to create.
|
|
##
|
|
postgresDatabase: keycloak
|
|
|
|
## Persistent Volume Storage configuration.
|
|
## ref: https://kubernetes.io/docs/user-guide/persistent-volumes
|
|
##
|
|
persistence:
|
|
## Enable PostgreSQL persistence using Persistent Volume Claims.
|
|
##
|
|
enabled: false
|
|
|
|
test:
|
|
enabled: true
|
|
image:
|
|
repository: unguiculus/docker-python3-phantomjs-selenium
|
|
tag: v1
|
|
pullPolicy: IfNotPresent
|
|
securityContext:
|
|
runAsUser: 1000
|
|
fsGroup: 1000
|
|
runAsNonRoot: true
|