v1

package
v0.0.0-...-62a7c26 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2024 License: Apache-2.0 Imports: 4 Imported by: 8

Documentation

Overview

Package v1 contains API Schema definitions for the lca v1 API group +kubebuilder:object:generate=true +groupName=lca.openshift.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "lca.openshift.io", Version: "v1"}

	// SchemeGroupVersion is expected by k8s.io/code-generator
	SchemeGroupVersion = schema.GroupVersion{Group: "lca.openshift.io", Version: "v1"}

	// 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
)
View Source
var Stages = struct {
	Idle     ImageBasedUpgradeStage
	Prep     ImageBasedUpgradeStage
	Upgrade  ImageBasedUpgradeStage
	Rollback ImageBasedUpgradeStage
}{
	Idle:     "Idle",
	Prep:     "Prep",
	Upgrade:  "Upgrade",
	Rollback: "Rollback",
}

Stages defines the string values for valid stages

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource. Expected by k8s.io/code-generator

Types

type AutoRollbackOnFailure

type AutoRollbackOnFailure struct {
	// InitMonitorTimeoutSeconds defines the time frame in seconds. If not defined or set to 0, the default value of
	// 1800 seconds (30 minutes) is used.
	// +kubebuilder:validation:Minimum=0
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:number"}
	InitMonitorTimeoutSeconds int `json:"initMonitorTimeoutSeconds,omitempty"` // LCA Init Monitor watchdog timeout, in seconds. Value = 0 is treated as "use default" when writing config file in Prep stage
}

AutoRollbackOnFailure defines automatic rollback settings if the upgrade fails or if the upgrade does not complete within the specified time limit.

func (*AutoRollbackOnFailure) DeepCopy

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

func (*AutoRollbackOnFailure) DeepCopyInto

func (in *AutoRollbackOnFailure) DeepCopyInto(out *AutoRollbackOnFailure)

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

type ConfigMapRef

type ConfigMapRef struct {
	// +kubebuilder:validation:Required
	// +required
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Name string `json:"name"`

	// +kubebuilder:validation:Required
	// +required
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Namespace string `json:"namespace"`
}

ConfigMapRef defines a reference to a config map

func (*ConfigMapRef) DeepCopy

func (in *ConfigMapRef) DeepCopy() *ConfigMapRef

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

func (*ConfigMapRef) DeepCopyInto

func (in *ConfigMapRef) DeepCopyInto(out *ConfigMapRef)

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

type History

type History struct {
	// Stage The desired stage name read from spec
	Stage ImageBasedUpgradeStage `json:"stage,omitempty"`
	// Phase Allows for a more granular view of the important tasks that are performed when moving a desired Stage
	Phases []*Phase `json:"phases,omitempty"`
	// StartTime A timestamp to indicate the Stage has started
	StartTime metav1.Time `json:"startTime,omitempty"`
	// CompletionTime A timestamp indicating the Stage completed.
	// This is only available when a Stage completes successfully
	CompletionTime metav1.Time `json:"completionTime,omitempty"`
}

func (*History) DeepCopy

func (in *History) DeepCopy() *History

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

func (*History) DeepCopyInto

func (in *History) DeepCopyInto(out *History)

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

type ImageBasedUpgrade

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

	Spec   ImageBasedUpgradeSpec   `json:"spec,omitempty"`
	Status ImageBasedUpgradeStatus `json:"status,omitempty"`
}

ImageBasedUpgrade is the Schema for the ImageBasedUpgrades API

func (*ImageBasedUpgrade) DeepCopy

func (in *ImageBasedUpgrade) DeepCopy() *ImageBasedUpgrade

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

func (*ImageBasedUpgrade) DeepCopyInto

func (in *ImageBasedUpgrade) DeepCopyInto(out *ImageBasedUpgrade)

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

func (*ImageBasedUpgrade) DeepCopyObject

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

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

type ImageBasedUpgradeList

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

ImageBasedUpgradeList contains a list of ImageBasedUpgrade

func (*ImageBasedUpgradeList) DeepCopy

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

func (*ImageBasedUpgradeList) DeepCopyInto

func (in *ImageBasedUpgradeList) DeepCopyInto(out *ImageBasedUpgradeList)

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

func (*ImageBasedUpgradeList) DeepCopyObject

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

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

type ImageBasedUpgradeSpec

type ImageBasedUpgradeSpec struct {
	//+kubebuilder:validation:Enum=Idle;Prep;Upgrade;Rollback
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Stage"
	Stage ImageBasedUpgradeStage `json:"stage,omitempty"`
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Seed Image Reference"
	SeedImageRef SeedImageRef `json:"seedImageRef,omitempty"`
	// OADPContent defines the list of ConfigMap resources that contain the OADP Backup and Restore CRs.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OADP Content"
	OADPContent []ConfigMapRef `json:"oadpContent,omitempty"`
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Extra Manifests"
	// ExtraManifests defines the list of ConfigMap resources that contain the user-specific extra manifests to be
	// applied during the upgrade post-pivot stage.
	// Users can also add their custom catalog sources that may want to retain after the upgrade.
	ExtraManifests []ConfigMapRef `json:"extraManifests,omitempty"`
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Auto Rollback On Failure"
	AutoRollbackOnFailure *AutoRollbackOnFailure `json:"autoRollbackOnFailure,omitempty"`
}

ImageBasedUpgradeSpec defines the desired state of ImageBasedUpgrade

func (*ImageBasedUpgradeSpec) DeepCopy

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

func (*ImageBasedUpgradeSpec) DeepCopyInto

func (in *ImageBasedUpgradeSpec) DeepCopyInto(out *ImageBasedUpgradeSpec)

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

type ImageBasedUpgradeStage

type ImageBasedUpgradeStage string

ImageBasedUpgradeStage defines the type for the IBU stage field

type ImageBasedUpgradeStatus

type ImageBasedUpgradeStatus struct {
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Conditions",xDescriptors={"urn:alm:descriptor:io.kubernetes.conditions"}
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Valid Next Stage"
	ValidNextStages []ImageBasedUpgradeStage `json:"validNextStages,omitempty"`
	// RollbackAvailabilityExpiration reflects the point at which rolling back may require manual recovery from expired control plane certificates.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	RollbackAvailabilityExpiration metav1.Time `json:"rollbackAvailabilityExpiration,omitempty"`
	// History stores timing info of different IBU stages and their important phases
	// +optional
	History []*History `json:"history,omitempty"`
}

ImageBasedUpgradeStatus defines the observed state of ImageBasedUpgrade

func (*ImageBasedUpgradeStatus) DeepCopy

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

func (*ImageBasedUpgradeStatus) DeepCopyInto

func (in *ImageBasedUpgradeStatus) DeepCopyInto(out *ImageBasedUpgradeStatus)

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

type Phase

type Phase struct {
	// Phase current phase within a Stage
	Phase string `json:"phase,omitempty"`
	// StartTime A timestamp indicating the Phase has started
	StartTime metav1.Time `json:"startTime,omitempty"`
	// CompletionTime A timestamp indicating the phase completed.
	// This is only available when a Phase completes successfully
	CompletionTime metav1.Time `json:"completionTime,omitempty"`
}

func (*Phase) DeepCopy

func (in *Phase) DeepCopy() *Phase

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

func (*Phase) DeepCopyInto

func (in *Phase) DeepCopyInto(out *Phase)

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

type PullSecretRef

type PullSecretRef struct {
	// +kubebuilder:validation:Required
	// +required
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Name string `json:"name"`
}

PullSecretRef defines a reference to a secret with credentials for pulling container images

func (*PullSecretRef) DeepCopy

func (in *PullSecretRef) DeepCopy() *PullSecretRef

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

func (*PullSecretRef) DeepCopyInto

func (in *PullSecretRef) DeepCopyInto(out *PullSecretRef)

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

type SeedImageRef

type SeedImageRef struct {
	// Version defines the target platform version. The value must match the version of the seed image.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version,omitempty"`
	// Image defines the full pull-spec of the seed container image to use.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:Pattern="^([a-z0-9]+://)?[\\S]+$"
	Image string `json:"image,omitempty"`
	// PullSecretRef defines the reference to a secret with credentials to pull container images.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Pull Secret Reference"
	PullSecretRef *PullSecretRef `json:"pullSecretRef,omitempty"`
}

SeedImageRef defines the seed image and OCP version for the upgrade

func (*SeedImageRef) DeepCopy

func (in *SeedImageRef) DeepCopy() *SeedImageRef

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

func (*SeedImageRef) DeepCopyInto

func (in *SeedImageRef) DeepCopyInto(out *SeedImageRef)

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