Skip to main content

Helm charts

K8S::Helm::Release installs a chart through the embedded Helm SDK and manages the resulting release as one resource. formae owns the release; Helm owns the objects the chart renders, so hooks, hook weights, CRD install ordering and revision history all behave as Helm intends. No helm binary and no Pkl reader are needed.
The objects a release renders are hidden from discovery, since the release stands in for them. See Deploy a Helm chart for the full model, the field reference, and how to migrate from the removed HelmChart wrapper.

Supported resources

CRDs and arbitrary custom resources are supported via K8S::Apiextensions::CustomResourceDefinition (register the CRD) and the generic K8S::Custom::Resource (manage instances of any CRD kind). Neither is enumerated during discovery. The full per-kind schema lives in the plugin repo.

Discovery filters

formae discover skips a default set of system-installed resources so a fresh managed cluster doesn’t drag control-plane noise into your inventory. Skipped by default:
  • System namespaces: kube-system, kube-public, kube-node-lease
  • Default ServiceAccounts and their tokens
  • Controller-owned Pods (ReplicaSet, DaemonSet, Job, etc.)
  • system:* ClusterRoles and ClusterRoleBindings
  • Bootstrap FlowSchemas
  • Cloud-provider default StorageClasses (gp2, standard, local-path)
  • Cloud-provider admission webhooks prefixed eks-, gke-, aks-
Want to manage one of these resources instead of skipping it? You’ll need to fork the plugin, remove the matching entry from DiscoveryFilters(), and rebuild.