v1beta1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the instanceha v1beta1 API group +kubebuilder:object:generate=true +groupName=instanceha.openstack.org

Index

Constants

View Source
const (
	// InstanceHaReadyInitMessage
	InstanceHaReadyInitMessage = "Instance HA not started"

	// InstanceHaOpenStackConfigMapWaitingMessage
	InstanceHaOpenStackConfigMapWaitingMessage = "Instance HA waiting for OpenStack ConfigMap"

	// InstanceHaOpenStackConfigSecretWaitingMessage
	InstanceHaOpenStackConfigSecretWaitingMessage = "Instance HA waiting for OpenStack Config Secret"

	// InstanceHaConfigMapWaitingMessage)
	InstanceHaConfigMapWaitingMessage = "Instance HA waiting for InstanceHA ConfigMap"

	// InstanceHaFencingSecretWaitingMessage
	InstanceHaFencingSecretWaitingMessage = "Instance HA waiting for Fencing secret"

	// InstanceHaInputReady
	InstanceHaInputReady = "Instance HA input ready"

	// InstanceHaReadyMessage
	InstanceHaReadyMessage = "Instance HA created"

	// InstanceHaReadyErrorMessage
	InstanceHaReadyErrorMessage = "Instance HA error occured %s"
)

Common Messages used by API objects.

View Source
const (

	// InstanceHaContainerImage is the fall-back container image for InstanceHa
	InstanceHaContainerImage = "quay.io/podified-antelope-centos9/openstack-openstackclient:current-podified"
	OpenStackCloud           = "default"
)
View Source
const (
	// InstanceHaReadyCondition Status=True condition which indicates if InstanceHa is configured and operational
	InstanceHaReadyCondition condition.Type = "InstanceHaReady"
)

InstanceHa Condition Types used by API objects.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "instanceha.openstack.org", 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

func SetupDefaults

func SetupDefaults()

SetupDefaults - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)

func SetupInstanceHaDefaults

func SetupInstanceHaDefaults(defaults InstanceHaDefaults)

SetupInstanceHaDefaults - initialize InstanceHa spec defaults for use with either internal or external webhooks

Types

type InstanceHa

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

	Spec   InstanceHaSpec   `json:"spec,omitempty"`
	Status InstanceHaStatus `json:"status,omitempty"`
}

InstanceHa is the Schema for the instancehas API

func (*InstanceHa) DeepCopy

func (in *InstanceHa) DeepCopy() *InstanceHa

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

func (*InstanceHa) DeepCopyInto

func (in *InstanceHa) DeepCopyInto(out *InstanceHa)

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

func (*InstanceHa) DeepCopyObject

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

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

func (*InstanceHa) Default

func (r *InstanceHa) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (InstanceHa) RbacConditionsSet

func (instance InstanceHa) RbacConditionsSet(c *condition.Condition)

RbacConditionsSet - set the conditions for the rbac object

func (InstanceHa) RbacNamespace

func (instance InstanceHa) RbacNamespace() string

RbacNamespace - return the namespace

func (InstanceHa) RbacResourceName

func (instance InstanceHa) RbacResourceName() string

RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)

func (*InstanceHa) SetupWebhookWithManager

func (r *InstanceHa) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up the webhook with the Manager

func (*InstanceHa) ValidateCreate

func (r *InstanceHa) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceHa) ValidateDelete

func (r *InstanceHa) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceHa) ValidateUpdate

func (r *InstanceHa) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceHaDefaults

type InstanceHaDefaults struct {
	ContainerImageURL string
}

InstanceHaDefaults -

func (*InstanceHaDefaults) DeepCopy

func (in *InstanceHaDefaults) DeepCopy() *InstanceHaDefaults

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

func (*InstanceHaDefaults) DeepCopyInto

func (in *InstanceHaDefaults) DeepCopyInto(out *InstanceHaDefaults)

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

type InstanceHaList

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

InstanceHaList contains a list of InstanceHa

func (*InstanceHaList) DeepCopy

func (in *InstanceHaList) DeepCopy() *InstanceHaList

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

func (*InstanceHaList) DeepCopyInto

func (in *InstanceHaList) DeepCopyInto(out *InstanceHaList)

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

func (*InstanceHaList) DeepCopyObject

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

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

type InstanceHaSpec

type InstanceHaSpec struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:default="quay.io/podified-antelope-centos9/openstack-openstackclient:current-podified"
	// ContainerImage for the the InstanceHa container (will be set to environmental default if empty)
	ContainerImage string `json:"containerImage"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default="default"
	// OpenStackClould is the name of the Cloud to use as per clouds.yaml (will be set to "default" if empty)
	OpenStackCloud string `json:"openStackCloud"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=openstack-config
	// OpenStackConfigMap is the name of the ConfigMap containing the clouds.yaml
	OpenStackConfigMap string `json:"openStackConfigMap"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=openstack-config-secret
	// OpenStackConfigSecret is the name of the Secret containing the secure.yaml
	OpenStackConfigSecret string `json:"openStackConfigSecret"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=fencing-secret
	// FencingSecret is the name of the Secret containing the fencing details
	FencingSecret string `json:"fencingSecret"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=instanceha-config
	// InstanceHaConfigMap is the name of the ConfigMap containing the InstanceHa config file
	InstanceHaConfigMap string `json:"instanceHaConfigMap"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=7410
	InstanceHaKdumpPort int32 `json:"instanceHaKdumpPort"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running control plane services (currently only applies to KeystoneAPI and PlacementAPI)
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	// NetworkAttachments is a list of NetworkAttachment resource names to expose
	// the services to the given network
	NetworkAttachments []string `json:"networkAttachments,omitempty"`

	// +kubebuilder:validation:Optional
	//+operator-sdk:csv:customresourcedefinitions:type=spec
	// Secret containing any CA certificates which should be added to deployment pods
	tls.Ca `json:",inline"`
}

InstanceHaSpec defines the desired state of InstanceHa

func (*InstanceHaSpec) DeepCopy

func (in *InstanceHaSpec) DeepCopy() *InstanceHaSpec

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

func (*InstanceHaSpec) DeepCopyInto

func (in *InstanceHaSpec) DeepCopyInto(out *InstanceHaSpec)

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

func (*InstanceHaSpec) Default

func (spec *InstanceHaSpec) Default()

Default - set defaults for this InstanceHa spec

type InstanceHaStatus

type InstanceHaStatus struct {
	// PodName
	PodName string `json:"podName,omitempty"`

	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`

	//ObservedGeneration - the most recent generation observed for this object.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// NetworkAttachments status of the deployment pods
	NetworkAttachments map[string][]string `json:"networkAttachments,omitempty"`
}

InstanceHaStatus defines the observed state of InstanceHa

func (*InstanceHaStatus) DeepCopy

func (in *InstanceHaStatus) DeepCopy() *InstanceHaStatus

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

func (*InstanceHaStatus) DeepCopyInto

func (in *InstanceHaStatus) DeepCopyInto(out *InstanceHaStatus)

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