The values.yaml file
The values.yaml
file is used to pass values into the Deploy helm chart. The file contains default parameters that you can override.
The values.yaml
file is typically located in the folder where you extracted the Deploy Helm chart zip file.
For more information on the values.yaml
, file see Values Files.
See the sample values.yaml file provided at the end of the topic, for more information.
Sample values.yaml file
Note: The sample values.yaml
file given below, is used to deploy the built-in single PostgreSQL database instance and RabbitMQ HA instance. If you plan on using your own database and RabbitMQ instances, you must modify the values.yaml
file accordingly.
# Default values for xl-deploy.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
# No. of XL-Deploy master and worker pods to run.
XldMasterCount: 3
XldWorkerCount: 3
## XL-Deploy image version
## Ref: https://hub.docker.com/r/xebialabs/xl-deploy/tags
ImageRepository: "xebialabs/xl-deploy"
ImageTag: "10.0"
## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest',set to 'IfNotPresent'
ImagePullPolicy: "Always"
## Secrets must be manually created in the namespace.
# ImagePullSecret: xlDeploy
## Ref: https://docs.openshift.com/container-platform/4.5/networking/routes/route-configuration.html
route:
Enabled: true
annotations:
haproxy.router.openshift.io/cookie_name: SESSION_XLD
haproxy.router.openshift.io/disable_cookies: "false"
haproxy.router.openshift.io/rewrite-target: /
path: /
hosts:
- app.example.com
## By default only Edge Termination is supported with Deploy.
## To configure SSL/TLS with Deploy uncomment the below tls section and provide the private key, certificate and optional caCertificate.
## The allowed values for insecureEdgeTerminationPolicy are: None or empty (for disabled), Allow or Redirect
## Ref: https://docs.openshift.com/container-platform/4.5/networking/routes/secured-routes.html
# tls:
# key: |-
# -----BEGIN PRIVATE KEY-----
# -----END PRIVATE KEY-----
# certificate: |-
# -----BEGIN CERTIFICATE-----
# -----END CERTIFICATE-----
# caCertificate: |-
# -----BEGIN CERTIFICATE-----
# -----END CERTIFICATE-----
# insecureEdgeTerminationPolicy: Redirect
# https://docs.xebialabs.com/v.9.8/deploy/docker/docker-environment-variables/#get-started
AdminPassword: admin
# Provide the admin password to be used
xldLicense:
# Convert xl-deploy.lic files content to base64 ( cat xl-deploy.lic | base64 -w 0 ) and put the output here
RepositoryKeystore:
# https://docs.xebialabs.com/v.9.8/deploy/how-to/update-the-xl-deploy-digital-certificate/#get-started
# Convert keystore.jks files content to base64 ( cat keystore.jks | base64 -w 0 ) and put the output here
KeystorePassphrase:
# Passphrase for keystore.jks file
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: 3
# memory: 3Gi
# requests:
# cpu: 0.7
# memory: 1700Mi
## Ref: https://github.com/bitnami/charts/blob/master/bitnami/postgresql/README.md
## Install postgresql chart. If you have an existing database deployment, set 'install' to 'false'.
postgresql:
install: true
postgresqlUsername: postgres
postgresqlPassword: "postgres"
postgresqlExtendedConf:
listenAddresses: "'*'"
maxConnections: "500"
initdbScriptsSecret: postgresql-init-sql-xld
service:
port: 5432
persistence:
enabled: true
storageClass: "aws-efs"
size: 50Gi
existingClaim:
resources: {}
# requests:
# memory: "1Gi"
# cpu: "250m"
# limits:
# memory: "2Gi"
# cpu: "1"
nodeSelector: {}
affinity: {}
tolerations: []
volumePermissions:
securityContext:
runAsUser: auto
securityContext:
enabled: false
containerSecurityContext:
enabled: false
shmVolume:
chmod:
enabled: false
## Ref: https://docs.xebialabs.com/v.9.7/deploy/how-to/configure-the-xl-deploy-sql-repository/#location-of-the-repository
## Ref: https://docs.xebialabs.com/v.9.7/deploy/docker/docker-environment-variables/
UseExistingDB:
Enabled: false
# If you want to use an existing database, change 'postgresql.install' to 'false'.
# Set 'UseExistingDB.Enabled' to 'true'.Uncomment the following lines and provide the values.
# XL_DB_URL:
# XL_DB_USERNAME:
# XL_DB_PASSWORD:
## Install rabbitmq chart. If you have an existing message queue deployment, set 'install' to 'false'.
## ref: https://github.com/helm/charts/blob/master/stable/rabbitmq-ha/README.md
rabbitmq-ha:
install: true
rabbitmqUsername: guest
rabbitmqPassword: "guest"
rabbitmqErlangCookie: DEPLOYRABBITMQCLUSTER
rabbitmqMemoryHighWatermark: 500MB
rabbitmqNodePort: 5672
extraPlugins: |
rabbitmq_shovel,
rabbitmq_shovel_management,
rabbitmq_federation,
rabbitmq_federation_management,
rabbitmq_jms_topic_exchange,
rabbitmq_management,
replicaCount: 3
rbac:
create: true
service:
type: ClusterIP
persistentVolume:
enabled: true
storageClass: "gp2"
size: 20Gi
annotations: {}
resources: {}
# requests:
# memory: "250Mi"
# cpu: "100m"
# limits:
# memory: "550Mi"
# cpu: "200m"
definitions:
policies: |-
{
"name": "ha-all",
"pattern": ".*",
"vhost": "/",
"definition": {
"ha-mode": "all",
"ha-sync-mode": "automatic",
"ha-sync-batch-size": 1
}
}
globalParameters: |-
{
"name": "cluster_name",
"value": ""
}
prometheus:
operator:
enabled: false
# Ref: https://docs.xebialabs.com/v.9.7/deploy/how-to/configure-task-queueing/#how-it-works
UseExistingMQ:
Enabled: false
# If you want to use a existing Message Queue, change the "rabbitmq-ha.install to false"
# Set 'UseExistingMQ.Enabled' to 'true'.Uncomment the following lines and provide the values.
# XLD_TASK_QUEUE_USERNAME:
# XLD_TASK_QUEUE_PASSWORD:
# XLD_TASK_QUEUE_URL:
# XLD_TASK_QUEUE_DRIVER_CLASS_NAME:
## Configure extra options for liveness and readiness probes
HealthProbes: true
HealthProbesLivenessTimeout: 120
HealthProbesReadinessTimeout: 120
HealthProbeFailureThreshold: 12
HealthPeriodScans: 10
nodeSelector: {}
tolerations: []
## Affinity and anti-affinity
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
affinity: {}
## XL Deploy data Persistent Volume for 'XL Deploy export'
## If "Persistence.Enabled" set to "false", it will use hostPath.
Persistence:
Enabled: true
## Choose storage class provided by your cloud provider, example "ssd" on GKE, AWS and OpenStack
StorageClass: "aws-efs"
Annotations: {}
AccessMode: ReadWriteOnce
XldExportPvcSize: 10Gi
XldWorkPvcSize: 5Gi