v1beta1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 13 Imported by: 4

Documentation

Overview

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

Index

Constants

View Source
const (
	RingConfigMapName   = "swift-ring-files"
	DeviceConfigMapName = "swift-storage-devices"
)
View Source
const (
	// SwiftRingReadyCondition Status=True condition which indicates if the SwiftRing is configured and operational
	SwiftRingReadyCondition condition.Type = "SwiftRingReady"

	// SwiftStorageReadyCondition Status=True condition which indicates if the SwiftStorage is configured and operational
	SwiftStorageReadyCondition condition.Type = "SwiftStorageReady"

	// SwiftProxyReadyCondition Status=True condition which indicates if the SwiftProxy is configured and operational
	SwiftProxyReadyCondition condition.Type = "SwiftProxyReady"
)

Swift Condition Types used by API objects.

View Source
const (
	//
	// SwiftRingReady condition messages
	//
	// SwiftRingReadyInitMessage
	SwiftRingReadyInitMessage = "SwiftRing not started"

	// SwiftRingReadyErrorMessage
	SwiftRingReadyErrorMessage = "SwiftRing error occured %s"

	//
	// SwiftStorageReady condition messages
	//
	// SwiftStorageReadyInitMessage
	SwiftStorageReadyInitMessage = "SwiftStorage not started"

	// SwiftStorageReadyErrorMessage
	SwiftStorageReadyErrorMessage = "SwiftStorage error occured %s"

	//
	// SwiftProxyReady condition messages
	//
	// SwiftProxyReadyInitMessage
	SwiftProxyReadyInitMessage = "SwiftProxy not started"

	// SwiftProxyReadyErrorMessage
	SwiftProxyReadyErrorMessage = "SwiftProxy error occured %s"
)

Common Messages used by API objects.

View Source
const (
	// Container image fall-back defaults
	ContainerImageAccount   = "quay.io/podified-antelope-centos9/openstack-swift-account:current-podified"
	ContainerImageContainer = "quay.io/podified-antelope-centos9/openstack-swift-container:current-podified"
	ContainerImageObject    = "quay.io/podified-antelope-centos9/openstack-swift-object:current-podified"
	ContainerImageProxy     = "quay.io/podified-antelope-centos9/openstack-swift-proxy-server:current-podified"
	ContainerImageMemcached = "quay.io/podified-antelope-centos9/openstack-memcached:current-podified"
)
View Source
const (
	RingCreateHash = "ringcreate"
	DeviceListHash = "devicelist"
)

Variables

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

func SetupSwiftDefaults(defaults SwiftDefaults)

Types

type PasswordSelector

type PasswordSelector struct {
	// +kubebuilder:validation:Optional
	// +kubebuilder:default="SwiftPassword"
	// Service - Selector to get the Swift service password from the Secret
	Service string `json:"service"`
}

PasswordSelector to identify the AdminUser password from the Secret

func (*PasswordSelector) DeepCopy

func (in *PasswordSelector) DeepCopy() *PasswordSelector

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

func (*PasswordSelector) DeepCopyInto

func (in *PasswordSelector) DeepCopyInto(out *PasswordSelector)

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

type ProxyOverrideSpec added in v0.2.0

type ProxyOverrideSpec struct {
	// Override configuration for the Service created to serve traffic to the cluster.
	// The key must be the endpoint type (public, internal)
	Service map[service.Endpoint]service.RoutedOverrideSpec `json:"service,omitempty"`
}

ProxyOverrideSpec to override the generated manifest of several child resources.

func (*ProxyOverrideSpec) DeepCopy added in v0.2.0

func (in *ProxyOverrideSpec) DeepCopy() *ProxyOverrideSpec

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

func (*ProxyOverrideSpec) DeepCopyInto added in v0.2.0

func (in *ProxyOverrideSpec) DeepCopyInto(out *ProxyOverrideSpec)

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

type Swift

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

	Spec   SwiftSpec   `json:"spec,omitempty"`
	Status SwiftStatus `json:"status,omitempty"`
}

Swift is the Schema for the swifts API

func (*Swift) DeepCopy

func (in *Swift) DeepCopy() *Swift

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

func (*Swift) DeepCopyInto

func (in *Swift) DeepCopyInto(out *Swift)

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

func (*Swift) DeepCopyObject

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

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

func (*Swift) Default

func (r *Swift) Default()

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

func (Swift) IsReady

func (instance Swift) IsReady() bool

IsReady - returns true if Swift is reconciled successfully

func (Swift) RbacConditionsSet

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

RbacConditionsSet - set the conditions for the rbac object

func (Swift) RbacNamespace

func (instance Swift) RbacNamespace() string

RbacNamespace - return the namespace

func (Swift) RbacResourceName

func (instance Swift) RbacResourceName() string

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

func (*Swift) SetupWebhookWithManager

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

func (*Swift) ValidateCreate

func (r *Swift) ValidateCreate() error

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

func (*Swift) ValidateDelete

func (r *Swift) ValidateDelete() error

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

func (*Swift) ValidateUpdate

func (r *Swift) ValidateUpdate(old runtime.Object) error

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

type SwiftDefaults

type SwiftDefaults struct {
	AccountContainerImageURL   string
	ContainerContainerImageURL string
	ObjectContainerImageURL    string
	ProxyContainerImageURL     string
	MemcachedContainerImageURL string
}

SwiftDefaults -

func (*SwiftDefaults) DeepCopy

func (in *SwiftDefaults) DeepCopy() *SwiftDefaults

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

func (*SwiftDefaults) DeepCopyInto

func (in *SwiftDefaults) DeepCopyInto(out *SwiftDefaults)

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

type SwiftList

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

SwiftList contains a list of Swift

func (*SwiftList) DeepCopy

func (in *SwiftList) DeepCopy() *SwiftList

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

func (*SwiftList) DeepCopyInto

func (in *SwiftList) DeepCopyInto(out *SwiftList)

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

func (*SwiftList) DeepCopyObject

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

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

type SwiftProxy

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

	Spec   SwiftProxySpec   `json:"spec,omitempty"`
	Status SwiftProxyStatus `json:"status,omitempty"`
}

SwiftProxy is the Schema for the swiftproxies API

func (*SwiftProxy) DeepCopy

func (in *SwiftProxy) DeepCopy() *SwiftProxy

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

func (*SwiftProxy) DeepCopyInto

func (in *SwiftProxy) DeepCopyInto(out *SwiftProxy)

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

func (*SwiftProxy) DeepCopyObject

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

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

type SwiftProxyList

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

SwiftProxyList contains a list of SwiftProxy

func (*SwiftProxyList) DeepCopy

func (in *SwiftProxyList) DeepCopy() *SwiftProxyList

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

func (*SwiftProxyList) DeepCopyInto

func (in *SwiftProxyList) DeepCopyInto(out *SwiftProxyList)

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

func (*SwiftProxyList) DeepCopyObject

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

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

type SwiftProxySpec

type SwiftProxySpec struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum=0
	// Replicas of Swift Proxy
	Replicas *int32 `json:"replicas"`

	// +kubebuilder:validation:Required
	// Swift Proxy Container Image URL
	ContainerImageProxy string `json:"containerImageProxy"`

	// +kubebuilder:validation:Required
	// Image URL for Memcache servicd
	ContainerImageMemcached string `json:"containerImageMemcached"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=swift
	// ServiceUser - optional username used for this service to register in Swift
	ServiceUser string `json:"serviceUser"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=osp-secret
	// Secret containing OpenStack password information for Swift service user password
	Secret string `json:"secret"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default={service: SwiftPassword}
	// PasswordSelector - Selector to choose the Swift user password from the Secret
	PasswordSelectors PasswordSelector `json:"passwordSelectors"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=swift-conf
	// Name of Secret containing swift.conf
	SwiftConfSecret string `json:"swiftConfSecret"`

	// +kubebuilder:validation:Optional
	// Override, provides the ability to override the generated manifest of several child resources.
	Override ProxyOverrideSpec `json:"override,omitempty"`
}

SwiftProxySpec defines the desired state of SwiftProxy

func (*SwiftProxySpec) DeepCopy

func (in *SwiftProxySpec) DeepCopy() *SwiftProxySpec

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

func (*SwiftProxySpec) DeepCopyInto

func (in *SwiftProxySpec) DeepCopyInto(out *SwiftProxySpec)

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

type SwiftProxyStatus

type SwiftProxyStatus struct {
	// ReadyCount of SwiftProxy instances
	ReadyCount int32 `json:"readyCount,omitempty"`

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

SwiftProxyStatus defines the observed state of SwiftProxy

func (*SwiftProxyStatus) DeepCopy

func (in *SwiftProxyStatus) DeepCopy() *SwiftProxyStatus

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

func (*SwiftProxyStatus) DeepCopyInto

func (in *SwiftProxyStatus) DeepCopyInto(out *SwiftProxyStatus)

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

type SwiftRing

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

	Spec   SwiftRingSpec   `json:"spec,omitempty"`
	Status SwiftRingStatus `json:"status,omitempty"`
}

SwiftRing is the Schema for the swiftrings API

func (*SwiftRing) DeepCopy

func (in *SwiftRing) DeepCopy() *SwiftRing

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

func (*SwiftRing) DeepCopyInto

func (in *SwiftRing) DeepCopyInto(out *SwiftRing)

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

func (*SwiftRing) DeepCopyObject

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

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

type SwiftRingList

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

SwiftRingList contains a list of SwiftRing

func (*SwiftRingList) DeepCopy

func (in *SwiftRingList) DeepCopy() *SwiftRingList

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

func (*SwiftRingList) DeepCopyInto

func (in *SwiftRingList) DeepCopyInto(out *SwiftRingList)

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

func (*SwiftRingList) DeepCopyObject

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

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

type SwiftRingSpec

type SwiftRingSpec struct {

	// +kubebuilder:validation:Required
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum=1
	// Number of Swift object replicas (=copies)
	RingReplicas *int64 `json:"ringReplicas"`

	// +kubebuilder:validation:Required
	// Image URL for Swift proxy service
	ContainerImage string `json:"containerImage"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=swift-conf
	// Name of Secret containing swift.conf
	SwiftConfSecret string `json:"swiftConfSecret"`
}

SwiftRingSpec defines the desired state of SwiftRing

func (*SwiftRingSpec) DeepCopy

func (in *SwiftRingSpec) DeepCopy() *SwiftRingSpec

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

func (*SwiftRingSpec) DeepCopyInto

func (in *SwiftRingSpec) DeepCopyInto(out *SwiftRingSpec)

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

type SwiftRingStatus

type SwiftRingStatus struct {
	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`

	// Map of hashes to track e.g. job status
	Hash map[string]string `json:"hash,omitempty"`
}

SwiftRingStatus defines the observed state of SwiftRing

func (*SwiftRingStatus) DeepCopy

func (in *SwiftRingStatus) DeepCopy() *SwiftRingStatus

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

func (*SwiftRingStatus) DeepCopyInto

func (in *SwiftRingStatus) DeepCopyInto(out *SwiftRingStatus)

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

type SwiftSpec

type SwiftSpec struct {
	// +kubebuilder:validation:Required
	// SwiftRing - Spec definition for the Ring service of this Swift deployment
	SwiftRing SwiftRingSpec `json:"swiftRing"`

	// +kubebuilder:validation:Required
	// SwiftStorage - Spec definition for the Storage service of this Swift deployment
	SwiftStorage SwiftStorageSpec `json:"swiftStorage"`

	// +kubebuilder:validation:Required
	// SwiftProxy - Spec definition for the Proxy service of this Swift deployment
	SwiftProxy SwiftProxySpec `json:"swiftProxy"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=swift-conf
	// Name of Secret containing swift.conf
	SwiftConfSecret string `json:"swiftConfSecret"`

	// Storage class. This is passed to SwiftStorage unless
	// storageClass is explicitly set for the SwiftStorage.
	// +kubebuilder:validation:Required
	// +kubebuilder:default=""
	StorageClass string `json:"storageClass"`
}

SwiftSpec defines the desired state of Swift

func (*SwiftSpec) DeepCopy

func (in *SwiftSpec) DeepCopy() *SwiftSpec

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

func (*SwiftSpec) DeepCopyInto

func (in *SwiftSpec) DeepCopyInto(out *SwiftSpec)

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

func (*SwiftSpec) Default

func (spec *SwiftSpec) Default()

Default - set defaults for this Swift spec

type SwiftStatus

type SwiftStatus struct {
	// Conditions
	Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
}

SwiftStatus defines the observed state of Swift

func (*SwiftStatus) DeepCopy

func (in *SwiftStatus) DeepCopy() *SwiftStatus

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

func (*SwiftStatus) DeepCopyInto

func (in *SwiftStatus) DeepCopyInto(out *SwiftStatus)

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

type SwiftStorage

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

	Spec   SwiftStorageSpec   `json:"spec,omitempty"`
	Status SwiftStorageStatus `json:"status,omitempty"`
}

SwiftStorage is the Schema for the swiftstorages API

func (*SwiftStorage) DeepCopy

func (in *SwiftStorage) DeepCopy() *SwiftStorage

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

func (*SwiftStorage) DeepCopyInto

func (in *SwiftStorage) DeepCopyInto(out *SwiftStorage)

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

func (*SwiftStorage) DeepCopyObject

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

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

type SwiftStorageList

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

SwiftStorageList contains a list of SwiftStorage

func (*SwiftStorageList) DeepCopy

func (in *SwiftStorageList) DeepCopy() *SwiftStorageList

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

func (*SwiftStorageList) DeepCopyInto

func (in *SwiftStorageList) DeepCopyInto(out *SwiftStorageList)

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

func (*SwiftStorageList) DeepCopyObject

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

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

type SwiftStorageSpec

type SwiftStorageSpec struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum=0
	Replicas *int32 `json:"replicas"`

	// +kubebuilder:validation:Required
	// Name of StorageClass to use for Swift PVs
	// +kubebuilder:default=""
	StorageClass string `json:"storageClass"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default="10Gi"
	// Minimum size for Swift PVs
	StorageRequest string `json:"storageRequest"`

	// +kubebuilder:validation:Required
	// Image URL for Swift account service
	ContainerImageAccount string `json:"containerImageAccount"`

	// +kubebuilder:validation:Required
	// Image URL for Swift container service
	ContainerImageContainer string `json:"containerImageContainer"`

	// +kubebuilder:validation:Required
	// Image URL for Swift object service
	ContainerImageObject string `json:"containerImageObject"`

	// +kubebuilder:validation:Required
	// Image URL for Swift proxy service
	ContainerImageProxy string `json:"containerImageProxy"`

	// +kubebuilder:validation:Required
	// Image URL for Memcache servicd
	ContainerImageMemcached string `json:"containerImageMemcached"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=swift-conf
	// Name of Secret containing swift.conf
	SwiftConfSecret string `json:"swiftConfSecret"`
}

SwiftStorageSpec defines the desired state of SwiftStorage

func (*SwiftStorageSpec) DeepCopy

func (in *SwiftStorageSpec) DeepCopy() *SwiftStorageSpec

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

func (*SwiftStorageSpec) DeepCopyInto

func (in *SwiftStorageSpec) DeepCopyInto(out *SwiftStorageSpec)

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

type SwiftStorageStatus

type SwiftStorageStatus struct {
	// ReadyCount of SwiftStorage instances
	ReadyCount int32 `json:"readyCount,omitempty"`

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

SwiftStorageStatus defines the observed state of SwiftStorage

func (*SwiftStorageStatus) DeepCopy

func (in *SwiftStorageStatus) DeepCopy() *SwiftStorageStatus

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

func (*SwiftStorageStatus) DeepCopyInto

func (in *SwiftStorageStatus) DeepCopyInto(out *SwiftStorageStatus)

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