Skip to main content
Version: Early Access

Configuration Parameters for Release Runners

The configuration parameters for Release Runners are set or overridden using the configuration files, environment variables, or command line switches.

The configuration is performed in the following order:

  • Default configuration file
  • Configuration files defined by the --profiles switch on the command line
  • Environment variables
  • Configuration switches on the command line

The default values are set from the default configuration file that is available inside the Release Runner image. This image also contains predefined environment related configuration files.

Note: Start the runner using the --profiles switch to pick up these configurations.

Additionally, if you want to change single settings, you can either use the environment variables or command line switches. For example, you must export the RELEASE_RUNNER_PROFILE=docker environment value.

Configuration parameters

Property NameEnvironment VariableDescription
release.runner.profileRELEASE_RUNNER_PROFILEAn active runner profile such as Kubernetes or Docker.
release.runner.release-urlRELEASE_RUNNER_RELEASE_URLRelease server URL.
release.runner.tokenRELEASE_RUNNER_TOKENPersonal Access Token (PAT) for the Release server (defined in Release configuration).
release.runner.capabilitiesRELEASE_RUNNER_CAPABILITIESA default set of Runner capabilities.
release.runner.nameRELEASE_RUNNER_NAMEName of the Runner.
release.runner.versionRELEASE_RUNNER_VERSIONVersion of the Runner that should be inline with the published version.
release.runner.store-nameRELEASE_RUNNER_STORE_NAMEName of the Runner data store file.
release.runner.store-in-k8sRELEASE_RUNNER_STORE_IN_K8SWhen set to true, it indicates the preference for using Secrets instead of an instance of Bolt database. It is recommended to set this variable to true when running in a Kubernetes cluster. However, when you set it to true outside of a kKubernetes cluster, it will result in initialization errors. This switch should be used when you want to avoid the need for creating volumes
release.runner.cached-storeRELEASE_RUNNER_CACHED_STOREUse cache wrapper to the store, to optimize performance of store. It is recommended when you set release.runner.store-in-k8s to true.
release.runner.key-passwordRELEASE_RUNNER_KEY_PASSWORDPrivate key password.
release.runner.log-levelRELEASE_RUNNER_LOG_LEVELThe log level options of the release runner are as follows:
  • 0=DEBUG
  • 1=INFO
  • 2=WARN
  • 3=ERROR
  • 4=FATAL
  • 5=PANIC
  • 6=NONE
  • 7=DISABLED
.
release.runner.json-loggingRELEASE_RUNNER_JSON_LOGGINGOutput logs in json format.
release.runner.health.addressRELEASE_RUNNER_HEALTH_ADDRESSAn address at which the health service runs. You can change the port on which the service is running. The defaults value is 0.0.0.0:8686.
release.runner.logging.script-logRELEASE_RUNNER_LOGGING_SCRIPT_LOGSet to SILENT, LOG, or SEND.
  • SILENT option ignores the logs from script execution.
  • LOG option writes script execution logs into release runner logs. This is the default and recommended option.
  • SEND option sends script logs back to the release log endpoint. Currently, this is not supported.
release.runner.rest-client.proxy-enabledRELEASE_RUNNER_REST_CLIENT_PROXY_ENABLEDSet to true, if the Release server is reached through a proxy server.
release.runner.rest-client.proxy-urlRELEASE_RUNNER_REST_CLIENT_PROXY_URLProxy Server URL used for REST connections.
release.runner.rest-client.max-connectionsRELEASE_RUNNER_REST_CLIENT_MAX_CONNECTIONSMaximal number of connections used towards Release.
release.runner.rest-client.hostname-verification-enabledRELEASE_RUNNER_REST_CLIENT_HOSTNAME_VERIFICATION_ENABLEDChecks if the hostname matches the key.
release.runner.rest-client.self-signed-certificate-enabledRELEASE_RUNNER_REST_CLIENT_SELF_SIGNED_CERTIFICATE_ENABLEDAllows self-signed certificates.
release.runner.rest-client.truststoreRELEASE_RUNNER_REST_CLIENT_TRUSTSTOREA P12 truststore that contains CA for Release server.
release.runner.rest-client.truststore-passwordRELEASE_RUNNER_REST_CLIENT_TRUSTSTORE_PASSWORDPassword for the Truststore.
release.runner.control-channel.ping-timeoutRELEASE_RUNNER_CONTROL_CHANNEL_PING_TIMEOUTThe time interval, in seconds, at which the ping timeout checks are scheduled to occur. For example, when you set 3 as the value, it will check for every three seconds.
release.runner.control-channel.connection-idle-retry-delayRELEASE_RUNNER_CONTROL_CHANNEL_CONNECTION_IDLE_RETRY_DELAYNumber of seconds after which the connection is considered as dead.
release.runner.control-channel.connection-failure-retry-delayRELEASE_RUNNER_CONTROL_CHANNEL_CONNECTION_FAILURE_RETRY_DELAYNumber of seconds, before attempting to reconnect after a connection failure.
release.runner.kubernetes.in-cluster-configRELEASE_RUNNER_KUBERNETES_IN_CLUSTER_CONFIGUsed in cluster configuration for managing the cluster. The default value is true. You can set to false only for development purposes.
release.runner.kubernetes.kubeconfig-pathRELEASE_RUNNER_KUBERNETES_KUBECONFIG_PATHIf the release.runner.kubernetes.in-cluster-config is set to false, use the kubeconfig file as the configuration for the cluster. YOu can use this only for development purposes.
release.runner.kubernetes.pod-hostnameRELEASE_RUNNER_KUBERNETES_POD_HOSTNAMEHostname under which the pod is available from the outside.
release.runner.kubernetes.service-nameRELEASE_RUNNER_KUBERNETES_SERVICE_NAMEThis value is used when creating dynamic headless-service URL for the StatefulSet.
release.runner.kubernetes.namespaceRELEASE_RUNNER_KUBERNETES_NAMESPACENamespace used for running everything inside the runner.
release.runner.kubernetes.image-pull-policyRELEASE_RUNNER_KUBERNETES_IMAGE_PULL_POLICYImagePullPolicy for the plugin image.
release.runner.kubernetes.job-cpu-requestRELEASE_RUNNER_KUBERNETES_JOB_CPU_REQUESTSetting for minimum CPU, in cores (500m = .5 cores).
release.runner.kubernetes.job-memory-requestRELEASE_RUNNER_KUBERNETES_JOB_MEMORY_REQUESTSetting for minimum memory, in bytes (500Gi = 500GiB = 500 * 1024 * 1024 * 1024).
release.runner.kubernetes.job-cpu-limitRELEASE_RUNNER_KUBERNETES_JOB_CPU_LIMITSetting for maximum CPU, in cores.
release.runner.kubernetes.job-memory-limitRELEASE_RUNNER_KUBERNETES_JOB_MEMORY_LIMITSetting for maximum memory, in bytes (500Gi = 500GiB = 500 * 1024 * 1024 * 1024).
release.runner.kubernetes.request-retry-backoff-limitRELEASE_RUNNER_KUBERNETES_REQUEST_RETRY_BACKOFF_LIMITKubernetes client retry backoff limit.
release.runner.kubernetes.request-retry-backoff-intervalRELEASE_RUNNER_KUBERNETES_REQUEST_RETRY_BACKOFF_INTERVALKubernetes client retry backoff interval.
release.runner.kubernetes.encrypt-job-dataRELEASE_RUNNER_KUBERNETES_ENCRYPT_JOB_DATASetting for encrypting job data (use encrypted data when sending it to the pod).
release.runner.docker.docker-hostRELEASE_RUNNER_DOCKER_DOCKER_HOSTHostname under which the Docker host is available from the container. Generally, it's localhost because docker containers run with the Host network.
release.runner.docker.job-cpu-limitRELEASE_RUNNER_DOCKER_JOB_CPU_LIMITSetting for maximum CPU in cores.
release.runner.docker.job-memory-limitRELEASE_RUNNER_DOCKER_JOB_MEMORY_LIMITSetting for maximum memory, in bytes.
release.runner.docker.trust-certsRELEASE_RUNNER_DOCKER_TRUST_CERTSAllows unsigned certificates.