v1beta1

package
v0.0.0-...-6787518 Latest Latest
Warning

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

Go to latest
Published: Sep 4, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	MutatingWebhookConfigurationNotAvailable = "MutatingWebhookConfigurationNotAvailable"
	PodPlacementControllerNotRolledOutType   = "PodPlacementControllerNotRolledOut"
	PodPlacementWebhookNotRolledOutType      = "PodPlacementWebhookNotRolledOut"
	AvailableType                            = "Available"
	DegradedType                             = "Degraded"
	ProgressingType                          = "Progressing"
	DeprovisioningType                       = "Deprovisioning"

	MutatingWebhookConfigurationReadyMsg = "The mutating webhook configuration is %sready."
	PodPlacementControllerRolledOutMsg   = "The pod placement controller is %sfully rolled out."
	PodPlacementWebhookRolledOutMsg      = "The pod placement webhook is %sfully rolled out."
	ReadyMsg                             = "The cluster pod placement config operand is %sready. We can%s gate and reconcile pods."
	DegradedMsg                          = "The cluster pod placement config operand is %sdegraded."
	ProgressingMsg                       = "The cluster pod placement config operand is %sprogressing."
	DeprovisioningMsg                    = "The cluster pod placement config operand is %sbeing deprovisioned. %s"
	PendingDeprovisioningMsg             = "Some pods may still have the " + utils.SchedulingGateName +
		"scheduling gate. The pod placement controller is updating them and will terminate."
	AllComponentsReady = "AllComponentsReady"
)
View Source
const ClusterPodPlacementConfigResource = "clusterpodplacementconfigs"

Variables

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

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

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

	Spec   ClusterPodPlacementConfigSpec   `json:"spec,omitempty"`
	Status ClusterPodPlacementConfigStatus `json:"status,omitempty"`
}

ClusterPodPlacementConfig defines the configuration for the architecture aware pod placement operand. Users can only deploy a single object named "cluster". Creating the object enables the operand. +kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:resource:path=clusterpodplacementconfigs,scope=Cluster +kubebuilder:printcolumn:name=Available,JSONPath=.status.conditions[?(@.type=="Available")].status,type=string +kubebuilder:printcolumn:name=Progressing,JSONPath=.status.conditions[?(@.type=="Progressing")].status,type=string +kubebuilder:printcolumn:name=Degraded,JSONPath=.status.conditions[?(@.type=="Degraded")].status,type=string +kubebuilder:printcolumn:name=Since,JSONPath=.status.conditions[?(@.type=="Progressing")].lastTransitionTime,type=date +kubebuilder:printcolumn:name=Status,JSONPath=.status.conditions[?(@.type=="Available")].reason,type=string

func (*ClusterPodPlacementConfig) DeepCopy

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

func (*ClusterPodPlacementConfig) DeepCopyInto

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

func (*ClusterPodPlacementConfig) DeepCopyObject

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

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

func (*ClusterPodPlacementConfig) Hub

Hub marks this type as a conversion hub.

func (*ClusterPodPlacementConfig) SetupWebhookWithManager

func (c *ClusterPodPlacementConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

type ClusterPodPlacementConfigList

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

ClusterPodPlacementConfigList contains a list of ClusterPodPlacementConfig

func (*ClusterPodPlacementConfigList) DeepCopy

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

func (*ClusterPodPlacementConfigList) DeepCopyInto

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

func (*ClusterPodPlacementConfigList) DeepCopyObject

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

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

type ClusterPodPlacementConfigSpec

type ClusterPodPlacementConfigSpec struct {
	// LogVerbosity is the log level for the pod placement components.
	// Valid values are: "Normal", "Debug", "Trace", "TraceAll".
	// Defaults to "Normal".
	// +optional
	// +kubebuilder:default=Normal
	LogVerbosity common.LogVerbosityLevel `json:"logVerbosity,omitempty"`

	// NamespaceSelector selects the namespaces where the pod placement operand can process the nodeAffinity
	// of the pods. If left empty, all the namespaces are considered.
	// The default sample allows to exclude all the namespaces where the
	// label "multiarch.openshift.io/exclude-pod-placement" exists.
	// +optional
	NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"`
}

ClusterPodPlacementConfigSpec defines the desired state of ClusterPodPlacementConfig

func (*ClusterPodPlacementConfigSpec) DeepCopy

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

func (*ClusterPodPlacementConfigSpec) DeepCopyInto

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

type ClusterPodPlacementConfigStatus

type ClusterPodPlacementConfigStatus struct {
	// Conditions represents the latest available observations of a ClusterPodPlacementConfig's current state.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// contains filtered or unexported fields
}

ClusterPodPlacementConfigStatus defines the observed state of ClusterPodPlacementConfig

func (*ClusterPodPlacementConfigStatus) Build

func (s *ClusterPodPlacementConfigStatus) Build(
	podPlacementControllerAvailable, podPlacementWebhookAvailable,
	podPlacementControllerUpToDate, podPlacementWebhookUpToDate,
	mutatingWebhookConfigurationAvailable,
	deprovisioning bool)

Build sets the conditions in the ClusterPodPlacementConfig object. The build Conditions are:

  • Degraded: if some components are not available (no replicas) and the object is not deprovisioning
  • Deprovisioning: if the object is being deleted
  • MutatingWebhookConfigurationNotAvailable: if the mutating webhook configuration does not exist
  • PodPlacementControllerNotReady: if the pod placement controller is not available or up-to-date
  • PodPlacementWebhookNotReady: if the pod placement webhook is not available or up-to-date
  • Progressing: if the object is not deprovisioning and some of the components are not up-to-date.
  • Available: if all the components are available to serve the requests and reconcile node affinities (at least one replica).

func (*ClusterPodPlacementConfigStatus) CanDeployMutatingWebhook

func (s *ClusterPodPlacementConfigStatus) CanDeployMutatingWebhook() bool

func (*ClusterPodPlacementConfigStatus) DeepCopy

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

func (*ClusterPodPlacementConfigStatus) DeepCopyInto

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

func (*ClusterPodPlacementConfigStatus) IsDegraded

func (s *ClusterPodPlacementConfigStatus) IsDegraded() bool

func (*ClusterPodPlacementConfigStatus) IsDeprovisioning

func (s *ClusterPodPlacementConfigStatus) IsDeprovisioning() bool

func (*ClusterPodPlacementConfigStatus) IsMutatingWebhookConfigurationNotAvailable

func (s *ClusterPodPlacementConfigStatus) IsMutatingWebhookConfigurationNotAvailable() bool

func (*ClusterPodPlacementConfigStatus) IsPodPlacementControllerNotReady

func (s *ClusterPodPlacementConfigStatus) IsPodPlacementControllerNotReady() bool

func (*ClusterPodPlacementConfigStatus) IsPodPlacementWebhookNotReady

func (s *ClusterPodPlacementConfigStatus) IsPodPlacementWebhookNotReady() bool

func (*ClusterPodPlacementConfigStatus) IsProgressing

func (s *ClusterPodPlacementConfigStatus) IsProgressing() bool

func (*ClusterPodPlacementConfigStatus) IsReady

Jump to

Keyboard shortcuts

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