v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 10, 2021 License: Apache-2.0 Imports: 4 Imported by: 4

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the dhcp v1alpha1 API group +kubebuilder:object:generate=true +groupName=addons.managed.openshift.io

Index

Constants

View Source
const (
	// Available condition indicates that all resources for the Addon are reconciled and healthy
	Available = "Available"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "addons.managed.openshift.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
)

Functions

This section is empty.

Types

type Addon

type Addon struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec AddonSpec `json:"spec,omitempty"`
	// +kubebuilder:default={phase:Pending}
	Status AddonStatus `json:"status,omitempty"`
}

Addon is the Schema for the Addons API +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Addon) DeepCopy

func (in *Addon) DeepCopy() *Addon

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

func (*Addon) DeepCopyInto

func (in *Addon) DeepCopyInto(out *Addon)

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

func (*Addon) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AddonInstallAllNamespaces

type AddonInstallAllNamespaces struct {
	AddonInstallCommon `json:",inline"`
}

AllNamespaces specific Addon installation parameters.

func (*AddonInstallAllNamespaces) DeepCopy

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

func (*AddonInstallAllNamespaces) DeepCopyInto

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

type AddonInstallCommon

type AddonInstallCommon struct {
	// Namespace to install the Addon into.
	// +kubebuilder:validation:MinLength=1
	Namespace string `json:"namespace"`

	// Defines the CatalogSource image.
	// Please only use hashes and no tags here!
	// +kubebuilder:validation:MinLength=1
	CatalogSourceImage string `json:"catalogSourceImage"`
}

Common Addon installation parameters.

func (*AddonInstallCommon) DeepCopy

func (in *AddonInstallCommon) DeepCopy() *AddonInstallCommon

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

func (*AddonInstallCommon) DeepCopyInto

func (in *AddonInstallCommon) DeepCopyInto(out *AddonInstallCommon)

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

type AddonInstallOwnNamespace

type AddonInstallOwnNamespace struct {
	AddonInstallCommon `json:",inline"`
}

OwnNamespace specific Addon installation parameters.

func (*AddonInstallOwnNamespace) DeepCopy

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

func (*AddonInstallOwnNamespace) DeepCopyInto

func (in *AddonInstallOwnNamespace) DeepCopyInto(out *AddonInstallOwnNamespace)

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

type AddonInstallSpec

type AddonInstallSpec struct {
	// Type of installation.
	// +kubebuilder:validation:Enum={"OwnNamespace","AllNamespaces"}
	Type AddonInstallType `json:"type"`
	// AllNamespaces config parameters. Present only if Type = AllNamespaces.
	AllNamespaces *AddonInstallAllNamespaces `json:"allNamespaces,omitempty"`
	// OwnNamespace config parameters. Present only if Type = OwnNamespace.
	OwnNamespace *AddonInstallOwnNamespace `json:"ownNamespace,omitempty"`
}

AddonInstallSpec defines the desired Addon installation type.

func (*AddonInstallSpec) DeepCopy

func (in *AddonInstallSpec) DeepCopy() *AddonInstallSpec

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

func (*AddonInstallSpec) DeepCopyInto

func (in *AddonInstallSpec) DeepCopyInto(out *AddonInstallSpec)

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

type AddonInstallType

type AddonInstallType string
const (
	// All namespaces on the cluster (default)
	// installs the Operator in the default openshift-operators namespace to
	// watch and be made available to all namespaces in the cluster.
	// Maps directly to the OLM default install mode "all namespaces".
	AllNamespaces AddonInstallType = "AllNamespaces"
	// Installs the operator into a specific namespace.
	// The Operator will only watch and be made available for use in this single namespace.
	// Maps directly to the OLM install mode "specific namespace"
	OwnNamespace AddonInstallType = "OwnNamespace"
)

type AddonList

type AddonList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Addon `json:"items"`
}

AddonList contains a list of Addon +kubebuilder:object:root=true

func (*AddonList) DeepCopy

func (in *AddonList) DeepCopy() *AddonList

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

func (*AddonList) DeepCopyInto

func (in *AddonList) DeepCopyInto(out *AddonList)

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

func (*AddonList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AddonNamespace

type AddonNamespace struct {
	// Name of the KubernetesNamespace.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

func (*AddonNamespace) DeepCopy

func (in *AddonNamespace) DeepCopy() *AddonNamespace

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

func (*AddonNamespace) DeepCopyInto

func (in *AddonNamespace) DeepCopyInto(out *AddonNamespace)

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

type AddonPhase

type AddonPhase string
const (
	PhasePending     AddonPhase = "Pending"
	PhaseReady       AddonPhase = "Ready"
	PhaseTerminating AddonPhase = "Terminating"
	PhaseError       AddonPhase = "Error"
)

Well-known Addon Phases for printing a Status in kubectl, see deprecation notice in AddonStatus for details.

type AddonSpec

type AddonSpec struct {
	// Human readable name for this addon.
	// +kubebuilder:validation:MinLength=1
	DisplayName string `json:"displayName"`

	// Defines a list of Kubernetes Namespaces that belong to this Addon.
	// Namespaces listed here will be created prior to installation of the Addon and
	// will be removed from the cluster when the Addon is deleted.
	// Collisions with existing Namespaces are NOT allowed.
	Namespaces []AddonNamespace `json:"namespaces,omitempty"`

	// Defines how an Addon is installed.
	// This field is immutable.
	// TODO: enforce immutablity in webhook
	Install AddonInstallSpec `json:"install"`
}

AddonSpec defines the desired state of Addon.

func (*AddonSpec) DeepCopy

func (in *AddonSpec) DeepCopy() *AddonSpec

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

func (*AddonSpec) DeepCopyInto

func (in *AddonSpec) DeepCopyInto(out *AddonSpec)

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

type AddonStatus

type AddonStatus struct {
	// The most recent generation observed by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions is a list of status conditions ths object is in.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// DEPRECATED: This field is not part of any API contract
	// it will go away as soon as kubectl can print conditions!
	// Human readable status - please use .Conditions from code
	Phase AddonPhase `json:"phase,omitempty"`
}

AddonStatus defines the observed state of Addon

func (*AddonStatus) DeepCopy

func (in *AddonStatus) DeepCopy() *AddonStatus

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

func (*AddonStatus) DeepCopyInto

func (in *AddonStatus) DeepCopyInto(out *AddonStatus)

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