Skip to main content

Kubernetes Manifest

Properties

PropertyDescriptionValuesExample
type
string
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"
name
string
component name Unique identifier for the component within the app. Used for referencing in dependencies and templates✅ Required"database", "api-server", "frontend"
namespace
string
Kubernetes namespace Kubernetes namespace where the manifest will be deployed. Supports template variables✅ Required"default", "clickhouse", "{{.nuon.install.id}}"
var_name
string
variable name for component output Optional name to use when storing component outputs as variables. If not specified, uses the component nameOptional"db_endpoint", "api_host"
dependencies
array
component dependencies List of other components that must be deployed before this component. Automatically extracted from template referencesOptional"database", "infrastructure"
operation_roles
array
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-
manifest
string
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"
kustomize
KustomizeConfig
Kustomize configuration Configuration for building manifests from a kustomize overlay. Mutually exclusive with manifest. Requires either public_repo or connected_repoOptional-
public_repo
PublicRepoConfig
public repository with kustomize source Configuration for a public Git repository containing kustomize overlays. Only valid when using kustomize, not inline manifestsOptional-
connected_repo
ConnectedRepoConfig
connected repository with kustomize source Configuration for a Nuon-connected private repository containing kustomize overlays. Only valid when using kustomize, not inline manifestsOptional-
drift_schedule
string
drift detection schedule Cron expression for periodic drift detection. If not set, drift detection is disabledOptional"0 2 * * *"
build_timeout
string
build operation timeout Duration string for build operations (e.g., “30m”, “1h”). Default: 5m. Max: 1hOptional
Default: "5m"
"30m", "1h"
deploy_timeout
string
deploy operation timeout Duration string for deploy operations (e.g., “30m”, “1h”). Default: 15m. Max: 1hOptional
Default: "15m"
"30m", "1h"

operation_roles

PropertyDescriptionValuesExample
operation
string
operation type Type of operation: provision, deprovision, update, reprovision, or trigger✅ Required"provision", "deploy", "deprovision"
role
string
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

PropertyDescriptionValuesExample
path
string
kustomization directory path Path to the kustomization directory, relative to the source root.✅ Required"overlays/production", "."
patches
array
additional patch files Additional patch files to apply after kustomize build.Optional"patches/namespace.yaml"
enable_helm
boolean
enable Helm chart inflation Enable Helm chart inflation during kustomize build.Optional-
load_restrictor
string
file load restrictor Controls how kustomize loads files. Options: none, rootOnly. Default: rootOnly.Optional"rootOnly", "none"

public_repo

PropertyDescriptionValuesExample
repo
string
repository URL HTTPS URL to the public Git repository✅ Required"https://github.com/user/repo.git", "https://github.com/user/terraform-modules.git"
directory
string
directory path Path within the repository to the configuration files✅ Required"terraform", "infra/terraform"
branch
string
Git branch Git branch to checkout and use for deployments✅ Required"main", "develop", "production"

connected_repo

PropertyDescriptionValuesExample
repo
string
repository identifier Identifier of the connected repository configured in the Nuon platform✅ Required"my-repo", "production-infrastructure"
directory
string
directory path Path within the repository to the configuration files✅ Required"terraform", "infra/terraform"
branch
string
Git branch Git branch to checkout and use for deployments✅ Required"main", "develop", "production"