Skip to content

QMigrator Helm Values Reference

Note

Properties use dot-notation for nested keys.

Global Parameters

Parameter Description Default
nameOverride String to partially override name template (will maintain the release name) ""
clusterDomain Kubernetes Cluster Domain "cluster.local"
global.imagePullSecrets Global image pull secrets []
global.projectId ID of project null
global.projectName Name of project null

Image Configuration

All component images are centrally managed in the images section:

App Image

Parameter Description Default
images.app.registry App image registry qmigrator.azurecr.io
images.app.image App image name qui
images.app.tag App image tag ora2pg-3030-v4.0.0.1979
images.app.pullPolicy App image pull policy IfNotPresent

Engine Image

Parameter Description Default
images.eng.registry Engine image registry qmigrator.azurecr.io
images.eng.image Engine image name qapi
images.eng.tag Engine image tag ora2pg-3030-v4.0.0.929
images.eng.pullPolicy Engine image pull policy IfNotPresent

Database Image

Parameter Description Default
images.db.registry Database image registry qmigrator.azurecr.io
images.db.image Database image name postgres
images.db.tag Database image tag "16"
images.db.pullPolicy Database image pull policy IfNotPresent

DB Job Image

Parameter Description Default
images.dbJob.registry DB Job image registry qmigrator.azurecr.io
images.dbJob.image DB Job image name qpdb
images.dbJob.tag DB Job image tag ora2pg-v4.0.1.126
images.dbJob.pullPolicy DB Job image pull policy IfNotPresent

Cache Image

Parameter Description Default
images.msg.registry Cache image registry qmigrator.azurecr.io
images.msg.image Cache image name eqalpha/keydb
images.msg.tag Cache image tag alpine_x86_64_v6.3.4
images.msg.pullPolicy Cache image pull policy IfNotPresent

Assessment Image

Parameter Description Default
images.asses.registry Assessment image registry qmigrator.azurecr.io
images.asses.image Assessment image name qasmt
images.asses.tag Assessment image tag oracle_postgres-3032-v4.0.0.811
images.asses.pullPolicy Assessment image pull policy IfNotPresent

Conversion Image

Parameter Description Default
images.convs.registry Conversion image registry qmigrator.azurecr.io
images.convs.image Conversion image name qconv
images.convs.tag Conversion image tag oracle_postgres-3032-v4.0.0.812
images.convs.pullPolicy Conversion image pull policy IfNotPresent

Migration Image

Parameter Description Default
images.migrt.registry Migration image registry qmigrator.azurecr.io
images.migrt.image Migration image name qdmgr
images.migrt.tag Migration image tag oracle_postgres-3032-v4.0.0.813
images.migrt.pullPolicy Migration image pull policy IfNotPresent

Airflow Image

Parameter Description Default
images.airflow.registry Airflow image registry qmigrator.azurecr.io
images.airflow.image Airflow image name qair
images.airflow.tag Airflow image tag ora2pg-2.10.5-312
images.airflow.pullPolicy Airflow image pull policy IfNotPresent

Secret Configuration

Parameter Description Default
secret.create Create project secret true
secret.secretName Name for project secret "" (auto: qmig-secret)
secret.annotations Annotations for secrets {}
secret.labels Labels for secrets {}
secret.data.POSTGRES_PASSWORD Admin Password for metadata DB null (required)
secret.data.REDIS_PASSWORD Admin Password for Cache null (required)

Image Credentials

Parameter Description Default
imageCredentials.create Create docker pull secret true
imageCredentials.secretName Name for docker secret "" (auto: qmig-docker)
imageCredentials.annotations Annotations for docker secret {}
imageCredentials.labels Labels for docker secret {}
imageCredentials.data.registry Server/Registry host qmigrator.azurecr.io
imageCredentials.data.username Username for given docker host null (required)
imageCredentials.data.password Password for given docker host null (required)

Shared Persistent Volume

Parameter Description Default
shared.persistentVolume.enabled If false, use emptyDir true
shared.persistentVolume.accessModes How should the volume be accessible [ReadWriteMany]
shared.persistentVolume.annotations Persistent Volume Claim annotations {}
shared.persistentVolume.labels Labels for persistentVolume {}
shared.persistentVolume.existingClaim Name of PVC created manually before volume ""
shared.persistentVolume.subPath Subdirectory of data Persistent Volume to mount "datas"
shared.persistentVolume.size Persistent Volume size 4Gi
shared.persistentVolume.storageClass Persistent Volume Storage Class "" (default from K8s)
shared.persistentVolume.volumeBindingMode Persistent Volume Binding Mode "" (default from K8s)
shared.folderPath.extraSubpath Subpath for Extra folder in a shared volume "extra"
shared.folderPath.dagsSubpath Subpath for Dag's folder of airflow in a shared volume "dags"
shared.folderPath.logsSubpath Subpath for logs folder of airflow in a shared volume "logs"

Gateway API

Parameter Description Default
gateway.name Gateway name ""
gateway.enabled Enable create gateway false
gateway.gatewayClassName GatewayClass that will be used to implement the gateway "nginx"
gateway.annotations Additional annotations for the gateway resource {}
gateway.labels Add labels for the gateway {}
gateway.listeners Add listeners for the gateway See values.yaml

HTTP Routes

Parameter Description Default
httpRoutes.name HTTP route name ""
httpRoutes.enabled Create the routes on gateway false
httpRoutes.gatewayClassName GatewayClass name "nginx"
httpRoutes.annotations Additional annotations for the httpRoutes {}
httpRoutes.labels Add labels for the httpRoutes {}
httpRoutes.parentRefs Define route parents to gateway []
httpRoutes.hostnames Hostnames in routes record []
httpRoutes.redirectHttp Create redirect filter http to https false

Service Account & RBAC

Parameter Description Default
serviceAccount.create Enable creation of ServiceAccount true
serviceAccount.name The name of the ServiceAccount to use "" (auto: qmig-opr)
serviceAccount.annotations Additional custom annotations for the ServiceAccount {}
serviceAccount.labels Labels for ServiceAccount {}
rbac.create Create Role and RoleBinding true

App Component

Parameter Description Default
app.name Name for App component "app"
app.replicas Number of App Components replicas 1
app.imagePullSecrets App component pull secrets []
app.readinessProbe.enabled Enable readinessProbe on App Component containers "true"
app.livenessProbe.enabled Enable livenessProbe on App Component containers "true"
app.annotations Add extra annotations to the App Component {}
app.podAnnotations Add extra Pod annotations to the App Component pods {}
app.securityContexts.pod Default security context for App Component pods {}
app.securityContexts.container Default security context for App Component containers {}
app.tolerations Tolerations for App Component pods assignment []
app.affinity Affinity for App Component pods assignment {}
app.nodeSelector Node labels for App Component pods assignment {}
app.labels Labels for App Component {}
app.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
app.extraVolumes Optionally specify an extra list of additional volumes []
app.env Add extra environment variables for the App component pods []
app.envFrom Add extra environment variables from ConfigMaps or Secrets for the App pods []

App Service

Parameter Description Default
app.service.annotations Additional custom annotations for App Component service {}
app.service.type App Component service type ClusterIP
app.service.port App Component service HTTP port 4200

App Resources

Parameter Description Default
app.resources.requests.cpu CPU request 100m
app.resources.requests.memory Memory request 200Mi
app.resources.limits.cpu CPU limit 200m
app.resources.limits.memory Memory limit 400Mi

App Autoscaling

Parameter Description Default
app.autoscaling.enabled Whether to enable horizontal pod autoscaler false
app.autoscaling.minReplicas Configure a minimum amount of pods 1
app.autoscaling.maxReplicas Configure a maximum amount of pods 2
app.autoscaling.targetCPUUtilizationPercentage Define the CPU target to trigger the scaling actions 80
app.autoscaling.targetMemoryUtilizationPercentage Define the memory target to trigger the scaling actions 80

Engine Component

Parameter Description Default
eng.name Name for Engine component "eng"
eng.replicas Number of Engine component replicas 1
eng.imagePullSecrets Engine component pull secrets []
eng.readinessProbe.enabled Enable readinessProbe on Engine component containers "true"
eng.livenessProbe.enabled Enable livenessProbe on Engine component containers "true"
eng.annotations Add extra annotations to the Engine component {}
eng.podAnnotations Add extra Pod annotations to the Engine component pods {}
eng.securityContexts.pod Default security context for Engine component pods {}
eng.securityContexts.container Default security context for Engine component containers {}
eng.tolerations Tolerations for Engine component pods assignment []
eng.affinity Affinity for Engine component pods assignment {}
eng.nodeSelector Node labels for Engine component pods assignment {}
eng.labels Labels for Engine Component {}
eng.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
eng.extraVolumes Optionally specify an extra list of additional volumes []
eng.env Add extra environment variables for the Engine component pods [{name: TZ, value: "GMT"}]
eng.envFrom Add extra environment variables from ConfigMaps or Secrets for the Engine pods []

Engine Service

Parameter Description Default
eng.service.annotations Additional custom annotations for Engine component service {}
eng.service.type Engine component service type ClusterIP
eng.service.port Engine component service HTTP port 8080

Engine Resources

Parameter Description Default
eng.resources.requests.cpu CPU request 400m
eng.resources.requests.memory Memory request 400Mi
eng.resources.limits.cpu CPU limit 800m
eng.resources.limits.memory Memory limit 800Mi

Engine Autoscaling

Parameter Description Default
eng.autoscaling.enabled Whether to enable horizontal pod autoscaler false
eng.autoscaling.minReplicas Configure a minimum amount of pods 1
eng.autoscaling.maxReplicas Configure a maximum amount of pods 2
eng.autoscaling.targetCPUUtilizationPercentage Define the CPU target to trigger the scaling actions 80
eng.autoscaling.targetMemoryUtilizationPercentage Define the memory target to trigger the scaling actions 80

Database Component

Parameter Description Default
db.enabled Provision the postgres deployment true
db.dbConnection.hostname Provide the hostname if used external connection ""
db.dbConnection.username Username for connection to DB "postgres"
db.dbConnection.port Port for connection to DB "5432"
db.name Name for DB component "db"
db.replicas Number of DB component replicas 1
db.strategy Update strategy for DB component pods "Recreate"
db.imagePullSecrets DB component pull secrets []
db.command Command to override DB component containers []
db.args Args to override DB component containers []
db.dbshConfig.stringOverride Override shell script to be run on the initial time of DB ""
db.annotations Add extra annotations to the DB component {}
db.podAnnotations Add extra Pod annotations to the DB component pods {}
db.securityContexts.pod Default security context for DB Component pods {}
db.securityContexts.container Default security context for DB Component containers {}
db.tolerations Tolerations for DB component pods assignment []
db.affinity Affinity for DB component pods assignment {}
db.nodeSelector Node labels for DB component pods assignment {}
db.labels Labels for DB Component {}
db.env Add extra environment variables for the DB component pods [{name: JDBC_PARAMS, value: "sslfactory=org.postgresql.ssl.NonValidatingFactory"}]
db.envFrom Add extra environment variables from ConfigMaps or Secrets for the DB pods []
db.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
db.extraVolumes Optionally specify an extra list of additional volumes []

Database Persistent Volume

Parameter Description Default
db.persistentVolume.enabled If false, use emptyDir true
db.persistentVolume.accessModes How should the volume accessible [ReadWriteOnce]
db.persistentVolume.annotations Persistent Volume Claim annotations {}
db.persistentVolume.existingClaim Name of PVC created manually before volume ""
db.persistentVolume.subPath Subdirectory of data Persistent Volume to mount ""
db.persistentVolume.size Persistent Volume size 4Gi
db.persistentVolume.storageClass Persistent Volume Storage Class "" (default from K8s)
db.persistentVolume.volumeBindingMode Persistent Volume Binding Mode "" (default from K8s)

Database Service

Parameter Description Default
db.service.annotations Additional custom annotations for DB component service {}
db.service.type DB component service type ClusterIP
db.service.port DB component service port 5432

Database Resources

Parameter Description Default
db.resources.requests.cpu CPU request 200m
db.resources.requests.memory Memory request 500Mi
db.resources.limits.cpu CPU limit 400m
db.resources.limits.memory Memory limit 1000Mi

Cache Component

Parameter Description Default
msg.name Name for Cache component "msg"
msg.replicas Number of Cache component replicas 1
msg.strategy Update strategy for Cache component pods "Recreate"
msg.imagePullSecrets Cache component pull secrets []
msg.args Args to override Cache component containers ["/etc/keydb/keydb.conf"]
msg.keyDBConfig.stringOverride Override shell script to be run on the initial time of Cache ""
msg.annotations Add extra annotations to the Cache component {}
msg.podAnnotations Add extra Pod annotations to the Cache component pods {}
msg.securityContexts.pod Default security context for Cache Component pods {}
msg.securityContexts.container Default security context for Cache Component containers {}
msg.tolerations Tolerations for Cache component pods assignment []
msg.affinity Affinity for Cache component pods assignment {}
msg.nodeSelector Node labels for Cache component pods assignment {}
msg.labels Labels for Cache Component {}
msg.master.enabled Run Cache component as master node "true"
msg.auth.enabled Enabled authentication with password on Cache component true
msg.env Add extra environment variables for the Cache component pods []
msg.envFrom Add extra environment variables from ConfigMaps or Secrets for the Cache pods []
msg.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
msg.extraVolumes Optionally specify an extra list of additional volumes []

Cache Persistent Volume

Parameter Description Default
msg.persistentVolume.enabled If false, use emptyDir true
msg.persistentVolume.accessModes How should the volume be accessible [ReadWriteOnce]
msg.persistentVolume.annotations Persistent Volume Claim annotations {}
msg.persistentVolume.existingClaim Name of PVC created manually before volume ""
msg.persistentVolume.subPath Subdirectory of data Persistent Volume to mount ""
msg.persistentVolume.size Persistent Volume size 4Gi
msg.persistentVolume.storageClass Persistent Volume Storage Class "" (default from K8s)
msg.persistentVolume.volumeBindingMode Persistent Volume Binding Mode "" (default from K8s)

Cache Service

Parameter Description Default
msg.service.annotations Additional custom annotations for Cache component service {}
msg.service.type Cache component service type ClusterIP
msg.service.port Cache component service port 6379

Cache Resources

Parameter Description Default
msg.resources.requests.cpu CPU request 100m
msg.resources.requests.memory Memory request 200Mi
msg.resources.limits.cpu CPU limit 200m
msg.resources.limits.memory Memory limit 300Mi

Assessment Job

Parameter Description Default
asses.enabled Enable Assessment true
asses.imagePullSecrets Assessment pull secrets []
asses.annotations Add extra annotations to the Assessment {}
asses.podAnnotations Add extra Pod annotations to the Assessment pods {}
asses.securityContexts.pod Default security context for Assessment pods {}
asses.securityContexts.container Default security context for Assessment containers {}
asses.tolerations Tolerations for Assessment pods assignment []
asses.affinity Affinity for Assessment pods assignment {}
asses.nodeSelector Node labels for Assessment pods assignment {}
asses.labels Labels for Assessment {}
asses.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
asses.failedJobsHistoryLimit How many failed executions to track in history 2
asses.successfulJobsHistoryLimit How many successful executions to track in history 2
asses.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
asses.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
asses.restartPolicy Restart the container keeping the same Pod in Node Never
asses.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
asses.backoffLimit Each pod failure is counted towards the specified limit 0
asses.env Add extra environment variables for the Assessment pods []
asses.envFrom Add extra environment variables from ConfigMaps or Secrets for the Assessment pods []
asses.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
asses.extraVolumes Optionally specify an extra list of additional volumes []

Assessment Resources

Parameter Description Default
asses.resources.requests.cpu CPU request 150m
asses.resources.requests.memory Memory request 300Mi
asses.resources.limits.cpu CPU limit 300m
asses.resources.limits.memory Memory limit 600Mi

Conversion Job

Parameter Description Default
convs.enabled Enable Conversion true
convs.imagePullSecrets Conversion pull secrets []
convs.annotations Add extra annotations to the Conversion {}
convs.podAnnotations Add extra Pod annotations to the Conversion pods {}
convs.securityContexts.pod Default security context for Conversion pods {}
convs.securityContexts.container Default security context for Conversion containers {}
convs.tolerations Tolerations for Conversion pods assignment []
convs.affinity Affinity for Conversion pods assignment {}
convs.nodeSelector Node labels for Conversion pods assignment {}
convs.labels Labels for Conversion {}
convs.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
convs.failedJobsHistoryLimit How many failed executions to track in history 2
convs.successfulJobsHistoryLimit How many successful executions to track in history 2
convs.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
convs.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
convs.restartPolicy Restart the container keeping the same Pod in Node Never
convs.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
convs.backoffLimit Each pod failure is counted towards the specified limit 0
convs.env Add extra environment variables for the Conversion pods []
convs.envFrom Add extra environment variables from ConfigMaps or Secrets for the Conversion pods []
convs.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
convs.extraVolumes Optionally specify an extra list of additional volumes []

Conversion Resources

Parameter Description Default
convs.resources.requests.cpu CPU request 150m
convs.resources.requests.memory Memory request 300Mi
convs.resources.limits.cpu CPU limit 300m
convs.resources.limits.memory Memory limit 600Mi

Migration Job

Parameter Description Default
migrt.enabled Enable Migration true
migrt.imagePullSecrets Migration pull secrets []
migrt.annotations Add extra annotations to the Migration {}
migrt.podAnnotations Add extra Pod annotations to the Migration pods {}
migrt.securityContexts.pod Default security context for Migration pods {}
migrt.securityContexts.container Default security context for Migration containers {}
migrt.tolerations Tolerations for Migration pods assignment []
migrt.affinity Affinity for Migration pods assignment {}
migrt.nodeSelector Node labels for Migration pods assignment {}
migrt.labels Labels for Migration {}
migrt.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
migrt.failedJobsHistoryLimit How many failed executions to track in history 2
migrt.successfulJobsHistoryLimit How many successful executions to track in history 2
migrt.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
migrt.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
migrt.restartPolicy Restart the container keeping the same Pod in Node Never
migrt.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
migrt.backoffLimit Each pod failure is counted towards the specified limit 0
migrt.env Add extra environment variables for the Migration pods []
migrt.envFrom Add extra environment variables from ConfigMaps or Secrets for the Migration pods []
migrt.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
migrt.extraVolumes Optionally specify an extra list of additional volumes []

Migration Resources

Parameter Description Default
migrt.resources.requests.cpu CPU request 150m
migrt.resources.requests.memory Memory request 300Mi
migrt.resources.limits.cpu CPU limit 300m
migrt.resources.limits.memory Memory limit 600Mi

Testing Job

Parameter Description Default
tests.enabled Enable Testing false
tests.image.registry Testing image registry qmigrator.azurecr.io
tests.image.image Testing image webtestotp
tests.image.pullPolicy Testing pull policy IfNotPresent
tests.image.tag Testing image tag "971"
tests.imagePullSecrets Testing pull secrets []
tests.annotations Add extra annotations to the Testing {}
tests.podAnnotations Add extra Pod annotations to the Testing pods {}
tests.securityContexts.pod Default security context for Testing pods {}
tests.securityContexts.container Default security context for Testing containers {}
tests.tolerations Tolerations for Testing pods assignment []
tests.affinity Affinity for Testing pods assignment {}
tests.nodeSelector Node labels for Testing pods assignment {}
tests.labels Labels for Testing {}
tests.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
tests.failedJobsHistoryLimit How many failed executions to track in history 2
tests.successfulJobsHistoryLimit How many successful executions to track in history 2
tests.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
tests.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
tests.restartPolicy Restart the container keeping the same Pod in Node Never
tests.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
tests.backoffLimit Each pod failure is counted towards the specified limit 0
tests.env Add extra environment variables for the Testing pods []
tests.envFrom Add extra environment variables from ConfigMaps or Secrets for the Testing pods []
tests.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
tests.extraVolumes Optionally specify an extra list of additional volumes []

Testing Resources

Parameter Description Default
tests.resources.requests.cpu CPU request 150m
tests.resources.requests.memory Memory request 300Mi
tests.resources.limits.cpu CPU limit 300m
tests.resources.limits.memory Memory limit 600Mi

Performance Job

Parameter Description Default
perfs.enabled Enable Performance false
perfs.image.registry Performance image registry qmigrator.azurecr.io
perfs.image.image Testing image webperfotp
perfs.image.pullPolicy Performance pull policy IfNotPresent
perfs.image.tag Performance image tag "985"
perfs.imagePullSecrets Performance pull secrets []
perfs.annotations Add extra annotations to the Performance {}
perfs.podAnnotations Add extra Pod annotations to the Performance pods {}
perfs.securityContexts.pod Default security context for Performance pods {}
perfs.securityContexts.container Default security context for Performance containers {}
perfs.tolerations Tolerations for Performance pods assignment []
perfs.affinity Affinity for Performance pods assignment {}
perfs.nodeSelector Node labels for Performance pods assignment {}
perfs.labels Labels for Performance {}
perfs.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
perfs.failedJobsHistoryLimit How many failed executions to track in history 2
perfs.successfulJobsHistoryLimit How many successful executions to track in history 2
perfs.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
perfs.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
perfs.restartPolicy Restart the container keeping the same Pod in Node Never
perfs.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
perfs.backoffLimit Each pod failure is counted towards the specified limit 0
perfs.env Add extra environment variables for the Performance pods []
perfs.envFrom Add extra environment variables from ConfigMaps or Secrets for the Performance pods []
perfs.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
perfs.extraVolumes Optionally specify an extra list of additional volumes []

Performance Resources

Parameter Description Default
perfs.resources.requests.cpu CPU request 150m
perfs.resources.requests.memory Memory request 300Mi
perfs.resources.limits.cpu CPU limit 300m
perfs.resources.limits.memory Memory limit 600Mi

Deployment Job

Parameter Description Default
deplo.enabled Enable Deployment false
deplo.image.registry Deployment image registry qmigrator.azurecr.io
deplo.image.image Testing image webdeplotp
deplo.image.pullPolicy Deployment pull policy IfNotPresent
deplo.image.tag Deployment image tag "102"
deplo.imagePullSecrets Deployment pull secrets []
deplo.annotations Add extra annotations to the Deployment {}
deplo.podAnnotations Add extra Pod annotations to the Deployment pods {}
deplo.securityContexts.pod Default security context for Deployment pods {}
deplo.securityContexts.container Default security context for Deployment containers {}
deplo.tolerations Tolerations for Deployment pods assignment []
deplo.affinity Affinity for Deployment pods assignment {}
deplo.nodeSelector Node labels for Deployment pods assignment {}
deplo.labels Labels for Deployment {}
deplo.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
deplo.failedJobsHistoryLimit How many failed executions to track in history 2
deplo.successfulJobsHistoryLimit How many successful executions to track in history 2
deplo.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
deplo.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
deplo.restartPolicy Restart the container keeping the same Pod in Node Never
deplo.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
deplo.backoffLimit Each pod failure is counted towards the specified limit 0
deplo.env Add extra environment variables for the Deployment pods []
deplo.envFrom Add extra environment variables from ConfigMaps or Secrets for the Deployment pods []
deplo.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
deplo.extraVolumes Optionally specify an extra list of additional volumes []

Deployment Resources

Parameter Description Default
deplo.resources.requests.cpu CPU request 150m
deplo.resources.requests.memory Memory request 300Mi
deplo.resources.limits.cpu CPU limit 300m
deplo.resources.limits.memory Memory limit 600Mi

DBA Job

Parameter Description Default
wbdba.enabled Enable DBA false
wbdba.image.registry DBA image registry qmigrator.azurecr.io
wbdba.image.image DBA image webdbaotp
wbdba.image.pullPolicy DBA pull policy IfNotPresent
wbdba.image.tag DBA image tag "18"
wbdba.imagePullSecrets DBA pull secrets []
wbdba.annotations Add extra annotations to the DBA {}
wbdba.podAnnotations Add extra Pod annotations to the DBA pods {}
wbdba.securityContexts.pod Default security context for DBA pods {}
wbdba.securityContexts.container Default security context for DBA containers {}
wbdba.tolerations Tolerations for DBA pods assignment []
wbdba.affinity Affinity for DBA pods assignment {}
wbdba.nodeSelector Node labels for DBA pods assignment {}
wbdba.labels Labels for DBA {}
wbdba.schedule Specifies the cron job schedule using the standard cron syntax "*/10 * * * *"
wbdba.failedJobsHistoryLimit How many failed executions to track in history 2
wbdba.successfulJobsHistoryLimit How many successful executions to track in history 2
wbdba.startingDeadlineSeconds How many seconds a job is allowed to miss its scheduled start time 500
wbdba.concurrencyPolicy Handle scenario when concurrent jobs are scheduled Forbid
wbdba.restartPolicy Restart the container keeping the same Pod in Node Never
wbdba.ttlSecondsAfterFinished Clean up finished Jobs after the specific seconds 600
wbdba.backoffLimit Each pod failure is counted towards the specified limit 0
wbdba.env Add extra environment variables for the DBA pods []
wbdba.envFrom Add extra environment variables from ConfigMaps or Secrets for the DBA pods []
wbdba.extraVolumeMounts Optionally specify an extra list of additional volumeMounts []
wbdba.extraVolumes Optionally specify an extra list of additional volumes []

DBA Resources

Parameter Description Default
wbdba.resources.requests.cpu CPU request 150m
wbdba.resources.requests.memory Memory request 300Mi
wbdba.resources.limits.cpu CPU limit 300m
wbdba.resources.limits.memory Memory limit 600Mi

Airflow Configuration

Parameter Description Default
airflow.enabled Enable Airflow false
airflow.name Name for Airflow "airflow"
airflow.uid User id for Airflow 5000
airflow.gid Group id for Airflow 4000
airflow.rbac.create Create Role and RoleBinding true
airflow.imagePullSecrets Airflow pull secrets []
airflow.baseUrl Base URL of Airflow Webserver http://0.0.0.0:8080/airflow
airflow.config Config settings to go into the mounted airflow.cfg See values.yaml
airflow.airflowLocalSettings File as a string (can be templated) ~
airflow.podTemplate Templated string containing the contents of pod_template_file.yaml ~
airflow.webserverConfig String (can be templated) will be mounted into the Airflow Webserver ~
airflow.securityContexts.pod Detailed default security context for Airflow Pods {}
airflow.securityContexts.container Detailed default security context for Airflow Container {}
airflow.tolerations Tolerations for Airflow pods []
airflow.affinity Affinity for Airflow pods {}
airflow.nodeSelector Node labels for Airflow pods {}
airflow.labels Labels for Airflow {}
airflow.env Add extra environment variables for the Airflow pods []
airflow.envFrom Add extra environment variables from ConfigMaps or Secrets for the Airflow pods []
airflow.extraVolumeMounts Optionally specify an extra list of additional volumeMounts for all the Airflow component pods []
airflow.extraVolumes Optionally specify an extra list of additional volumes for all the Airflow component pods []

Airflow Secret

Parameter Description Default
airflow.secret.create Create Airflow secret true
airflow.secret.secretName Name for project secret "" (auto: qmig-air-secret)
airflow.secret.data.airflow_secret_key Random generated key for webserver null (required)
airflow.secret.data.airflow_fernet_key Random generated key for airflow null (required)
airflow.secret.data.airflow_password Airflow login password null (required)
airflow.secret.data.connection Connection string for Airflow metadata DB null (required)

Airflow Webserver

Parameter Description Default
airflow.webserver.replicas Number of Airflow Webserver replicas 1
airflow.webserver.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.webserver.annotations Add extra annotations to the Airflow Webserver {}
airflow.webserver.podAnnotations Add extra Pod annotations to the Airflow Webserver pods {}
airflow.webserver.securityContexts.pod Default security context for Webserver pods {}
airflow.webserver.securityContexts.container Default security context for Webserver containers {}
airflow.webserver.tolerations Tolerations for Airflow webserver pods []
airflow.webserver.affinity Affinity for Airflow webserver pods {}
airflow.webserver.nodeSelector Node labels for Airflow webserver pods {}
airflow.webserver.livenessProbe LivenessProbe on Airflow webserver {}
airflow.webserver.readinessProbe ReadinessProbe on Airflow webserver {}
airflow.webserver.startupProbe StartupProbe on Airflow webserver {}
airflow.webserver.command Command to use when running the Airflow webserver ~
airflow.webserver.args Args to use when running the Airflow webserver ["bash", "-c", "exec airflow webserver --pid /tmp/webserver.pid"]
Airflow Webserver Service
Parameter Description Default
airflow.webserver.service.annotations Additional custom annotations for Airflow Webserver service {}
airflow.webserver.service.type Airflow Webserver service type ClusterIP
airflow.webserver.service.port Airflow Webserver service HTTP port 8080
Airflow Webserver Resources
Parameter Description Default
airflow.webserver.resources.requests.cpu CPU request 400m
airflow.webserver.resources.requests.memory Memory request 600Mi
airflow.webserver.resources.limits.cpu CPU limit 800m
airflow.webserver.resources.limits.memory Memory limit 1200Mi

Airflow Scheduler

Parameter Description Default
airflow.scheduler.replicas Number of Airflow Scheduler replicas 1
airflow.scheduler.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.scheduler.annotations Add extra annotations to the Airflow Scheduler {}
airflow.scheduler.podAnnotations Add extra Pod annotations to the Airflow Scheduler pods {}
airflow.scheduler.securityContexts.pod Default security context for Scheduler pods {}
airflow.scheduler.securityContexts.container Default security context for Scheduler containers {}
airflow.scheduler.tolerations Tolerations for Airflow scheduler pods []
airflow.scheduler.affinity Affinity for Airflow scheduler pods {}
airflow.scheduler.nodeSelector Node labels for Airflow scheduler pods {}
airflow.scheduler.livenessProbe LivenessProbe on Airflow Scheduler {}
airflow.scheduler.readinessProbe ReadinessProbe on Airflow Scheduler {}
airflow.scheduler.startupProbe StartupProbe on Airflow Scheduler {}
airflow.scheduler.command Command to use when running the Airflow scheduler ~
airflow.scheduler.args Args to use when running the Airflow scheduler ["bash", "-c", "exec airflow scheduler"]
Airflow Scheduler Resources
Parameter Description Default
airflow.scheduler.resources.requests.cpu CPU request 400m
airflow.scheduler.resources.requests.memory Memory request 700Mi
airflow.scheduler.resources.limits.cpu CPU limit 800m
airflow.scheduler.resources.limits.memory Memory limit 1400Mi

Airflow Worker

Parameter Description Default
airflow.worker.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.worker.annotations Add extra annotations to the Airflow Worker {}
airflow.worker.podAnnotations Add extra Pod annotations to the Airflow Worker pods {}
airflow.worker.securityContexts.pod Default security context for Worker pods {}
airflow.worker.securityContexts.container Default security context for Worker containers {}
airflow.worker.tolerations Tolerations for Airflow worker pods []
airflow.worker.affinity Affinity for Airflow worker pods {}
airflow.worker.nodeSelector Node labels for Airflow worker pods {}
Airflow Worker Resources
Parameter Description Default
airflow.worker.resources.requests.cpu CPU request 400m
airflow.worker.resources.requests.memory Memory request 700Mi
airflow.worker.resources.limits.cpu CPU limit 800m
airflow.worker.resources.limits.memory Memory limit 1400Mi

Airflow Wait For Migrations

Parameter Description Default
airflow.waitForMigrations.enabled Whether to create an init container to wait for db migrations true
airflow.waitForMigrations.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.waitForMigrations.annotations Add extra annotations to the waitForMigrations {}
airflow.waitForMigrations.podAnnotations Add extra Pod annotations to the waitForMigrations pods {}
airflow.waitForMigrations.securityContexts.container Default security context for waitForMigrations containers {}
Airflow Wait For Migrations Resources
Parameter Description Default
airflow.waitForMigrations.resources.requests.cpu CPU request 100m
airflow.waitForMigrations.resources.requests.memory Memory request 250Mi
airflow.waitForMigrations.resources.limits.cpu CPU limit 300m
airflow.waitForMigrations.resources.limits.memory Memory limit 500Mi

Airflow Create User Job

Parameter Description Default
airflow.createUserJob.enabled Whether to create airflow user creation job true
airflow.createUserJob.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.createUserJob.annotations Add extra annotations to the createUserJob {}
airflow.createUserJob.podAnnotations Add extra Pod annotations to the createUserJob pods {}
airflow.createUserJob.useHelmHooks Helm hook for job pod true
airflow.createUserJob.securityContexts.pod Default security context for createUserJob pods {}
airflow.createUserJob.securityContexts.container Default security context for createUserJob containers {}
airflow.createUserJob.tolerations Tolerations for Airflow createUserJob pods []
airflow.createUserJob.affinity Affinity for Airflow createUserJob pods {}
airflow.createUserJob.nodeSelector Node labels for Airflow createUserJob pods {}
Airflow Create User Job Resources
Parameter Description Default
airflow.createUserJob.resources.requests.cpu CPU request 100m
airflow.createUserJob.resources.requests.memory Memory request 250Mi
airflow.createUserJob.resources.limits.cpu CPU limit 300m
airflow.createUserJob.resources.limits.memory Memory limit 500Mi

Airflow Migrate Database Job

Parameter Description Default
airflow.migrateDatabaseJob.enabled Whether to create an init container to wait for db migrations true
airflow.migrateDatabaseJob.safeToEvict This setting tells Kubernetes that its ok to evict true
airflow.migrateDatabaseJob.annotations Add extra annotations to the migrateDatabaseJob {}
airflow.migrateDatabaseJob.podAnnotations Add extra Pod annotations to the migrateDatabaseJob pod {}
airflow.migrateDatabaseJob.useHelmHooks Helm hook for job pod true
airflow.migrateDatabaseJob.securityContexts.pod Default security context for migrateDatabaseJob pod {}
airflow.migrateDatabaseJob.securityContexts.container Default security context for migrateDatabaseJob containers {}
airflow.migrateDatabaseJob.tolerations Tolerations for Airflow migrateDatabaseJob pods []
airflow.migrateDatabaseJob.affinity Affinity for Airflow migrateDatabaseJob pods {}
airflow.migrateDatabaseJob.nodeSelector Node labels for Airflow migrateDatabaseJob pods {}
Airflow Migrate Database Job Resources
Parameter Description Default
airflow.migrateDatabaseJob.resources.requests.cpu CPU request 100m
airflow.migrateDatabaseJob.resources.requests.memory Memory request 250Mi
airflow.migrateDatabaseJob.resources.limits.cpu CPU limit 300m
airflow.migrateDatabaseJob.resources.limits.memory Memory limit 500Mi

DB Migration Job

Parameter Description Default
dbJob.name Name for DB Job "db-job"
dbJob.enabled Whether to enable the DB migration job true
dbJob.safeToEvict This setting tells Kubernetes that it's ok to evict true
dbJob.annotations Add extra annotations to the dbJob {}
dbJob.podAnnotations Add extra Pod annotations to the dbJob pod {}
dbJob.useHelmHooks Helm hook for job pod true
dbJob.securityContexts.pod Default security context for dbJob pod {}
dbJob.securityContexts.container Default security context for dbJob containers {}
dbJob.tolerations Tolerations for dbJob pods assignment []
dbJob.affinity Affinity for dbJob pods assignment {}
dbJob.nodeSelector Node labels for dbJob pods assignment {}
dbJob.labels Labels for dbJob {}
dbJob.args Arguments to pass to the dbJob container ['0']
dbJob.waitForProjectDB.enabled Whether to enable the wait-for-DB init container true

DB Job Resources

Parameter Description Default
dbJob.resources.requests.cpu CPU request 100m
dbJob.resources.requests.memory Memory request 250Mi
dbJob.resources.limits.cpu CPU limit 300m
dbJob.resources.limits.memory Memory limit 500Mi
dbJob.waitForProjectDB.resources.requests.cpu Wait container CPU request 50m
dbJob.waitForProjectDB.resources.requests.memory Wait container Memory request 100Mi
dbJob.waitForProjectDB.resources.limits.cpu Wait container CPU limit 50m
dbJob.waitForProjectDB.resources.limits.memory Wait container Memory limit 100Mi