Skip to main content

About custom resources

You can include custom resources in your releases to configure how Replicated builds, distributes, and installs your application. For example, custom resources define the configuration screen that customers see, the container images included in air gap bundles and in the image list for customer-managed (BYO) registries, preflight checks, support bundles, and backups.

Custom resources are packaged with your release but are not deployed to the cluster. The exception is specs that you package in a labeled Secret in your Helm chart, such as Support Bundle and Redactor specs, which are deployed to the cluster as Secrets. They are read by the Replicated Vendor Portal, the Replicated installers (Embedded Cluster, KOTS, and kURL), and the Troubleshoot kubectl plugins. Which custom resources apply depends on how your customers install your application. See Supported installation methods.

note

Several custom resources use the kots.io API group, such as the kots.io/v1beta2 HelmChart custom resource. The kots.io name is a historical naming convention. These custom resources are not limited to KOTS installations. For example, Embedded Cluster v3 requires the HelmChart custom resource, and the Vendor Portal uses the HelmChart builder key to generate the list of images for Helm air gap installations.

Custom resources​

The following custom resources can be used in releases distributed with Replicated:

API Group/VersionKindDescription
app.k8s.io/v1beta1SIG ApplicationDefines links to the application. The links display on the Admin Console dashboard, or for Embedded Cluster v3, on the Installation Complete page and in the admin console.
embeddedcluster.replicated.com/v1beta1ConfigDefines a Replicated Embedded Cluster distribution
cluster.kurl.sh/v1beta1InstallerDefines a Replicated kURL distribution
kots.io/v1beta1ApplicationAdds metadata to the user-facing UI for installations with a Replicated installer
kots.io/v1beta1ConfigDefines a user-facing configuration screen for installations with a Replicated installer
kots.io/v1beta1ConfigValuesProvides values for the fields defined in the Config custom resource, such as for automated installations
kots.io/v1beta2HelmChartIdentifies an instantiation of a Helm chart
kots.io/v1beta1HelmChart (Deprecated)Identifies an instantiation of a Helm chart. Use kots.io/v1beta2 instead.
kots.io/v1beta1LintConfigCustomizes the default rule levels for the release linter
troubleshoot.sh/v1beta2
troubleshoot.sh/v1beta3
PreflightDefines collectors and analyzers for preflight checks. The v1beta3 API version applies only to the Preflight custom resource.
troubleshoot.sh/v1beta2RedactorDefines custom redactors for support bundles
troubleshoot.sh/v1beta2Support BundleDefines collectors and analyzers for support bundles. v1beta3 is not supported for support bundles on any installer.
velero.io/v1BackupDefines a Velero backup request
velero.io/v1RestoreDefines a Velero restore request for disaster recovery with Embedded Cluster

Supported installation methods​

The following table shows which custom resources apply to each installation method. KOTS includes installations with KOTS in an existing cluster and with Replicated kURL. HelmChart v2 (kots.io/v1beta2) is the current version of the HelmChart custom resource.

Custom resourceHelm CLIEmbedded Cluster v3Embedded Cluster v2KOTS
ApplicationOptional. See When to use additionalImages.Partial. See Changes to Application custom resource fields.YesYes
ConfigNoYesYesYes
ConfigValuesNoWith the --config-values flag onlyWith the --config-values flagWith the --config-values flag
HelmChart v2Recommended. See builder.RequiredYesYes
HelmChart v1 (deprecated)Deprecated. Use HelmChart v2.Not supported. Use HelmChart v2.Deprecated. Use HelmChart v2.Deprecated. Use HelmChart v2.
PreflightIn a labeled Secret. See Helm and troubleshoot template example.v1beta3 onlyv1beta2, and v1beta3 in 2.19.16 and laterv1beta2, and v1beta3 in v1.134.0 and later
RedactorIn a labeled Secret. See Redactor.YesYesYes
Support BundleIn a labeled Secret. See Helm and troubleshoot template example.In a labeled Secret. See Helm and troubleshoot template example.YesYes
BackupNoYes. See Back up and restore Embedded Cluster v3.YesYes
RestoreNoOnly when the release also includes a BackupOnly when the release also includes a BackupNo
Embedded Cluster ConfigNoYesYes. See Embedded Cluster Config (v2).No
kURL InstallerNoNoNokURL installations only
SIG ApplicationNoYesYesYes

The LintConfig custom resource applies to release linting, not to installation, so it isn't included in this table. For more information, see LintConfig.