Skip to main content
Version: v0.14.x

Build Plane

Dependencies​

This chart depends on the following sub-charts. For full configuration options of each dependency, please refer to their official documentation.

NameVersionRepositoryCondition
argo-workflows0.45.2https://argoproj.github.io/argo-helm-
fluent-bit0.54.0https://fluent.github.io/helm-chartsfluent-bit.enabled
openbao0.4.0https://openbao.github.io/openbao-helmopenbao.enabled

Argo Workflows​

For full configuration options, please refer to the official chart documentation.

Argo Workflows sub-chart configuration. See https://github.com/argoproj/argo-helm/tree/main/charts/argo-workflows for all options.

ParameterDescriptionTypeDefault
argo-workflows.controller.resources.limits.cpuCPU limit for the controllerstring50m
argo-workflows.controller.resources.limits.memoryMemory limit for the controllerstring64Mi
argo-workflows.controller.resources.requests.cpuCPU request for the controllerstring25m
argo-workflows.controller.resources.requests.memoryMemory request for the controllerstring32Mi
argo-workflows.crds.keepKeep CRDs on chart uninstallbooleanfalse
argo-workflows.fullnameOverrideOverride the full name of Argo Workflows resourcesstringargo
argo-workflows.server.enabledEnable the Argo Workflows server UIbooleanfalse
argo-workflows.workflow.serviceAccount.createCreate service account for workflowsbooleantrue
argo-workflows.workflowNamespacesNamespaces where Argo Workflows can submit workflowsarray

Cluster Agent​

Cluster Agent configuration for agent-based communication with control plane

ParameterDescriptionTypeDefault
clusterAgent.affinityAffinity rules for cluster agent podsobject
clusterAgent.dnsRewrite.enabledEnable DNS rewrite for k3d setupsbooleanfalse
clusterAgent.enabledEnable the cluster agent for control plane communicationbooleantrue
clusterAgent.heartbeatIntervalHeartbeat interval for control plane connectionstring30s
clusterAgent.image.pullPolicyImage pull policyobjectIfNotPresent
clusterAgent.image.repositoryImage repository for cluster agentstringghcr.io/openchoreo/cluster-agent
clusterAgent.image.tagImage tag. If empty, uses Chart.AppVersion.string
clusterAgent.logLevelLog level for cluster agentobjectinfo
clusterAgent.nameName of the cluster agent deploymentstringcluster-agent-buildplane
clusterAgent.nodeSelectorNode selector for cluster agent podsobject
clusterAgent.planeIDLogical plane identifier. Shared across multiple CRs connecting to the same physical plane for multi-tenancy.stringdefault-buildplane
clusterAgent.planeTypeType of planeobjectbuildplane
clusterAgent.podAnnotationsAnnotations to add to cluster agent podsobject
clusterAgent.podDisruptionBudget.enabledEnable PodDisruptionBudget for cluster agentbooleanfalse
clusterAgent.podDisruptionBudget.maxUnavailableMaximum number of pods that can be unavailableinteger,nullnull
clusterAgent.podDisruptionBudget.minAvailableMinimum number of pods that must be availableinteger1
clusterAgent.podSecurityContext.fsGroupinteger1000
clusterAgent.podSecurityContext.runAsNonRootbooleantrue
clusterAgent.podSecurityContext.runAsUserinteger1000
clusterAgent.priorityClass.createCreate priority classbooleanfalse
clusterAgent.priorityClass.namePriority class namestringcluster-agent-buildplane
clusterAgent.priorityClass.valuePriority valueinteger900000
clusterAgent.rbac.createCreate RBAC resourcesbooleantrue
clusterAgent.reconnectDelayDelay before reconnecting on disconnectionstring5s
clusterAgent.replicasNumber of cluster agent replicasinteger1
clusterAgent.resources.limits.cpustring100m
clusterAgent.resources.limits.memorystring256Mi
clusterAgent.resources.requests.cpustring50m
clusterAgent.resources.requests.memorystring128Mi
clusterAgent.securityContext.allowPrivilegeEscalationbooleanfalse
clusterAgent.securityContext.capabilities.droparray
clusterAgent.securityContext.readOnlyRootFilesystembooleantrue
clusterAgent.serverCANamespaceNamespace where cluster-gateway CA existsstringopenchoreo-control-plane
clusterAgent.serverUrlWebSocket URL of the cluster gateway in control planestringwss://cluster-gateway.openchoreo-control-plane.svc.cluster.local:8443/ws
clusterAgent.serviceAccount.annotationsAnnotations to add to the service accountobject
clusterAgent.serviceAccount.createCreate service accountbooleantrue
clusterAgent.serviceAccount.nameService account namestringcluster-agent-buildplane
clusterAgent.tls.caSecretNameCA secret name for signing agent client certificates. If empty, self-signed certs will be generated (required for multi-cluster setup).stringcluster-gateway-ca
clusterAgent.tls.caSecretNamespaceNamespace where the CA secret exists. If empty, self-signed certs will be generated (required for multi-cluster setup).stringopenchoreo-control-plane
clusterAgent.tls.caValueInline CA certificate value (PEM format) for multi-cluster setupstring
clusterAgent.tls.clientSecretNameClient certificate secret namestringcluster-agent-tls
clusterAgent.tls.durationCertificate durationstring2160h
clusterAgent.tls.enabledEnable TLS for agent communicationbooleantrue
clusterAgent.tls.generateCertsGenerate client certificates locally using cert-manager. Set to true for multi-cluster setup.booleanfalse
clusterAgent.tls.renewBeforeCertificate renewal windowstring360h
clusterAgent.tls.secretNameSecret containing client certificate and keystringcluster-agent-tls
clusterAgent.tls.serverCAConfigMapConfigMap containing server CA certificate for verifying gatewaystringcluster-gateway-ca
clusterAgent.tls.serverCAValueInline server CA certificate value (PEM format) for multi-cluster setupstring
clusterAgent.tolerationsTolerations for cluster agent podsarray

Fake Secret Store​

Fake Secret Store configuration for local development. Creates a ClusterSecretStore with static secrets for testing purposes. Not for production use.

ParameterDescriptionTypeDefault
fakeSecretStore.enabledEnable the fake secret store for developmentbooleantrue
fakeSecretStore.nameName of the ClusterSecretStore resourcestringdefault
fakeSecretStore.secretsList of fake secrets to create for developmentarray

Fluent Bit​

For full configuration options, please refer to the official chart documentation.

Fluent Bit subchart configuration for log collection and forwarding to OpenSearch

ParameterDescriptionTypeDefault
fluent-bit.config.customParsersCustom parser definitions in Fluent Bit configuration formatstring(multiline string)
fluent-bit.config.filtersFilter plugin configuration for log processingstring(multiline string)
fluent-bit.config.inputsInput plugin configuration for log collectionstring(multiline string)
fluent-bit.config.outputsOutput plugin configuration for log forwarding to OpenSearchstring(multiline string)
fluent-bit.dnsPolicyDNS policy for Fluent Bit podsobjectClusterFirstWithHostNet
fluent-bit.enabledEnable Fluent Bit log collector deploymentbooleanfalse
fluent-bit.extraVolumeMountsExtra volume mounts for the Fluent Bit containerarray
fluent-bit.extraVolumesExtra volumes for the Fluent Bit podarray
fluent-bit.fullnameOverrideOverride the full name of Fluent Bit resourcesstringfluent-bit
fluent-bit.hostNetworkUse host network for Fluent Bit pods (required for node log access)booleantrue
fluent-bit.initContainersInit containers for the Fluent Bit pod (used to set volume ownership)array
fluent-bit.metricsPortPort for Fluent Bit metrics endpointinteger2021
fluent-bit.rbac.nodeAccessEnable node-level access for reading container logsbooleantrue
fluent-bit.resources.limits.cpuCPU limit for Fluent Bitstring200m
fluent-bit.resources.limits.memoryMemory limit for Fluent Bitstring256Mi
fluent-bit.resources.requests.cpuCPU request for Fluent Bitstring100m
fluent-bit.resources.requests.memoryMemory request for Fluent Bitstring128Mi
fluent-bit.securityContext.allowPrivilegeEscalationPrevent privilege escalationbooleanfalse
fluent-bit.securityContext.capabilities.dropCapabilities to droparray
fluent-bit.securityContext.readOnlyRootFilesystemMount root filesystem as read-onlybooleantrue
fluent-bit.securityContext.runAsNonRootRun container as non-root userbooleantrue
fluent-bit.securityContext.runAsUserUser ID to run the containerinteger10000
fluent-bit.service.portService port for Fluent Bit metricsinteger2021
fluent-bit.testFramework.enabledEnable Fluent Bit test frameworkbooleanfalse

Global​

Global configuration values shared across all components

ParameterDescriptionTypeDefault
global.commonLabelsCommon labels to add to every resourceobject
global.defaultResources.buildpackCache.enabledEnable buildpack image caching. When enabled, images are pulled from cache registry instead of remote.booleanfalse
global.defaultResources.buildpackCache.imagesList of buildpack images to cache. Each entry has an id for lookup, remoteImage for external registry, and cachedImage for local cache.array
global.defaultResources.enabledIf true, applies the workflow templatesbooleantrue
global.defaultResources.podmanCache.sizeSize of the persistent volume for podman image layer cachestring10Gi
global.defaultResources.podmanCache.storageClassStorage class for the cache PVC. Uses cluster default if not set.string
global.defaultResources.registry.hostContainer registry host for pushing built images (REQUIRED). Examples include ECR (123456789.dkr.ecr.us-east-1.amazonaws.com), GCR (gcr.io/my-project), Docker Hub (docker.io), or a local registry (registry.openchoreo-build-plane.svc.cluster.local).string
global.defaultResources.registry.repoPathRepository path prepended to image names. Can be any depth (e.g., "myorg", "myorg/myproject", "namespace/subpath/images"). Leave empty for root-level images.string
global.defaultResources.registry.tlsVerifyEnable TLS verification when pushing images to the registry. Set to false for self-signed certificates or local development.booleanfalse

Openbao​

For full configuration options, please refer to the official chart documentation.

OpenBao sub-chart configuration for secrets management. OpenBao is an open-source fork of HashiCorp Vault. Used as a backend for External Secrets Operator PushSecrets in development/testing. See https://github.com/openbao/openbao-helm for all options.

ParameterDescriptionTypeDefault
openbao.enabledEnable OpenBao installationbooleantrue
openbao.fullnameOverrideOverride the full name of OpenBao resourcesstringopenbao
openbao.injector.enabledEnable the OpenBao Agent Injectorbooleanfalse
openbao.injector.resources.limits.cpustring100m
openbao.injector.resources.limits.memorystring128Mi
openbao.injector.resources.requests.cpustring50m
openbao.injector.resources.requests.memorystring64Mi
openbao.nameOverrideOverride the name of OpenBao resourcesstringopenbao
openbao.secretStore.auth.kubernetes.mountPathOpenBao auth method mount pathstringkubernetes
openbao.secretStore.auth.kubernetes.roleOpenBao role name for authentication. Use openchoreo-secret-writer-role for PushSecrets support.stringopenchoreo-secret-writer-role
openbao.secretStore.auth.kubernetes.serviceAccountNameServiceAccount name for OpenBao authenticationstringexternal-secrets-openbao
openbao.secretStore.auth.kubernetes.serviceAccountNamespaceNamespace of the ServiceAccount for OpenBao authentication. Defaults to release namespace.string
openbao.secretStore.nameName of the ClusterSecretStore resourcestringopenbao
openbao.secretStore.pathOpenBao secrets engine pathstringsecret
openbao.secretStore.versionOpenBao KV secrets engine version (v1 or v2)stringv2
openbao.server.dev.devRootTokenRoot token for dev mode. Only used in development.stringroot
openbao.server.dev.enabledEnable OpenBao dev mode (in-memory storage, auto-unsealed)booleanfalse
openbao.server.dev.logLevelLog level for OpenBao serverobjectinfo
openbao.server.image.tagImage tag to use for OpenBao serverstring2.4.4
openbao.server.readinessProbe.exec.commandarray
openbao.server.readinessProbe.failureThresholdinteger3
openbao.server.readinessProbe.initialDelaySecondsinteger15
openbao.server.readinessProbe.periodSecondsinteger10
openbao.server.readinessProbe.timeoutSecondsinteger15
openbao.server.resources.limits.cpustring100m
openbao.server.resources.limits.memorystring128Mi
openbao.server.resources.requests.cpustring50m
openbao.server.resources.requests.memorystring64Mi

Wait Job​

Wait job configuration for post-install hooks

ParameterDescriptionTypeDefault
waitJob.imageContainer image used for wait jobs (must contain kubectl)stringbitnamilegacy/kubectl:1.32.4