v1beta1

package
v1.24.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1beta1 is the v1beta1 version of the API.

Index

Constants

View Source
const (
	ValuesFromKindConfigmap = "ConfigMap"
	ValuesFromKindSecret    = "Secret"
)

Variables

View Source
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
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: plugins.GroupName, Version: "v1beta1"}

SchemeGroupVersion is group version used to register these objects.

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

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;native

const (
	BundleKindHelm      BundleKind = "helm"
	BundleKindKustomize BundleKind = "kustomize"
	BundleKindTemplate  BundleKind = "template"
	BundleKindNative    BundleKind = "native"
)

type FileOverride added in v1.24.1

type FileOverride struct {
	// Name is the name of the file to override
	Name string `json:"name"`
	// Content is the content of the file to override
	Content string `json:"content"`
}

func (*FileOverride) DeepCopy added in v1.24.1

func (in *FileOverride) DeepCopy() *FileOverride

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileOverride.

func (*FileOverride) DeepCopyInto added in v1.24.1

func (in *FileOverride) DeepCopyInto(out *FileOverride)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

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 Phase added in v1.23.0

type Phase string
const (
	PhaseDisabled  Phase = "Disabled"  // Bundle is disabled. the .spce.disbaled field is set to true or DeletionTimestamp is set.
	PhaseFailed    Phase = "Failed"    // Failed on install.
	PhaseInstalled Phase = "Installed" // Bundle is installed
)

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

func (in *Plugin) DeepCopy() *Plugin

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Plugin.

func (*Plugin) DeepCopyInto

func (in *Plugin) DeepCopyInto(out *Plugin)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Plugin) DeepCopyObject

func (in *Plugin) DeepCopyObject() runtime.Object

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"`

	// 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"`

	// FileOverrides is a list of file overrides/append to the helm chart.
	FileOverrides []FileOverride `json:"fileOverrides,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 {
	// The generation observed by the controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// 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

type Values struct {
	Raw    []byte         `json:"-"`
	Object map[string]any `json:"-"`
}

func (*Values) DeepCopy added in v1.23.0

func (v *Values) DeepCopy() *Values

DeepCopy indicate how to do a deep copy of Values type

func (*Values) DeepCopyInto added in v1.23.0

func (in *Values) DeepCopyInto(out *Values)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (Values) FullFill added in v1.23.0

func (v Values) FullFill() Values

func (Values) MarshalJSON added in v1.23.0

func (re Values) MarshalJSON() ([]byte, error)

func (*Values) UnmarshalJSON added in v1.23.0

func (v *Values) UnmarshalJSON(in []byte) error

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL