Component
Component is a chart-backed resource format identified by:
apiVersion: components.nyl.niklasrosenstein.github.com/v1- dynamic
kind(not a fixed literal)
Unlike fixed resource kinds, kind encodes either:
- a local component path (
<apiVersion>/<kind>) - a remote shortcut (
<base>[#<name>][@<version>])
Resource Shape
Section titled “Resource Shape”apiVersion: components.nyl.niklasrosenstein.github.com/v1kind: example/v1/Nginxmetadata: name: web namespace: defaultspec: replicaCount: 2Semantics
Section titled “Semantics”kind: chart target (local or remote shortcut)metadata.name: Helm release namemetadata.namespace: Helm release namespace (defaults todefault)spec: Helm values payload
Local Resolution
Section titled “Local Resolution”With:
[project]components_search_paths = ["components"]kind: example/v1/Nginx resolves to:
components/example/v1/Nginx/Chart.yamlNyl checks components_search_paths in order and uses the first match.
Alias Mapping
Section titled “Alias Mapping”project.aliases can map regular resource types to component targets:
[project.aliases]"myapi.io/v1/MyKind" = "oci://registry-1.docker.io/bitnamicharts/nginx@18.2.4"When an alias matches, Nyl resolves directly to the alias target.
Remote Shortcut Parsing
Section titled “Remote Shortcut Parsing”Shortcut format:
<base>[#<name>][@<version>]Remote bases:
http://orhttps://oci://git+
For complete shortcut examples and guidance, see Remote Shortcuts & Aliases.