Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package,register +k8s:openapi-gen=true +groupName=extensions.kubeblocks.io
Package v1alpha1 contains API Schema definitions for the extensions v1alpha1 API group +kubebuilder:object:generate=true +groupName=extensions.kubeblocks.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- func SetKubeServerVersion(major, minor, patch string)
- func SetKubeServerVersionWithDistro(major, minor, patch, distro string)
- type Addon
- type AddonDefaultInstallSpecItem
- type AddonInstallExtraItem
- type AddonInstallSpec
- type AddonInstallSpecItem
- type AddonList
- type AddonPhase
- type AddonSelectorKey
- type AddonSpec
- type AddonStatus
- type AddonType
- type CliPlugin
- type DataObjectKeySelector
- type HelmInstallOptions
- type HelmInstallValues
- type HelmJSONValueMapType
- type HelmTypeInstallSpec
- func (r *HelmTypeInstallSpec) BuildContainerArgs(helmContainer *corev1.Container, installValues HelmInstallValues) error
- func (r *HelmTypeInstallSpec) BuildMergedValues(installSpec *AddonInstallSpec) HelmInstallValues
- func (in *HelmTypeInstallSpec) DeepCopy() *HelmTypeInstallSpec
- func (in *HelmTypeInstallSpec) DeepCopyInto(out *HelmTypeInstallSpec)
- type HelmValueMapType
- type HelmValuesMapping
- type HelmValuesMappingExtraItem
- type HelmValuesMappingItem
- type InstallableSpec
- type LineSelectorOperator
- type ResourceMappingItem
- func (in *ResourceMappingItem) DeepCopy() *ResourceMappingItem
- func (in *ResourceMappingItem) DeepCopyInto(out *ResourceMappingItem)
- func (r *ResourceMappingItem) HasCPULimMapping() bool
- func (r *ResourceMappingItem) HasCPUReqMapping() bool
- func (r *ResourceMappingItem) HasMemLimMapping() bool
- func (r *ResourceMappingItem) HasMemReqMapping() bool
- func (r *ResourceMappingItem) HasStorageMapping() bool
- type ResourceReqLimItem
- type ResourceRequirements
- type SelectorRequirement
Constants ¶
const ( // condition types ConditionTypeProgressing = "Progressing" ConditionTypeChecked = "InstallableChecked" ConditionTypeSucceed = "Succeed" ConditionTypeFailed = "Failed" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "extensions.kubeblocks.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = GroupVersion
SchemeGroupVersion is group version used to register these objects.
Functions ¶
func Resource ¶ added in v0.6.0
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
func SetKubeServerVersion ¶
func SetKubeServerVersion(major, minor, patch string)
SetKubeServerVersion provides "_KUBE_SERVER_INFO" viper settings helper function.
func SetKubeServerVersionWithDistro ¶
func SetKubeServerVersionWithDistro(major, minor, patch, distro string)
SetKubeServerVersionWithDistro provides "_KUBE_SERVER_INFO" viper settings helper function.
Types ¶
type Addon ¶
type Addon struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AddonSpec `json:"spec,omitempty"` Status AddonStatus `json:"status,omitempty"` }
Addon is the Schema for the add-ons API.
func (*Addon) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Addon.
func (*Addon) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Addon) DeepCopyObject ¶ added in v0.6.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Addon) GetExtraNames ¶
GetExtraNames extracts extra items' name.
type AddonDefaultInstallSpecItem ¶
type AddonDefaultInstallSpecItem struct { AddonInstallSpec `json:",inline"` // Indicates the default selectors for add-on installations. If multiple selectors are provided, // all selectors must evaluate to true. // // +optional Selectors []SelectorRequirement `json:"selectors,omitempty"` }
func (*AddonDefaultInstallSpecItem) DeepCopy ¶ added in v0.6.0
func (in *AddonDefaultInstallSpecItem) DeepCopy() *AddonDefaultInstallSpecItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonDefaultInstallSpecItem.
func (*AddonDefaultInstallSpecItem) DeepCopyInto ¶ added in v0.6.0
func (in *AddonDefaultInstallSpecItem) DeepCopyInto(out *AddonDefaultInstallSpecItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonDefaultInstallSpecItem) GetSelectorsStrings ¶
func (r *AddonDefaultInstallSpecItem) GetSelectorsStrings() []string
GetSelectorsStrings extracts selectors to string representations.
type AddonInstallExtraItem ¶
type AddonInstallExtraItem struct { AddonInstallSpecItem `json:",inline"` // Specifies the name of the item. // // +kubebuilder:validation:Required Name string `json:"name"` }
func (*AddonInstallExtraItem) DeepCopy ¶ added in v0.6.0
func (in *AddonInstallExtraItem) DeepCopy() *AddonInstallExtraItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallExtraItem.
func (*AddonInstallExtraItem) DeepCopyInto ¶ added in v0.6.0
func (in *AddonInstallExtraItem) DeepCopyInto(out *AddonInstallExtraItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonInstallSpec ¶
type AddonInstallSpec struct { AddonInstallSpecItem `json:",inline"` // Can be set to true if there are no specific installation attributes to be set. // // +optional Enabled bool `json:"enabled,omitempty"` // Specifies the installation specifications for extra items. // // +patchMergeKey=name // +patchStrategy=merge,retainKeys // +listType=map // +listMapKey=name // +optional ExtraItems []AddonInstallExtraItem `json:"extras,omitempty"` }
func (*AddonInstallSpec) DeepCopy ¶ added in v0.6.0
func (in *AddonInstallSpec) DeepCopy() *AddonInstallSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallSpec.
func (*AddonInstallSpec) DeepCopyInto ¶ added in v0.6.0
func (in *AddonInstallSpec) DeepCopyInto(out *AddonInstallSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonInstallSpec) GetEnabled ¶
func (r *AddonInstallSpec) GetEnabled() bool
GetEnabled provides the Enabled property getter.
func (*AddonInstallSpec) HasSetValues ¶
func (r *AddonInstallSpec) HasSetValues() bool
func (*AddonInstallSpec) IsDisabled ¶
func (r *AddonInstallSpec) IsDisabled() bool
type AddonInstallSpecItem ¶
type AddonInstallSpecItem struct { // Specifies the number of replicas. // // +optional Replicas *int32 `json:"replicas,omitempty"` // Indicates whether the Persistent Volume is enabled or not. // // +optional PVEnabled *bool `json:"persistentVolumeEnabled,omitempty"` // Specifies the name of the storage class. // // +optional StorageClass string `json:"storageClass,omitempty"` // Specifies the tolerations in a JSON array string format. // // +optional Tolerations string `json:"tolerations,omitempty"` // Specifies the resource requirements. // // +optional Resources ResourceRequirements `json:"resources,omitempty"` }
func NewAddonInstallSpecItem ¶
func NewAddonInstallSpecItem() AddonInstallSpecItem
NewAddonInstallSpecItem creates an initialized AddonInstallSpecItem object.
func (*AddonInstallSpecItem) DeepCopy ¶ added in v0.6.0
func (in *AddonInstallSpecItem) DeepCopy() *AddonInstallSpecItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallSpecItem.
func (*AddonInstallSpecItem) DeepCopyInto ¶ added in v0.6.0
func (in *AddonInstallSpecItem) DeepCopyInto(out *AddonInstallSpecItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonInstallSpecItem) IsEmpty ¶
func (r *AddonInstallSpecItem) IsEmpty() bool
type AddonList ¶
type AddonList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Addon `json:"items"` }
AddonList contains a list of add-ons.
func (*AddonList) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonList.
func (*AddonList) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonList) DeepCopyObject ¶ added in v0.6.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AddonPhase ¶
type AddonPhase string
AddonPhase defines addon phases. +enum
const ( AddonDisabled AddonPhase = "Disabled" AddonEnabled AddonPhase = "Enabled" AddonFailed AddonPhase = "Failed" AddonEnabling AddonPhase = "Enabling" AddonDisabling AddonPhase = "Disabling" )
type AddonSelectorKey ¶
type AddonSelectorKey string
AddonSelectorKey are selector requirement key types. +enum +kubebuilder:validation:Enum={KubeGitVersion,KubeVersion,KubeProvider}
const ( KubeGitVersion AddonSelectorKey = "KubeGitVersion" KubeVersion AddonSelectorKey = "KubeVersion" KubeProvider AddonSelectorKey = "KubeProvider" )
type AddonSpec ¶
type AddonSpec struct { // Specifies the description of the add-on. // // +optional Description string `json:"description,omitempty"` // Defines the type of the add-on. The only valid value is 'helm'. // // +unionDiscriminator // +kubebuilder:validation:Required Type AddonType `json:"type"` // Indicates the version of the add-on. // // +optional Version string `json:"version,omitempty"` // Specifies the provider of the add-on. // // +optional Provider string `json:"provider,omitempty"` // Represents the Helm installation specifications. This is only processed // when the type is set to 'helm'. // // +optional Helm *HelmTypeInstallSpec `json:"helm,omitempty"` // Specifies the default installation parameters. // // +kubebuilder:validation:Required // +kubebuilder:validation:MinItems=1 DefaultInstallValues []AddonDefaultInstallSpecItem `json:"defaultInstallValues"` // Defines the installation parameters. // // +optional InstallSpec *AddonInstallSpec `json:"install,omitempty"` // Represents the installable specifications of the add-on. This includes // the selector and auto-install settings. // // +optional Installable *InstallableSpec `json:"installable,omitempty"` // Specifies the CLI plugin installation specifications. // // +optional CliPlugins []CliPlugin `json:"cliPlugins,omitempty"` }
AddonSpec defines the desired state of an add-on. +kubebuilder:validation:XValidation:rule="has(self.type) && self.type == 'Helm' ? has(self.helm) : !has(self.helm)",message="spec.helm is required when spec.type is Helm, and forbidden otherwise"
func (*AddonSpec) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSpec.
func (*AddonSpec) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonSpec) GetSortedDefaultInstallValues ¶
func (r *AddonSpec) GetSortedDefaultInstallValues() []AddonDefaultInstallSpecItem
GetSortedDefaultInstallValues returns DefaultInstallValues items with items that have a provided selector first.
type AddonStatus ¶
type AddonStatus struct { // Defines the current installation phase of the add-on. It can take one of // the following values: `Disabled`, `Enabled`, `Failed`, `Enabling`, `Disabling`. // // +kubebuilder:validation:Enum={Disabled,Enabled,Failed,Enabling,Disabling} Phase AddonPhase `json:"phase,omitempty"` // Provides a detailed description of the current state of add-on API installation. // // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // Represents the most recent generation observed for this add-on. It corresponds // to the add-on's generation, which is updated on mutation by the API Server. // // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` }
AddonStatus defines the observed state of an add-on.
func (*AddonStatus) DeepCopy ¶ added in v0.6.0
func (in *AddonStatus) DeepCopy() *AddonStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonStatus.
func (*AddonStatus) DeepCopyInto ¶ added in v0.6.0
func (in *AddonStatus) DeepCopyInto(out *AddonStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonType ¶
type AddonType string
AddonType defines the addon types. +enum +kubebuilder:validation:Enum={Helm}
const (
HelmType AddonType = "Helm"
)
type CliPlugin ¶ added in v0.6.0
type CliPlugin struct { // Specifies the name of the plugin. // // +kubebuilder:validation:Required Name string `json:"name"` // Defines the index repository of the plugin. // // +kubebuilder:validation:Required IndexRepository string `json:"indexRepository"` // Provides a brief description of the plugin. // // +optional Description string `json:"description,omitempty"` }
func (*CliPlugin) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CliPlugin.
func (*CliPlugin) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataObjectKeySelector ¶
type DataObjectKeySelector struct { // Defines the name of the object being referred to. // // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern:=`^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$` Name string `json:"name"` // need corev1.LocalObjectReference // Specifies the key to be selected. // // +kubebuilder:validation:Required Key string `json:"key"` }
func (*DataObjectKeySelector) DeepCopy ¶ added in v0.6.0
func (in *DataObjectKeySelector) DeepCopy() *DataObjectKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataObjectKeySelector.
func (*DataObjectKeySelector) DeepCopyInto ¶ added in v0.6.0
func (in *DataObjectKeySelector) DeepCopyInto(out *DataObjectKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmInstallOptions ¶
func (HelmInstallOptions) DeepCopy ¶ added in v0.6.0
func (in HelmInstallOptions) DeepCopy() HelmInstallOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmInstallOptions.
func (HelmInstallOptions) DeepCopyInto ¶ added in v0.6.0
func (in HelmInstallOptions) DeepCopyInto(out *HelmInstallOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmInstallValues ¶
type HelmInstallValues struct { // Specifies the URL location of the values file. // // +optional URLs []string `json:"urls,omitempty"` // Selects a key from a ConfigMap item list. The value can be // a JSON or YAML string content. Use a key name with ".json", ".yaml", or ".yml" // extension to specify a content type. // // +optional ConfigMapRefs []DataObjectKeySelector `json:"configMapRefs,omitempty"` // Selects a key from a Secrets item list. The value can be // a JSON or YAML string content. Use a key name with ".json", ".yaml", or ".yml" // extension to specify a content type. // // +optional SecretRefs []DataObjectKeySelector `json:"secretRefs,omitempty"` // Values set during Helm installation. Multiple or separate values can be specified with commas (key1=val1,key2=val2). // // +optional SetValues []string `json:"setValues,omitempty"` // JSON values set during Helm installation. Multiple or separate values can be specified with commas (key1=jsonval1,key2=jsonval2). // // +optional SetJSONValues []string `json:"setJSONValues,omitempty"` }
func (*HelmInstallValues) DeepCopy ¶ added in v0.6.0
func (in *HelmInstallValues) DeepCopy() *HelmInstallValues
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmInstallValues.
func (*HelmInstallValues) DeepCopyInto ¶ added in v0.6.0
func (in *HelmInstallValues) DeepCopyInto(out *HelmInstallValues)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmJSONValueMapType ¶
type HelmJSONValueMapType struct { // Specifies the toleration mapping key. // // +optional Tolerations string `json:"tolerations,omitempty"` }
func (*HelmJSONValueMapType) DeepCopy ¶ added in v0.6.0
func (in *HelmJSONValueMapType) DeepCopy() *HelmJSONValueMapType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmJSONValueMapType.
func (*HelmJSONValueMapType) DeepCopyInto ¶ added in v0.6.0
func (in *HelmJSONValueMapType) DeepCopyInto(out *HelmJSONValueMapType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmTypeInstallSpec ¶
type HelmTypeInstallSpec struct { // Specifies the URL location of the Helm Chart. // // +kubebuilder:validation:Required ChartLocationURL string `json:"chartLocationURL"` // Defines the options for Helm release installation. // // +optional InstallOptions HelmInstallOptions `json:"installOptions,omitempty"` // Defines the set values for Helm release installation. // // +optional InstallValues HelmInstallValues `json:"installValues,omitempty"` // Defines the mapping of add-on normalized resources parameters to Helm values' keys. // // +optional ValuesMapping HelmValuesMapping `json:"valuesMapping,omitempty"` // Defines the image of Helm charts. // // +optional ChartsImage string `json:"chartsImage,omitempty"` // Defines the path of Helm charts in the image. This path is used to copy // Helm charts from the image to the shared volume. The default path is "/charts". // // +kubeBuilder:default="/charts" // +optional ChartsPathInImage string `json:"chartsPathInImage,omitempty"` }
HelmTypeInstallSpec defines the Helm installation spec. +kubebuilder:validation:XValidation:rule="self.chartLocationURL.startsWith('file://') ? has(self.chartsImage) : true",message="chartsImage is required when chartLocationURL starts with 'file://'"
func (*HelmTypeInstallSpec) BuildContainerArgs ¶
func (r *HelmTypeInstallSpec) BuildContainerArgs(helmContainer *corev1.Container, installValues HelmInstallValues) error
BuildContainerArgs derives helm container args.
func (*HelmTypeInstallSpec) BuildMergedValues ¶
func (r *HelmTypeInstallSpec) BuildMergedValues(installSpec *AddonInstallSpec) HelmInstallValues
BuildMergedValues merges values from a AddonInstallSpec and pre-set values.
func (*HelmTypeInstallSpec) DeepCopy ¶ added in v0.6.0
func (in *HelmTypeInstallSpec) DeepCopy() *HelmTypeInstallSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmTypeInstallSpec.
func (*HelmTypeInstallSpec) DeepCopyInto ¶ added in v0.6.0
func (in *HelmTypeInstallSpec) DeepCopyInto(out *HelmTypeInstallSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmValueMapType ¶
type HelmValueMapType struct { // Defines the key for setting the replica count in the Helm values map. // // +optional ReplicaCount string `json:"replicaCount,omitempty"` // Indicates whether the persistent volume is enabled in the Helm values map. // // +optional PVEnabled string `json:"persistentVolumeEnabled,omitempty"` // Specifies the key for setting the storage class in the Helm values map. // // +optional StorageClass string `json:"storageClass,omitempty"` }
func (*HelmValueMapType) DeepCopy ¶ added in v0.6.0
func (in *HelmValueMapType) DeepCopy() *HelmValueMapType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmValueMapType.
func (*HelmValueMapType) DeepCopyInto ¶ added in v0.6.0
func (in *HelmValueMapType) DeepCopyInto(out *HelmValueMapType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmValuesMapping ¶
type HelmValuesMapping struct { HelmValuesMappingItem `json:",inline"` // Helm value mapping items for extra items. // // +patchMergeKey=name // +patchStrategy=merge,retainKeys // +listType=map // +listMapKey=name // +optional ExtraItems []HelmValuesMappingExtraItem `json:"extras,omitempty"` }
func (*HelmValuesMapping) DeepCopy ¶ added in v0.6.0
func (in *HelmValuesMapping) DeepCopy() *HelmValuesMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmValuesMapping.
func (*HelmValuesMapping) DeepCopyInto ¶ added in v0.6.0
func (in *HelmValuesMapping) DeepCopyInto(out *HelmValuesMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmValuesMappingExtraItem ¶
type HelmValuesMappingExtraItem struct { HelmValuesMappingItem `json:",inline"` // Name of the item. // // +kubebuilder:validation:Required Name string `json:"name"` }
func (*HelmValuesMappingExtraItem) DeepCopy ¶ added in v0.6.0
func (in *HelmValuesMappingExtraItem) DeepCopy() *HelmValuesMappingExtraItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmValuesMappingExtraItem.
func (*HelmValuesMappingExtraItem) DeepCopyInto ¶ added in v0.6.0
func (in *HelmValuesMappingExtraItem) DeepCopyInto(out *HelmValuesMappingExtraItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmValuesMappingItem ¶
type HelmValuesMappingItem struct { // Defines the "key" mapping values. Valid keys include `replicaCount`, // `persistentVolumeEnabled`, and `storageClass`. // Enum values explained: // // - `replicaCount` sets the replicaCount value mapping key. // - `persistentVolumeEnabled` sets the persistent volume enabled mapping key. // - `storageClass` sets the storageClass mapping key. // // +optional HelmValueMap HelmValueMapType `json:"valueMap,omitempty"` // Defines the "key" mapping values. The valid key is tolerations. // Enum values explained: // // - `tolerations` sets the toleration mapping key. // // +optional HelmJSONMap HelmJSONValueMapType `json:"jsonMap,omitempty"` // Sets resources related mapping keys. // // +optional ResourcesMapping *ResourceMappingItem `json:"resources,omitempty"` }
func (*HelmValuesMappingItem) DeepCopy ¶ added in v0.6.0
func (in *HelmValuesMappingItem) DeepCopy() *HelmValuesMappingItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmValuesMappingItem.
func (*HelmValuesMappingItem) DeepCopyInto ¶ added in v0.6.0
func (in *HelmValuesMappingItem) DeepCopyInto(out *HelmValuesMappingItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstallableSpec ¶
type InstallableSpec struct { // Specifies the selectors for add-on installation. If multiple selectors are provided, // they must all evaluate to true for the add-on to be installed. // // +optional Selectors []SelectorRequirement `json:"selectors,omitempty"` // Indicates whether an add-on should be installed automatically. // // +kubebuilder:default=false AutoInstall bool `json:"autoInstall"` }
func (*InstallableSpec) DeepCopy ¶ added in v0.6.0
func (in *InstallableSpec) DeepCopy() *InstallableSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallableSpec.
func (*InstallableSpec) DeepCopyInto ¶ added in v0.6.0
func (in *InstallableSpec) DeepCopyInto(out *InstallableSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InstallableSpec) GetSelectorsStrings ¶
func (r *InstallableSpec) GetSelectorsStrings() []string
GetSelectorsStrings extracts selectors to string representations.
type LineSelectorOperator ¶
type LineSelectorOperator string
LineSelectorOperator defines line selector operators. +enum +kubebuilder:validation:Enum={Contains,DoesNotContain,MatchRegex,DoesNotMatchRegex}
const ( Contains LineSelectorOperator = "Contains" DoesNotContain LineSelectorOperator = "DoesNotContain" MatchRegex LineSelectorOperator = "MatchRegex" DoesNotMatchRegex LineSelectorOperator = "DoesNotMatchRegex" )
type ResourceMappingItem ¶
type ResourceMappingItem struct { // Specifies the key used for mapping the storage size value. // // +optional Storage string `json:"storage,omitempty"` // Specifies the key used for mapping both CPU requests and limits. // // +optional CPU *ResourceReqLimItem `json:"cpu,omitempty"` // Specifies the key used for mapping both Memory requests and limits. // // +optional Memory *ResourceReqLimItem `json:"memory,omitempty"` }
func (*ResourceMappingItem) DeepCopy ¶ added in v0.6.0
func (in *ResourceMappingItem) DeepCopy() *ResourceMappingItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceMappingItem.
func (*ResourceMappingItem) DeepCopyInto ¶ added in v0.6.0
func (in *ResourceMappingItem) DeepCopyInto(out *ResourceMappingItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResourceMappingItem) HasCPULimMapping ¶
func (r *ResourceMappingItem) HasCPULimMapping() bool
func (*ResourceMappingItem) HasCPUReqMapping ¶
func (r *ResourceMappingItem) HasCPUReqMapping() bool
func (*ResourceMappingItem) HasMemLimMapping ¶
func (r *ResourceMappingItem) HasMemLimMapping() bool
func (*ResourceMappingItem) HasMemReqMapping ¶
func (r *ResourceMappingItem) HasMemReqMapping() bool
func (*ResourceMappingItem) HasStorageMapping ¶
func (r *ResourceMappingItem) HasStorageMapping() bool
type ResourceReqLimItem ¶
type ResourceReqLimItem struct { // Specifies the mapping key for the request value. // // +optional Requests string `json:"requests,omitempty"` // Specifies the mapping key for the limit value. // // +optional Limits string `json:"limits,omitempty"` }
func (*ResourceReqLimItem) DeepCopy ¶ added in v0.6.0
func (in *ResourceReqLimItem) DeepCopy() *ResourceReqLimItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceReqLimItem.
func (*ResourceReqLimItem) DeepCopyInto ¶ added in v0.6.0
func (in *ResourceReqLimItem) DeepCopyInto(out *ResourceReqLimItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceRequirements ¶
type ResourceRequirements struct { // Limits describes the maximum amount of compute resources allowed. // More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/. // // +optional Limits corev1.ResourceList `json:"limits,omitempty"` // Requests describes the minimum amount of compute resources required. // If Requests is omitted for a container, it defaults to Limits if that is explicitly specified; // otherwise, it defaults to an implementation-defined value. // More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/. // // +optional Requests corev1.ResourceList `json:"requests,omitempty"` }
func (*ResourceRequirements) DeepCopy ¶ added in v0.6.0
func (in *ResourceRequirements) DeepCopy() *ResourceRequirements
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequirements.
func (*ResourceRequirements) DeepCopyInto ¶ added in v0.6.0
func (in *ResourceRequirements) DeepCopyInto(out *ResourceRequirements)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SelectorRequirement ¶
type SelectorRequirement struct { // The selector key. Valid values are KubeVersion, KubeGitVersion and KubeProvider. // // - `KubeVersion` the semver expression of Kubernetes versions, i.e., v1.24. // - `KubeGitVersion` may contain distro. info., i.e., v1.24.4+eks. // - `KubeProvider` the Kubernetes provider, i.e., aws, gcp, azure, huaweiCloud, tencentCloud etc. // // +kubebuilder:validation:Required Key AddonSelectorKey `json:"key"` // Represents a key's relationship to a set of values. // Valid operators are Contains, NotIn, DoesNotContain, MatchRegex, and DoesNoteMatchRegex. // // Possible enum values: // // - `Contains` line contains a string. // - `DoesNotContain` line does not contain a string. // - `MatchRegex` line contains a match to the regular expression. // - `DoesNotMatchRegex` line does not contain a match to the regular expression. // // +kubebuilder:validation:Required Operator LineSelectorOperator `json:"operator"` // Represents an array of string values. This serves as an "OR" expression to the operator. // // +optional Values []string `json:"values,omitempty" protobuf:"bytes,3,rep,name=values"` }
func (*SelectorRequirement) DeepCopy ¶ added in v0.6.0
func (in *SelectorRequirement) DeepCopy() *SelectorRequirement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectorRequirement.
func (*SelectorRequirement) DeepCopyInto ¶ added in v0.6.0
func (in *SelectorRequirement) DeepCopyInto(out *SelectorRequirement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SelectorRequirement) MatchesFromConfig ¶
func (r *SelectorRequirement) MatchesFromConfig() bool
MatchesFromConfig matches the selector requirement value.
func (*SelectorRequirement) String ¶
func (r *SelectorRequirement) String() string