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 ¶
const (
// Available condition indicates that all resources for the Addon are reconciled and healthy
Available = "Available"
)
Variables ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Addon.
func (*Addon) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Addon) DeepCopyObject ¶
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 ¶
func (in *AddonInstallAllNamespaces) DeepCopy() *AddonInstallAllNamespaces
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonInstallAllNamespaces.
func (*AddonInstallAllNamespaces) DeepCopyInto ¶
func (in *AddonInstallAllNamespaces) DeepCopyInto(out *AddonInstallAllNamespaces)
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 ¶
func (in *AddonInstallOwnNamespace) DeepCopy() *AddonInstallOwnNamespace
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonList.
func (*AddonList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddonList) DeepCopyObject ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonSpec.
func (*AddonSpec) DeepCopyInto ¶
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.