Skip to content
ReferenceComponent

Component

components.k8s.nyl/v1 · Dynamic kind

Kubernetes Rendering Resources · Download JSON Schema · Usage guide

Expands a chart identified by a dynamic resource kind into Kubernetes manifests.

The kind is a local component path or remote chart shortcut, not the literal Component. The spec supplies chart values; the selected chart defines its input contract.

When needed

Use this optional resource to invoke a chart through a local component kind or a remote chart shortcut.

If omitted

Charts in component search paths are not rendered until invoked. A HelmChart can render a chart through explicit coordinates instead; authored Kubernetes manifests need no component invocation.

Example

apiVersion: components.k8s.nyl/v1
kind: app/v1/WebService
metadata:
  name: workloads
  namespace: workloads
spec:
  replicaCount: 2

Fields

Required means required within the containing object. Optional and nullable are distinct; contextual defaults and requirements are explained with each field.

Unknown fields are rejected.

apiVersion

Required · string

API group and version for chart-backed component invocations.

const: "components.k8s.nyl/v1"

kind

Required · string

Relative path under components/ that identifies the Helm chart

metadata

Required · object

Helm release name, namespace, labels, and annotations.

Unknown fields are rejected.

metadata.annotations

Optional · object

Annotations

metadata.annotations[key]

Optional · string

metadata.labels

Optional · object

Labels

metadata.labels[key]

Optional · string

metadata.name

Required · string

Resource name

metadata.namespace

Optional · string or null

Namespace (optional)

spec

Optional · any value

Helm values — defaults to an empty object when omitted

default: {}

valueImports

Optional · object or null

Opt this invocation out of the value imports its component declares.

A local component may declare value imports in nyl-component.yaml, which supply chart value defaults from the effective Cluster and DeploymentTarget values. Imports are enabled unless this field turns them off; invocation spec values override imported defaults either way.

Unknown fields are rejected.

valueImports.enabled

Optional · boolean

false applies none of the component’s value imports. Defaults to true.

default: true

valueImports.exclude

Optional · array

Names of value imports to skip. Every name must be declared by the component.

valueImports.exclude[]

Required · string