Kubernetes Manifest
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"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" |
namespacestring | Kubernetes namespace Kubernetes namespace where the manifest will be deployed. Supports template variables | ✅ Required | "default", "clickhouse", "{{.nuon.install.id}}" |
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" |
labelsobject | Key/value labels used to organize and filter components. Metadata only; does not affect deployment | Optional | - |
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 | - |
toggleableboolean | - | Optional | - |
default_enabledboolean | - | Optional | - |
kubernetes_contextstring | kubernetes context binding Optional. Name of a kubernetes_context defined at the app level. If set, the component targets the cluster produced by that context’s source component. If omitted, the co… | Optional | "data-cluster" |
manifeststring | Kubernetes manifest Path to a YAML manifest file or inline manifest content for Kubernetes resources. Supports templating with variables like {{.nuon.install.id}}. Mutually exclusive with kusto… | Optional | "./manifests/deployment.yaml" |
kustomizeKustomizeConfig | Kustomize configuration Configuration for building manifests from a kustomize overlay. Mutually exclusive with manifest. Requires either public_repo or connected_repo | Optional | - |
public_repoPublicRepoConfig | public repository with kustomize source Configuration for a public Git repository containing kustomize overlays. Only valid when using kustomize, not inline manifests | Optional | - |
connected_repoConnectedRepoConfig | connected repository with kustomize source Configuration for a Nuon-connected private repository containing kustomize overlays. Only valid when using kustomize, not inline manifests | Optional | - |
drift_schedulestring | drift detection schedule Cron expression for periodic drift detection. If not set, drift detection is disabled | Optional | "0 2 * * *" |
healthComponentHealthConfig | component health configuration Live health checking configuration for this component. Health checking is enabled by default; use this block to tune the stabilization window or make deploys block on… | Optional | - |
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: 15m. Max: 1h | Optional Default: "15m" | "30m", "1h" |
max_auto_retriesinteger | maximum automatic retry attempts on deploy failure Maximum number of automatic retry attempts for failed deployments. Set to 0 to disable auto-retry. Default: 0 (disabled) | Optional Default: "0" | "3", "5" |
skip_noopsboolean | Skip the deploy step when the plan has no changes (a no-op). Defaults to false | Optional Default: "false" | "true" |
auto_approve_on_policies_passingboolean | Auto-approve the deploy when all policy checks pass. Defaults to false | Optional Default: "false" | "true" |
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" |
kustomize
| Property | Description | Values | Example |
|---|---|---|---|
pathstring | kustomization directory path Path to the kustomization directory, relative to the source root. | ✅ Required | "overlays/production", "." |
patchesarray | additional patch files Additional patch files to apply after kustomize build. | Optional | "patches/namespace.yaml" |
enable_helmboolean | enable Helm chart inflation Enable Helm chart inflation during kustomize build. | Optional | - |
load_restrictorstring | file load restrictor Controls how kustomize loads files. Options: none, rootOnly. Default: rootOnly. | Optional | "rootOnly", "none" |
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" |
health
| Property | Description | Values | Example |
|---|---|---|---|
enabledboolean | enable live health checking Whether live health checking and the health verdict apply to this component. Default: true | Optional Default: "true" | "false" |
stabilization_windowstring | health stabilization window How long the component must hold healthy after a deploy applies before the deploy step is considered done. Duration string (e.g., “3m”, “10m”). Default: 3m. Max: 1h | Optional Default: "3m" | "3m", "10m" |
block_deployboolean | fail the deploy when health does not stabilize When true, the deploy step fails if health does not stabilize inside the window. When false, the step still completes and only records what health did… | Optional Default: "false" | "true" |
probesarray | synthetic health probes Probes the runner executes from inside the install to assert the component is actually serving. Each probe reports as its own health resource, and a failing probe makes the … | Optional | - |
required_checksarray | - | Optional | - |