Skip to main content
Version: DAI 25.3

Values

KeyTypeDescriptionDefault
access-control-service.resources
object
Configure the resource requests / limits for the access control service
{"limits":{"memory":"128Mi"},"requests":{"cpu":"20m","memory":"128Mi"}}
ai-api.resources
object
Configure the resource requests / limits for the ai-api service
{"limits":{"memory":"1Gi"},"requests":{"cpu":"500m","memory":"1Gi"}}
ai-engine.deployment.replicaCount
int
Configure the number of replicas for ai-engine deployment. Unless you are using keda you will want at least the number of tests you plan to run in parallel
2
ai-engine.resources
object
Configure the resource requests / limits for ai-engine
{"limits":{"memory":"256Mi"},"requests":{"cpu":"50m","memory":"256Mi"}}
ai-ui.resources
object
Configure the resource requests / limits for ai-ui
{"limits":{"memory":"64Mi"},"requests":{"cpu":"20m","memory":"64Mi"}}
api-clients-service.resources
object
Configure the resource requests / limits for api-clients-service
{"limits":{"memory":"128Mi"},"requests":{"cpu":"300m","memory":"128Mi"}}
api-composer.publicApiRateLimiting.apiRateLimit
string
Allowed request of the publc API before rate limiting occurs.
"5r/s"
api-composer.publicApiRateLimiting.apiRateLimitBurst
string
Allowed burst limit of the publc API.
"5"
api-composer.publicApiRateLimiting.enabled
bool
Should the public API be rate limited.
false
api-composer.publicApiRateLimiting.nginxResources
object
Resources for the nginx rate limiting container.
{"limits":{"memory":"64Mi"},"requests":{"cpu":"20m","memory":"64Mi"}}
api-composer.resources
object
Configure the resource requests / limits for api-composer
{"limits":{"memory":"256Mi"},"requests":{"cpu":"300m","memory":"256Mi"}}
asset-manager
object
Configuration for the asset-manager pod
{"gitStorageLimit":"100Mi","resources":{"limits":{"memory":"512Mi"},"requests":{"cpu":"400m","memory":"512Mi"}}}
asset-manager.gitStorageLimit
string
The storage limit applied to Git repo metadata, exposed as a K8s emptyDir
"100Mi"
asset-manager.resources
object
Configure the resource requests / limits for asset manager service
{"limits":{"memory":"512Mi"},"requests":{"cpu":"400m","memory":"512Mi"}}
bug-hunting.resources
object
Configure the resource requests / limits for the bug hunting service
{"limits":{"memory":"750Mi"},"requests":{"cpu":"400m","memory":"750Mi"}}
dai-docs.resources
object
Configure the resource requests / limits for the docs service
{"limits":{"memory":"256Mi"},"requests":{"cpu":"400m","memory":"256Mi"}}
dai-ui.resources
object
Configure the resource requests / limits for dai-ui
{"limits":{"memory":"64Mi"},"requests":{"cpu":"20m","memory":"64Mi"}}
execution-service.resources
object
Configure the resource requests / limits for execution-service
{"limits":{"memory":"256Mi"},"requests":{"cpu":"50m","memory":"256Mi"}}
global.devLicense
string
The developer license provided by customer support for using Eggplant DAI.
nil
global.enableCustomScripts
int
0
global.enableUsageReporting
int
Feature flag to enable the User Performance Monitoring configurations and reports on DAI web UI.
0
global.execLicense
string
The execution license provided by customer support for using Eggplant DAI.
nil
global.featLicenses
string
The feature licenses provided by customer support for using Eggplant DAI.
nil
global.git.enabled
string
"true"
global.ingress.className
string
Which ingress-nginx class to use for the ingress.
"nginx"
global.ingress.customCACert
string
nil
global.ingress.enabled
bool
true
global.ingress.host
string
Hostname for DAI ingress.
"dai.example.com"
global.ingress.tls
list
If you are enabling TLS by adding certificates to the ingress controller, then add a TLS block here. See Configuring TLS.
nil
global.keycloak.host
string
"kc-dai.example.com"
global.keycloak.password
string
Password for the Keycloak admin user. with a secret.
"admin"
global.keycloak.tls.secretName
string
The name of an existing Kubernetes secret containing TLS certificates to be used on the Keycloak ingress rule.
nil
global.keycloak.user
string
Username for the Keycloak admin user.
"admin"
global.limitMaxValue
int
For Public API, you can configure the maximum value that the limit query parameter for the endpoints can take. Default Maximum Value: 10000 Allowable range for limitMaxValue is 1000-2147483647 (inclusive)
10000
global.objectStorage.assetBucketName
string
Name of the assets storage bucket.
"assets"
global.objectStorage.aws
object
Configures the AWS provider.
{"awsAccessKeyId":"eggplant","awsAccessKeyIdKey":"","awsSecretAccessKey":"eggplant","awsSecretAccessKeyKey":"","existingSecret":"","region":"eu-west-1"}
global.objectStorage.aws.existingSecret
string
Existing secret overrides the value of awsAccessKeyId and awsSecretAccessKey.
""
global.objectStorage.minio
object
Configures the MinIO provider. If rootUser and rootPassword are set, you can use the included MinIO chart by setting minio.enabled to true without further configuration. If you want to use an existingSecret, you'll need to set the secret name in minio.auth.existingSecret. The secret will need to have the keys root-user and root-password.
{"endpoint":"","existingSecret":"","rootPassword":"eggplant","rootPasswordKey":"","rootUser":"eggplant","rootUserKey":""}
global.objectStorage.minio.endpoint
string
Endpoint of the MinIO instance. Only set this if you're not using the included MinIO chart.
""
global.objectStorage.provider
string
Which object storage provider is used. Valid values are 'minio' or 'aws'.
"minio"
global.objectStorage.screenshotBucketName
string
Name of the screenshots storage bucket.
"screenshots"
global.postgresql.auth.postgresPassword
string
Password for the postgres admin user. Used by DAI for authentication with the PostgreSQL instance and inherited by the postgresql sub-chart to configure the postgres user.
"postgres"
global.postgresql.host
string
Hostname of the PostgreSQL instance to be used by DAI.
"postgres"
global.postgresql.ttdbName
string
Name of the main database used by DAI.
"ttdb"
global.postgresql.username
string
Custom user to create. Used by DAI for authentication with the PostgreSQL instance and inherited by the postgresql sub-chart to configure the PostgreSQL deployment.
"postgres"
global.rabbitmq.erlangCookie
string
The RabbitMQ Erlang cookie. It will either be set from the value of rabbitmq-erlang-cookie in the secret dai-rabbitmq or it will be set to a random string.
nil
global.rabbitmq.existingSecret
string
An existing secret with rabbitmq-password and rabbitmq-erlang-cookie keys in it. Overrides rabbitmq.password and rabbitmq.erlangCookie.
""
global.rabbitmq.extraConfiguration
string
"web_stomp.tcp.port = 15674\nweb_stomp.ws_frame = binary\nweb_stomp.ws_path = /mq/fedrive\n\nloopback_users.backend = false\n\nauth_backends.1 = internal\nauth_backends.2 = cache\nauth_cache.cached_backend = http\nauth_cache.cache_ttl = 5000\n\nauth_http.http_method = post\nauth_http.user_path = http://rabbitmq-auth:4649/rabbitmq_auth_service/api/v1/user\nauth_http.vhost_path = http://rabbitmq-auth:4649/rabbitmq_auth_service/api/v1/vhost\nauth_http.resource_path = http://rabbitmq-auth:4649/rabbitmq_auth_service/api/v1/resource\nauth_http.topic_path = http://rabbitmq-auth:4649/rabbitmq_auth_service/api/v1/topic"
global.rabbitmq.host
string
Hostname of the RabbitMQ instance.
"rabbitmq"
global.rabbitmq.password
string
Password for DAI to authenticate with RabbitMQ. If this is not set, it will either be set to the value of rabbitmq-password in the secret dai-rabbitmq or it will be set to a random string.
nil
global.rabbitmq.port
int
The port the RabbitMQ instance is running on.
5672
global.rabbitmq.username
string
Username for DAI to authenticate with RabbitMQ as.
"rabbitmq"
global.restartEpfAfterSeconds
int
When running a test configuration, you can configure the interval in seconds that EPF runs before restarting. This variable takes effect after the current step finishes and before moving to the next step. It only applies to test configurations run with the DAI Run Agent. During live runs, EPF runs continuously without restarting. If you do not want EPF to restart during your test runs, you can disable this option by setting it to 0 (zero). Default: 30 minutes.
1800
global.retryLockSutAndEE.retrySleepIntervalSeconds
int
10
global.retryLockSutAndEE.retryTimeoutSeconds
int
3600
global.syncSuites
int
Controls whether the DAI Run Agent manages the synchronization (clone) of Eggplant test suites that are stored in your Git repository at test config runtime. This option is only applicable if your DAI Server is configured to access your test suites in a Git repository. This feature became available in DAI 25.3. In prior versions and by default, Eggplant Fusion Engine (Eggplant Functional (EPF) in command-line mode) performs the synchronization. Set to 1 to enable.
0
global.systemRunTimeout
int
When running a test configuration, you can configure the maximum time in minutes that EPF runs.
0
global.testConfigTaskEndDelaySeconds
int
When running a test configuration, you can configure the delay in seconds before EPF is stopped at the end of the test configuration run. Default: 5 seconds
5
keycloak
object
Configuration for the Bitnami Keycloak sub-chart.
{"auth":{"adminPassword":"admin","adminUser":"admin"},"enabled":true,"externalDatabase":{"database":"keycloak","existingSecret":"","host":"postgres","password":"fake","user":"postgres"},"fullnameOverride":"keycloak","httpRelativePath":"/auth/","ingress":{"enabled":false},"initContainers":[{"command":["sh","-c","until timeout 2 printf \"\" 2>>/dev/null >>/dev/tcp/${KEYCLOAK_DATABASE_HOST}/${KEYCLOAK_DATABASE_PORT}; do echo \"waiting for PostgreSQL\"; sleep 5; done"],"envFrom":[{"configMapRef":{"name":"keycloak-env-vars"}}],"image":"quay.io/eggplantsoftware/keycloak-server:6.2.66","imagePullPolicy":"IfNotPresent","name":"wait-for-postgresql"}],"postgresql":{"enabled":false}}
keycloak-realm-provisioner.realms.customer.services.smtp.auth
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.enabled
string
Whether to configure SMTP in Keycloak for sending emails.
"no"
keycloak-realm-provisioner.realms.customer.services.smtp.existingSecret
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.from
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.host
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.password
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.port
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.ssl
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.tls
string
""
keycloak-realm-provisioner.realms.customer.services.smtp.user
string
""
keycloak-realm-provisioner.realms.eeProvisioner.createIfMissing
bool
false
keycloak-user-provisioner.adminUsers
object
This mapping lists the DAI admin users to create. You can specify multiple admin users, each in a separate key, e.g. adminUsers.myAdmin, adminUsers.anotherAdmin. Each specified admin user must have all the fields shown under adminUsers.daiAdmin.
{"daiAdmin":{"email":null,"firstName":null,"lastName":null,"password":null,"username":null}}
keycloak-user-provisioner.adminUsers.daiAdmin.password
string
must be >= 12 characters long.
nil
keycloak.auth
object
Configuration for the initial admin user.
{"adminPassword":"admin","adminUser":"admin"}
keycloak.enabled
bool
Must be set to true - we do not support using your own Keycloak.
true
keycloak.externalDatabase
object
Configure the database to be used by Keycloak for persistence. If using the bundled PostgreSQL instance and changing any parameters, this needs to be updated to match.
{"database":"keycloak","existingSecret":"","host":"postgres","password":"fake","user":"postgres"}
keycloak.fullnameOverride
string
Changing this will impact the name of the service created by the Bitnami chart. If you change this, DAI may not behave as expected.
"keycloak"
keycloak.httpRelativePath
string
The path, relative to the DAI server URL, to publish Keycloak resources. This is needed for compatibility with old Keycloak versions. DAI depends on this and it must not be changed.
"/auth/"
keycloak.ingress.enabled
bool
If the ingress config deployed by the Bitnami keycloak chart is deployed or not. This must be false as we are shipping our own ingress.
false
keycloak.initContainers
list
Adds an init container to prevent Keycloak from coming up before PostgreSQL is ready.
[{"command":["sh","-c","until timeout 2 printf \"\" 2>>/dev/null >>/dev/tcp/${KEYCLOAK_DATABASE_HOST}/${KEYCLOAK_DATABASE_PORT}; do echo \"waiting for PostgreSQL\"; sleep 5; done"],"envFrom":[{"configMapRef":{"name":"keycloak-env-vars"}}],"image":"quay.io/eggplantsoftware/keycloak-server:6.2.66","imagePullPolicy":"IfNotPresent","name":"wait-for-postgresql"}]
keycloak.postgresql
object
If the Keycloak chart configures its own PostgreSQL instance. We re-use the same postgres instance as the rest of DAI, so leave this false.
{"enabled":false}
minio
object
Configuration for the Bitnami MinIO sub-chart.
{"auth":{"existingSecret":"dai-objectstorage"},"console":{"enabled":false},"enabled":true,"fullnameOverride":"minio","persistence":{"enabled":true}}
minio.auth.existingSecret
string
This secret is automatically populated by the values in global.objectStorage.minio.rootUser and rootPassword. If you provide an existing secret in global.objectStorage.minio, you must update this to match. The secret must have keys root-user and root-password.
"dai-objectstorage"
minio.enabled
bool
Set this to false if you want to use your own object storage service, e.g. AWS S3.
true
minio.fullnameOverride
string
Impacts the service name created by the Bitnami chart. If this changes, it could break DAI.
"minio"
minio.persistence.enabled
bool
Persist stored objects to a PVC. Disabling this may result in lost data.
true
modeler-service.resources
object
Configure the resource requests / limits modeler-service
{"limits":{"memory":"256Mi"},"requests":{"cpu":"400m","memory":"256Mi"}}
network-policies.dnsAllowedRange
string
Allowed IPs ranges to be used for DNS servers. By default not restrictions are enforced.
"0.0.0.0/0"
network-policies.egressAllowAll
bool
If network polcies are enabled do you wish to allow outbound traffic from pods.
false
network-policies.enabled
bool
Set to enbaled if you wish to enable network policies.
false
network-policies.externalGit
object
If using git to store suites then you can choose to restrict which outbound IPs and ports are allowed to be reached by the asset manager pod.
{"cidrs":["0.0.0.0/0"],"ports":[80,443]}
network-policies.externalWebhook
object
If sending notifications then you can choose to restrict which outbound IPs and ports are allowed to be reached by the notification service pod.
{"cidrs":["0.0.0.0/0"],"ports":[80,443]}
network-policies.ingressNSMatchLabels
object
Define a label on the ingress controller namespace. This will be used to allow traffic from that namespace to the DAI namespace.
{"kubernetes.io/metadata.name":"ingress-nginx"}
network-policies.keycloakIPRanges
list
IP ranges of the external interface though which keycloak can be reached. This is needed to allow DAI pods to contact keycloak via its DNS name. typically this is the external IPs of the ingress controller loadbalancer. By default all outbound addresses are allowed.
["0.0.0.0/0"]
postgresql
object
Configuration for the Bitnami postgresql sub-chart.
{"enabled":true,"fullnameOverride":"postgres","image":{"tag":"14.12.0-debian-12-r11"},"primary":{"extraEnvVars":[{"name":"POSTGRESQL_DATABASE","value":"keycloak"}],"persistence":{"enabled":true}}}
postgresql.enabled
bool
Set to false if using an alternative PostgreSQL installation.
true
postgresql.fullnameOverride
string
Impacts the name of the service created. If this is changed, will most likely need to update global.postgresq.host to work.
"postgres"
postgresql.primary.extraEnvVars[0]
object
POSTGRESQL_DATABASE environment variable is the name of a database to create on the PostgreSQL instance at initial deployment. The 'keycloak' database must exist for DAI to work, however you choose to create it.
{"name":"POSTGRESQL_DATABASE","value":"keycloak"}
postgresql.primary.persistence.enabled
bool
Controls whether PostgreSQL data is persisted in a PVC. Setting this to false could result in data loss.
true
rabbitmq
object
Configuration for the Bitnami RabbitMQ chart.
{"auth":{"existingErlangSecret":"dai-rabbitmq","existingPasswordSecret":"dai-rabbitmq","username":"rabbitmq"},"enabled":true,"fullnameOverride":"rabbitmq","networkPolicy":{"extraIngress":[{"ports":[{"port":15674}]}]},"persistence":{"enabled":true},"resources":{"limits":{"memory":"500Mi"},"requests":{"cpu":"400m","memory":"500Mi"}}}
rabbitmq-auth.resources
object
Configure the resource requests / limits for rabbitmq-auth
{"limits":{"memory":"128Mi"},"requests":{"cpu":"20m","memory":"128Mi"}}
rabbitmq.auth.existingErlangSecret
string
Secret to fetch the RabbitMQ Erlang cookie from. Must have rabbitmq-erlang-cookie. DAI assumes this and existingPasswordSecret are the same. If these change, must update global.rabbitmq.existingSecret.
"dai-rabbitmq"
rabbitmq.auth.existingPasswordSecret
string
Secret to fetch the RabbitMQ user password from. Must have rabbitmq-password key in it. If this changes, must update global.rabbitmq.existingSecret.
"dai-rabbitmq"
rabbitmq.auth.username
string
Default RabbitMQ user to create. If this changes, must update global.rabbitmq.username to match.
"rabbitmq"
rabbitmq.fullnameOverride
string
Changing this could impact the service name created by the Bitnami chart and break DAI.
"rabbitmq"
sut-service.resources
object
Configure the resource requests / limits for sut-service
{"limits":{"memory":"256Mi"},"requests":{"cpu":"100m","memory":"256Mi"}}