Helm
Properties
| Property | Description | Values | Example |
|---|---|---|---|
typestring | component type Type of component to deploy. Determines which configuration block is required (helm_chart, terraform_module, docker_build, container_image, kubernetes_manifest, or job) | ✅ Required | "terraform_module", "helm_chart", "docker_build", "container_image", "kubernetes_manifest" |
namestring | component name Unique identifier for the component within the app. Used for referencing in dependencies and templates | ✅ Required | "database", "api-server", "frontend" |
chart_namestring | Helm chart name Name of the Helm chart to deploy. Must match the chart name in the repository or Helm repo | ✅ Required | "karpenter-nodepools", "prometheus", "cert-manager" |
var_namestring | variable name for component output Optional name to use when storing component outputs as variables. If not specified, uses the component name | Optional | "db_endpoint", "api_host" |
dependenciesarray | component dependencies List of other components that must be deployed before this component. Automatically extracted from template references | Optional | "database", "infrastructure" |
operation_rolesarray | operation-specific IAM role assignments Map of component operations to IAM role names. Allows using different roles for different operations (provision, deprovision, update). Roles must be defined … | Optional | - |
valuesobject | inline Helm values Map of Helm values as key-value pairs. These are passed to helm install/upgrade as —set arguments. Supports Nuon templating | Optional | - |
values_filearray | Helm values files Array of external Helm values files to load. Each entry can specify a path to a local file or inline contents. Supports Nuon templating and external file sources | Optional | - |
public_repoPublicRepoConfig | public repository with the Helm chart Configuration for a public Git repository containing the Helm chart source. Mutually exclusive with connected_repo and helm_repo | Optional | - |
connected_repoConnectedRepoConfig | connected repository with the Helm chart Configuration for a Nuon-connected private repository containing the Helm chart source. Mutually exclusive with public_repo and helm_repo | Optional | - |
helm_repoHelmRepoConfig | Helm chart repository Configuration for pulling a chart from a Helm repository (e.g., a public chart registry). Mutually exclusive with public_repo and connected_repo | Optional | - |
namespacestring | Kubernetes namespace to deploy into Kubernetes namespace where the Helm release will be installed. Defaults to {{.nuon.install.id}}. Supports Nuon templating | Optional | "clickhouse", "monitoring", "{{.nuon.install.id}}" |
storage_driverstring | Helm storage driver Backend storage driver for Helm release metadata. Defaults to configmap | Optional"configmap", "secret" | "configmap" |
take_ownershipboolean | adopt existing Helm releases If true, Nuon will adopt an existing Helm release with the same name and namespace that was not originally managed by Nuon. Useful when migrating existing deployments t… | Optional | - |
drift_schedulestring | drift detection schedule Cron expression for periodic drift detection. If not set, drift detection is disabled | Optional | "0 2 * * *" |
build_timeoutstring | build operation timeout Duration string for build operations (e.g., “30m”, “1h”). Default: 5m. Max: 1h | Optional Default: "5m" | "30m", "1h" |
deploy_timeoutstring | deploy operation timeout Duration string for deploy operations (e.g., “30m”, “1h”). Default: 30m. Max: 1h | Optional Default: "30m" | "30m", "1h" |
valuearray | deprecated: use values map instead Deprecated: Array of name/value pairs for Helm values. Use the values map instead | Optional | - |
operation_roles
| Property | Description | Values | Example |
|---|---|---|---|
operationstring | operation type Type of operation: provision, deprovision, update, reprovision, or trigger | ✅ Required | "provision", "deploy", "deprovision" |
rolestring | IAM role name Name of the IAM role to use for this operation (not ARN). Role must exist in install stack outputs | ✅ Required | "{{.nuon.install.id}}-maintenance", "{{.nuon.install.id}}-provision" |
values_file
| Property | Description | Values | Example |
|---|---|---|---|
sourcestring | [DEPRECATED: use ‘path’ instead] | Optional | - |
contentsstring | Contents of the values file. | Optional | "./values/whoami.yaml" |
pathstring | Path to the values file. | Optional | "./values/clickhouse-operator.yaml", "./values/coder.yaml" |
public_repo
| Property | Description | Values | Example |
|---|---|---|---|
repostring | repository URL HTTPS URL to the public Git repository | ✅ Required | "https://github.com/user/repo.git", "https://github.com/user/terraform-modules.git" |
directorystring | directory path Path within the repository to the configuration files | ✅ Required | "terraform", "infra/terraform" |
branchstring | Git branch Git branch to checkout and use for deployments | ✅ Required | "main", "develop", "production" |
connected_repo
| Property | Description | Values | Example |
|---|---|---|---|
repostring | repository identifier Identifier of the connected repository configured in the Nuon platform | ✅ Required | "my-repo", "production-infrastructure" |
directorystring | directory path Path within the repository to the configuration files | ✅ Required | "terraform", "infra/terraform" |
branchstring | Git branch Git branch to checkout and use for deployments | ✅ Required | "main", "develop", "production" |
helm_repo
| Property | Description | Values | Example |
|---|---|---|---|
repo_urlstring | URL of the helm chart repository | ✅ Required | "https://prometheus-community.github.io/helm-charts" |
chartstring | name of the chart in the repository | ✅ Required | "kube-prometheus-stack" |
versionstring | version of the chart to use | Optional | "79.4.1" |
value
| Property | Description | Values | Example |
|---|---|---|---|
namestring | helm value name | Optional | "replicaCount", "image.tag" |
valuestring | helm value | Optional | "3", "{{.nuon.install.id}}" |