Documentation ¶
Overview ¶
Package v1beta1 is the v1beta1 version of the API.
Index ¶
Constants ¶
const ( ValuesFromKindConfigmap = "ConfigMap" ValuesFromKindSecret = "Secret" )
Variables ¶
var ( GroupVersion = SchemeGroupVersion // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: plugins.GroupName, Version: "v1beta1"}
SchemeGroupVersion is group version used to register these objects.
Functions ¶
func RemoveNulls ¶ added in v1.23.0
func RemoveNulls(m any)
https://github.com/helm/helm/blob/bed1a42a398b30a63a279d68cc7319ceb4618ec3/pkg/chartutil/coalesce.go#L37 helm CoalesceValues cant handle nested null,like `{a: {b: null}}`, which want to be `{}`
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type BundleKind ¶ added in v1.23.0
type BundleKind string
+kubebuilder:validation:Enum=helm;kustomize;template
const ( BundleKindHelm BundleKind = "helm" BundleKindKustomize BundleKind = "kustomize" BundleKindTemplate BundleKind = "template" )
type ManagedResource ¶ added in v1.23.0
type ManagedResource struct { APIVersion string `json:"apiVersion,omitempty"` Kind string `json:"kind,omitempty"` Namespace string `json:"namespace,omitempty"` Name string `json:"name,omitempty"` }
func (*ManagedResource) DeepCopy ¶ added in v1.23.0
func (in *ManagedResource) DeepCopy() *ManagedResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedResource.
func (*ManagedResource) DeepCopyInto ¶ added in v1.23.0
func (in *ManagedResource) DeepCopyInto(out *ManagedResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Plugin ¶
type Plugin struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PluginSpec `json:"spec,omitempty"` Status PluginStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Kind",type="string",JSONPath=".spec.kind",description="Kind of the bundle" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase",description="Status of the bundle" +kubebuilder:printcolumn:name="Namespace",type="string",JSONPath=".status.namespace",description="Install Namespace of the bundle" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".status.version",description="Version of the bundle" +kubebuilder:printcolumn:name="AppVersion",type="string",JSONPath=".status.appVersion",description="app version of the bundle" +kubebuilder:printcolumn:name="UpgradeTimestamp",type="date",JSONPath=".status.upgradeTimestamp",description="UpgradeTimestamp of the bundle" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="CreationTimestamp of the bundle"
func (*Plugin) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Plugin.
func (*Plugin) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Plugin) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PluginList ¶
type PluginList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Plugin `json:"items"` }
+kubebuilder:object:root=true
func (*PluginList) DeepCopy ¶
func (in *PluginList) DeepCopy() *PluginList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginList.
func (*PluginList) DeepCopyInto ¶
func (in *PluginList) DeepCopyInto(out *PluginList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PluginList) DeepCopyObject ¶
func (in *PluginList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PluginSpec ¶ added in v1.23.0
type PluginSpec struct { // Disabled indicates that the bundle should not be installed. Disabled bool `json:"disabled,omitempty"` // Kind bundle kind. Kind BundleKind `json:"kind,omitempty"` // URL is the URL of helm repository, git clone url, tarball url, s3 url, etc. // +kubebuilder:validation:Required URL string `json:"url,omitempty"` // Version is the version of helm chart, git revision, etc. // +kubebuilder:validation:Required Version string `json:"version,omitempty"` // Chart is the name of the chart to install. Chart string `json:"chart,omitempty"` // Path is the path in a tarball to the chart/kustomize. Path string `json:"path,omitempty"` // InstallNamespace is the namespace to install the bundle into. // If not specified, the bundle will be installed into the namespace of the bundle. InstallNamespace string `json:"installNamespace,omitempty"` // Dependencies is a list of bundles that this bundle depends on. // The bundle will be installed after all dependencies are exists. Dependencies []corev1.ObjectReference `json:"dependencies,omitempty"` // dependends on other bundle // Values is a nested map of helm values. // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:Optional Values Values `json:"values,omitempty"` // ValuesFiles is a list of references to helm values files. // Ref can be a configmap or secret. // +kubebuilder:validation:Optional ValuesFrom []ValuesFrom `json:"valuesFrom,omitempty"` }
func (*PluginSpec) DeepCopy ¶ added in v1.23.0
func (in *PluginSpec) DeepCopy() *PluginSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginSpec.
func (*PluginSpec) DeepCopyInto ¶ added in v1.23.0
func (in *PluginSpec) DeepCopyInto(out *PluginSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PluginStatus ¶ added in v1.23.0
type PluginStatus struct { // Phase is the current state of the release Phase Phase `json:"phase,omitempty"` // Message is the message associated with the status // In helm, it's the notes contents. Message string `json:"message,omitempty"` // Values is a nested map of final helm values. // +kubebuilder:pruning:PreserveUnknownFields Values Values `json:"values,omitempty"` // Version is the version of the bundle. // In helm, Version is the version of the chart. Version string `json:"version,omitempty"` // AppVersion is the app version of the bundle. AppVersion string `json:"appVersion,omitempty"` // Namespace is the namespace where the bundle is installed. Namespace string `json:"namespace,omitempty"` // CreationTimestamp is the first creation timestamp of the bundle. CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty"` // UpgradeTimestamp is the time when the bundle was last upgraded. UpgradeTimestamp metav1.Time `json:"upgradeTimestamp,omitempty"` // Resources is a list of resources created/managed by the bundle. Resources []ManagedResource `json:"resources,omitempty"` }
func (*PluginStatus) DeepCopy ¶ added in v1.23.0
func (in *PluginStatus) DeepCopy() *PluginStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginStatus.
func (*PluginStatus) DeepCopyInto ¶ added in v1.23.0
func (in *PluginStatus) DeepCopyInto(out *PluginStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Values ¶ added in v1.23.0
func (*Values) DeepCopyInto ¶ added in v1.23.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Values) MarshalJSON ¶ added in v1.23.0
func (*Values) UnmarshalJSON ¶ added in v1.23.0
type ValuesFrom ¶ added in v1.23.0
type ValuesFrom struct { // Kind is the type of resource being referenced // +kubebuilder:validation:Enum=ConfigMap;Secret Kind string `json:"kind"` // Name is the name of resource being referenced Name string `json:"name"` // +kubebuilder:validation:Optional Namespace string `json:"namespace,omitempty"` // An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. // +kubebuilder:validation:Optional Prefix string `json:"prefix,omitempty"` // Optional set to true to ignore references not found error Optional bool `json:"optional,omitempty"` }
func (*ValuesFrom) DeepCopy ¶ added in v1.23.0
func (in *ValuesFrom) DeepCopy() *ValuesFrom
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValuesFrom.
func (*ValuesFrom) DeepCopyInto ¶ added in v1.23.0
func (in *ValuesFrom) DeepCopyInto(out *ValuesFrom)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.