The Release Kubernetes resources
Release
apiVersion
String, required: Always kubocd.kubotal.io/v1alpha1
kind
String, required: Always `Release'
metadata
Map, required: Refer to the Kubernetes API documentation for the fields of the metadata field.
spec
Release.spec, required: See Release.spec below
Release.spec
description
String, default: {Package.description}: A short description.
package
Release.spec.package, required: Where to fetch the Package OCI image. Description in Release.spec.package
contexts
List(CrossNamespaceReference): A list of supplementary contexts merged with the default ones.
If the namespace of the context is not defined, it will take the Release.metadata.namespace.
protected
Bool, Default: {Package.protected}: If true, prevent deletion. Need the KuboCD webhook to be effective
parameters
Template(Map), optional: The deployments parameters. Must comply to the Package.parameters.schema.
It is a template, thus allowing variable substitution. But, only the root elements .Context is present in the data model.
specPatchByModule
Map(Map), optional: A patch applied to the spec section of the Flux HelmRelease resource of the specified module.
It allows you to set any parameters that are not exposed by KuboCD at the Release level
You will find an example here
(Modification of the helmRelease timeout for the redis module.)
targetNamespace
String, default: {Release.metadata.namespace}: The namespace to deploy the application into
createNamespace
Bool, default: false: Allow targetNamespace creation if it does not exists.
roles
List(string), default: []: This list is appended to the Package.roles list
dependencies
List(string), default: []: This list is appended to the Package.dependencies list
skipDefaultContext
Bool, default: false: If set, this Release will ignore the global default contexts as well as those defined at the namespace level.
Only the contexts explicitly listed in the Release resource will be taken into account.
debug
Release.spec.debug, optional: Refer to Release.spec.debug below
Release.spec.package
repository
String, required: Part of OCI url oci://
tag
String, required: Part of OCI url oci://
Other attributes
When a Release resource is created, a Flux OCIRepository resource is also created to reference the Package's OCI image.
This object supports many configuration attributes. These attributes can be overridden at the Release level and will be passed through as-is.
Refer to the Flux documentation for OCIRepositorySpec for full details.
Here is the list of supported forwarded attributes:
- interval
- timeout
- secretRef
- certSecretRef
- proxySecretRef
- provider
- verify
- serviceAccountName
- insecure
- suspend
Release.spec.debug
dumpContext
Bool, default: false: If set, the computed context is saved in the status field. This can be useful for debugging.
Anyway, the context may become quite large. Use this debug mode sparingly. You may prefer to use the ’render` CLI command.
dumpParameters
Bool, default: false: If set, the computed parameters are saved in the status field. Useful in case Release.spec.parameters is a template.
CrossNamespaceReference
name
String, required:
namespace
String, optional: