Skip to content
ReferenceHelmChart

HelmChart

k8s.nyl/v1

Kubernetes Rendering Resources · Download JSON Schema · Usage guide

Expands a local or remote Helm chart into Kubernetes manifests.

Nyl renders the chart and recursively processes its output. Cluster and target values are template inputs; pass values to the chart explicitly through spec.values.

When needed

Use this optional resource to render a Helm chart with explicit chart coordinates and values.

If omitted

Nyl does not discover and render charts automatically. Invoke charts through a HelmChart or a component resource; projects containing only authored Kubernetes manifests need neither.

Example

apiVersion: k8s.nyl/v1
kind: HelmChart
metadata:
  name: workloads
  namespace: workloads
spec:
  chart:
    name: ./charts/app
  values:
    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 version (e.g., “k8s.nyl/v1”)

const: "k8s.nyl/v1"

kind

Required · string

Resource kind (always “HelmChart”)

const: "HelmChart"

metadata

Required · object

Kubernetes metadata

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

Required · object

Chart specification

Unknown fields are rejected.

spec.chart

Required · object

Reference to the chart

Unknown fields are rejected.

spec.chart.name

Optional · string or null

Universal name field with context-dependent meaning

When repository is set:

  • For Helm/OCI repositories: Specifies the chart name (required)
  • For Git repositories: Specifies subdirectory path within repo (optional)

When repository is NOT set:

  • Treated as local filesystem path (absolute or relative)

Examples:

  • Local filesystem: ”./charts/mychart”, “/opt/charts/app”
  • Git subpath: “charts/mychart”, “deploy/helm/app”
  • Helm/OCI chart: “nginx”, “prometheus”

spec.chart.repository

Optional · string or null

Repository URL for Git, OCI, or traditional Helm repositories

Protocol prefixes indicate the repository type:

  • git+https:// or git+git@ - Git repository
  • oci:// - OCI registry
  • https:// or no prefix - Traditional Helm repository

Examples:

spec.chart.version

Optional · string or null

Chart version or Git reference

For Helm repositories: Specifies the chart version (required) For Git repositories: Specifies the Git reference - branch, tag, or commit (optional, defaults to HEAD)

Examples:

  • Branch: “main”, “develop”
  • Tag: “v1.0.0”, “1.2.3”
  • Commit: “abc123…” (full or short hash)

spec.includeCrds

Optional · boolean or null

Whether to include CRDs from the chart’s crds/ directory in the rendered output. Defaults to true when unset.

spec.values

Optional · any value

Values to pass to the chart

default: null