This documents the Helm chart for Korifi.
The configuration for each individual component is nested under a top-level key named after the component itself. Values at the top-level apply to all components.
Each component can be excluded from the deployment by the setting its include
value to false
.
See Customizing the Chart Before Installing for details on how to specify values when installing a Helm chart.
Here are all the values that can be set for the chart:
adminUserName
(String): Name of the admin user that will be bound to the Cloud Foundry Admin role.api
:apiServer
:internalPort
(Integer): Port used internally by the API container.port
(Integer): API external port. Defaults to443
.timeouts
: HTTP timeouts.idle
(Integer): Idle timeout.read
(Integer): Read timeout.readHeader
(Integer): Read header timeout.write
(Integer): Write timeout.
url
(String): API URL.
authProxy
: Needed if using a cluster authentication proxy, e.g. Pinniped.caCert
(String): Proxy's PEM-encoded CA certificate (not as Base64).host
(String): Must be a host string, a host:port pair, or a URL to the base of the apiserver.
image
(String): Reference to the API container image.include
(Boolean): Deploy the API component.lifecycle
: Default lifecycle for apps.stack
(String): Stack.type
(String): Lifecycle type (onlybuildpack
accepted currently).
replicas
(Integer): Number of replicas.resources
:ResourceRequirements
for the API.limits
: Resource limits.cpu
(String): CPU limit.memory
(String): Memory limit.
requests
: Resource requests.cpu
(String): CPU request.memory
(String): Memory request.
userCertificateExpirationWarningDuration
(String): Issue a warning if the user certificate provided for login has a long expiry. Seetime.ParseDuration
for details on the format.
containerRegistrySecret
(String): Deprecated in favor of containerRegistrySecrets.containerRegistrySecrets
(Array): List ofSecret
names to use when pushing or pulling from package, droplet and kpack builder repositories. Required if eksContainerRegistryRoleARN not set. Ignored if eksContainerRegistryRoleARN is set.containerRepositoryPrefix
(String): The prefix of the container repository where package and droplet images will be pushed. This is suffixed with the app GUID and-packages
or-droplets
. For example, a value ofindex.docker.io/korifi/
will result inindex.docker.io/korifi/<appGUID>-packages
andindex.docker.io/korifi/<appGUID>-droplets
being pushed.controllers
:extraVCAPApplicationValues
: Key-value pairs that are going to be set in the VCAP_APPLICATION env var on apps. Nested values are not supported.image
(String): Reference to the controllers container image.maxRetainedBuildsPerApp
(Integer): How many staged builds to keep, excluding the app's current droplet. Older staged builds will be deleted, along with their corresponding container images.maxRetainedPackagesPerApp
(Integer): How many 'ready' packages to keep, excluding the package associated with the app's current droplet. Older 'ready' packages will be deleted, along with their corresponding container images.namespaceLabels
: Key-value pairs that are going to be set as labels on the namespaces created by Korifi.processDefaults
:diskQuotaMB
(Integer): Default disk quota for theweb
process.memoryMB
(Integer): Default memory limit for theweb
process.
replicas
(Integer): Number of replicas.resources
:ResourceRequirements
for the API.limits
: Resource limits.cpu
(String): CPU limit.memory
(String): Memory limit.
requests
: Resource requests.cpu
(String): CPU request.memory
(String): Memory request.
taskTTL
(String): How long before theCFTask
object is deleted after the task has completed. Seetime.ParseDuration
for details on the format, an additionald
suffix for days is supported.workloadsTLSSecret
(String): TLS secret used when setting up an app routes.
debug
(Boolean): Enables remote debugging with Delve.defaultAppDomainName
(String): Base domain name for application URLs.eksContainerRegistryRoleARN
(String): Amazon Resource Name (ARN) of the IAM role to use to access the ECR registry from an EKS deployed Korifi. Required if containerRegistrySecret not set.generateIngressCertificates
(Boolean): Usecert-manager
to generate self-signed certificates for the API and app endpoints.helm
:hooksImage
(String): Image for the helm hooks containing kubectl
jobTaskRunner
:include
(Boolean): Deploy thejob-task-runner
component.jobTTL
(String): How long before theJob
backing up a task is deleted after completion. Seetime.ParseDuration
for details on the format, an additionald
suffix for days is supported.replicas
(Integer): Number of replicas.resources
:ResourceRequirements
for the API.limits
: Resource limits.cpu
(String): CPU limit.memory
(String): Memory limit.
requests
: Resource requests.cpu
(String): CPU request.memory
(String): Memory request.
temporarySetPodSeccompProfile
(Boolean): Sets the pod .spec.securityContext.seccompProfile to RuntimeDefault. Setting this flag to true will cause a restart of all previously running pods.
kpackImageBuilder
:builderReadinessTimeout
(String): The time that the kpack Builder will be waited for if not in ready state, berfore the build workload fails. Seetime.ParseDuration
for details on the format, an additionald
suffix for days is supported.builderRepository
(String): Container image repository to store theClusterBuilder
image. Required whenclusterBuilderName
is not provided.clusterBuilderName
(String): The name of theClusterBuilder
Kpack has been configured with. Leave blank to letkpack-image-builder
create an exampleClusterBuilder
.clusterStackBuildImage
(String): The image to use for building defined in theClusterStack
. Used whenclusterBuilderName
is blank.clusterStackID
(String): The ID of theClusterStack
. Used whenclusterBuilderName
is blank.clusterStackRunImage
(String): The image to use for running defined in theClusterStack
. Used whenclusterBuilderName
is blank.include
(Boolean): Deploy thekpack-image-builder
component.replicas
(Integer): Number of replicas.resources
:ResourceRequirements
for the API.limits
: Resource limits.cpu
(String): CPU limit.memory
(String): Memory limit.
requests
: Resource requests.cpu
(String): CPU request.memory
(String): Memory request.
logLevel
(String): Sets level of logging for api and controllers components. Can be 'info' or 'debug'.networking
: Networking configurationgatewayClass
(String): The name of the GatewayClass Korifi Gateway references
reconcilers
:app
(String): ID of the workload runner to set on allAppWorkload
objects. Defaults tostatefulset-runner
.build
(String): ID of the image builder to set on allBuildWorkload
objects. Defaults tokpack-image-builder
.
rootNamespace
(String): Root of the Cloud Foundry namespace hierarchy.stagingRequirements
:buildCacheMB
(Integer): Persistent disk in MB for caching staging artifacts across builds.diskMB
(Integer): Ephemeral Disk request in MB for staging apps.memoryMB
(Integer): Memory request in MB for staging.
statefulsetRunner
:include
(Boolean): Deploy thestatefulset-runner
component.replicas
(Integer): Number of replicas.resources
:ResourceRequirements
for the API.limits
: Resource limits.cpu
(String): CPU limit.memory
(String): Memory limit.
requests
: Resource requests.cpu
(String): CPU request.memory
(String): Memory request.
temporarySetPodSeccompProfile
(Boolean): Sets the pod .spec.securityContext.seccompProfile to RuntimeDefault. Setting this flag to true will cause a restart of all previously running pods.
systemImagePullSecrets
(Array): List ofSecret
names to be used when pulling Korifi system images from private registries