Help us shape the future of Go! Take the 2026 Go Developer Survey

v1beta1

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2025 License: Apache-2.0 Imports: 16 Imported by: 5

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 (
	// 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"
)
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() (admission.Warnings, error)

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

func (*Swift) ValidateDelete

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

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

func (*Swift) ValidateUpdate

func (r *Swift) ValidateUpdate(old runtime.Object) (admission.Warnings, 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
}

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 SwiftDisk added in v0.4.0

type SwiftDisk struct {
	Device string `json:"device"`
	Path   string `json:"path"`
	Weight int32  `json:"weight"`
	Region int32  `json:"region"`
	Zone   int32  `json:"zone"`
}

func (*SwiftDisk) DeepCopy added in v0.4.0

func (in *SwiftDisk) DeepCopy() *SwiftDisk

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

func (*SwiftDisk) DeepCopyInto added in v0.4.0

func (in *SwiftDisk) DeepCopyInto(out *SwiftDisk)

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.

func (*SwiftProxy) GetLastAppliedTopology added in v0.6.0

func (instance *SwiftProxy) GetLastAppliedTopology() *topologyv1.TopoRef

GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status

func (*SwiftProxy) GetSpecTopologyRef added in v0.6.0

func (instance *SwiftProxy) GetSpecTopologyRef() *topologyv1.TopoRef

GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status

func (*SwiftProxy) SetLastAppliedTopology added in v0.6.0

func (instance *SwiftProxy) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)

SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status

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 {
	SwiftProxySpecCore `json:",inline"`

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

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 SwiftProxySpecCore added in v0.4.0

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

	// +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:Optional
	// Override, provides the ability to override the generated manifest of several child resources.
	Override ProxyOverrideSpec `json:"override,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:Required
	// +kubebuilder:default=memcached
	// Memcached instance name.
	MemcachedInstance string `json:"memcachedInstance"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=rabbitmq
	// RabbitMQ instance name to request a transportURL for Ceilometer middleware
	RabbitMqClusterName string `json:"rabbitMqClusterName"`

	// +kubebuilder:validation:Optional
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// TLS - Parameters related to the TLS
	TLS tls.API `json:"tls,omitempty"`

	// DefaultConfigOverwrite - can be used to add additionalfiles. Those get
	// added to the service config dir in /etc/<servicename>-conf.d
	DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=false
	// Encrypts new objects at rest
	EncryptionEnabled bool `json:"encryptionEnabled"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=false
	// Enables ceilometer in the swift proxy and creates required resources
	CeilometerEnabled bool `json:"ceilometerEnabled"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running this service
	NodeSelector *map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	// TopologyRef to apply the Topology defined by the associated CR referenced
	// by name
	TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}

SwiftProxySpecCore -

func (*SwiftProxySpecCore) DeepCopy added in v0.4.0

func (in *SwiftProxySpecCore) DeepCopy() *SwiftProxySpecCore

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

func (*SwiftProxySpecCore) DeepCopyInto added in v0.4.0

func (in *SwiftProxySpecCore) DeepCopyInto(out *SwiftProxySpecCore)

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"`

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

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

	// TransportURLSecret - Secret containing RabbitMQ transportURL
	TransportURLSecret string `json:"transportURLSecret,omitempty"`

	// ObservedGeneration - the most recent generation observed for this
	// service. If the observed generation is less than the spec generation,
	// then the controller has not processed the latest changes injected by
	// the openstack-operator in the top-level CR (e.g. the ContainerImage)
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// LastAppliedTopology - the last applied Topology
	LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}

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 {
	SwiftRingSpecCore `json:",inline"`

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

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 SwiftRingSpecCore added in v0.4.0

type SwiftRingSpecCore struct {

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

	// +kubebuilder:validation:Required
	// +kubebuilder:default=10
	// +kubebuilder:validation:Minimum=1
	// Partition power of the Swift rings
	PartPower *int64 `json:"partPower"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum=1
	// Minimum number of hours to restrict moving a partition more than once
	MinPartHours *int64 `json:"minPartHours"`

	// +kubebuilder:validation:Optional
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// TLS - Parameters related to the TLS
	TLS tls.Ca `json:"tls,omitempty"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running this service
	NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
}

SwiftRingSpec defines the desired state of SwiftRing

func (*SwiftRingSpecCore) DeepCopy added in v0.4.0

func (in *SwiftRingSpecCore) DeepCopy() *SwiftRingSpecCore

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

func (*SwiftRingSpecCore) DeepCopyInto added in v0.4.0

func (in *SwiftRingSpecCore) DeepCopyInto(out *SwiftRingSpecCore)

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"`

	// ObservedGeneration - the most recent generation observed for this
	// service. If the observed generation is less than the spec generation,
	// then the controller has not processed the latest changes injected by
	// the openstack-operator in the top-level CR (e.g. the ContainerImage)
	ObservedGeneration int64 `json:"observedGeneration,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 {
	SwiftSpecBase `json:",inline"`

	// +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"`
}

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

func (*SwiftSpec) ValidateCreate added in v0.4.0

func (r *SwiftSpec) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList

ValidateCreate - Exported function wrapping non-exported validate functions, this function can be called externally to validate an swift spec.

func (*SwiftSpec) ValidateSwiftTopology added in v0.6.0

func (spec *SwiftSpec) ValidateSwiftTopology(basePath *field.Path, namespace string) field.ErrorList

ValidateSwiftTopology - Returns an ErrorList if the Topology is referenced on a different namespace

func (*SwiftSpec) ValidateUpdate added in v0.4.0

func (r *SwiftSpec) ValidateUpdate(old SwiftSpec, basePath *field.Path, namespace string) field.ErrorList

ValidateUpdate - Exported function wrapping non-exported validate functions, this function can be called externally to validate an swift spec.

type SwiftSpecBase added in v0.4.0

type SwiftSpecBase struct {

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

	// +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:Required
	// +kubebuilder:default=memcached
	// Memcached instance name.
	MemcachedInstance string `json:"memcachedInstance"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running this service
	NodeSelector *map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	// TopologyRef to apply the Topology defined by the associated CR referenced
	// by name
	TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}

SwiftSpecBase -

func (*SwiftSpecBase) DeepCopy added in v0.4.0

func (in *SwiftSpecBase) DeepCopy() *SwiftSpecBase

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

func (*SwiftSpecBase) DeepCopyInto added in v0.4.0

func (in *SwiftSpecBase) DeepCopyInto(out *SwiftSpecBase)

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

type SwiftSpecCore added in v0.4.0

type SwiftSpecCore struct {
	SwiftSpecBase `json:",inline"`

	// +kubebuilder:validation:Required
	// SwiftRing - Spec definition for the Ring service of this Swift deployment
	SwiftRing SwiftRingSpecCore `json:"swiftRing"`

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

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

SwiftSpecCore defines the desired state of Swift (this version is used by OpenStackControlplane)

func (*SwiftSpecCore) DeepCopy added in v0.4.0

func (in *SwiftSpecCore) DeepCopy() *SwiftSpecCore

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

func (*SwiftSpecCore) DeepCopyInto added in v0.4.0

func (in *SwiftSpecCore) DeepCopyInto(out *SwiftSpecCore)

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

func (*SwiftSpecCore) Default added in v0.4.0

func (spec *SwiftSpecCore) Default()

Default - set defaults for this Swift core spec (this version is used by OpenStackControlplane webhooks)

func (*SwiftSpecCore) ValidateCreate added in v0.4.0

func (r *SwiftSpecCore) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList

func (*SwiftSpecCore) ValidateSwiftTopology added in v0.6.0

func (spec *SwiftSpecCore) ValidateSwiftTopology(basePath *field.Path, namespace string) field.ErrorList

ValidateSwiftTopology - Returns an ErrorList if the Topology is referenced on a different namespace

func (*SwiftSpecCore) ValidateUpdate added in v0.4.0

func (r *SwiftSpecCore) ValidateUpdate(old SwiftSpecCore, basePath *field.Path, namespace string) field.ErrorList

type SwiftStatus

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

	// ObservedGeneration - the most recent generation observed for this
	// service. If the observed generation is less than the spec generation,
	// then the controller has not processed the latest changes injected by
	// the openstack-operator in the top-level CR (e.g. the ContainerImage)
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

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.

func (*SwiftStorage) GetLastAppliedTopology added in v0.6.0

func (instance *SwiftStorage) GetLastAppliedTopology() *topologyv1.TopoRef

GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status

func (*SwiftStorage) GetSpecTopologyRef added in v0.6.0

func (instance *SwiftStorage) GetSpecTopologyRef() *topologyv1.TopoRef

GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status

func (*SwiftStorage) SetLastAppliedTopology added in v0.6.0

func (instance *SwiftStorage) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)

SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status

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 {
	SwiftStorageSpecCore `json:",inline"`

	// +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"`
}

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 SwiftStorageSpecCore added in v0.4.0

type SwiftStorageSpecCore 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:Optional
	// NetworkAttachments is a list of NetworkAttachment resource names to expose the services to the given network
	NetworkAttachments []string `json:"networkAttachments,omitempty"`

	// +kubebuilder:validation:Required
	// +kubebuilder:default=memcached
	// Memcached instance name.
	MemcachedInstance string `json:"memcachedInstance"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default=false
	// If the container sharder daemon is enabled.
	ContainerSharderEnabled bool `json:"containerSharderEnabled"`

	// DefaultConfigOverwrite - can be used to add additionalfiles. Those get
	// added to the service config dir in /etc/<servicename>-conf.d
	DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`

	// +kubebuilder:validation:Optional
	// NodeSelector to target subset of worker nodes running this service
	NodeSelector *map[string]string `json:"nodeSelector,omitempty"`

	// +kubebuilder:validation:Optional
	// TopologyRef to apply the Topology defined by the associated CR referenced
	// by name
	TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}

SwiftStorageSpecCore -

func (*SwiftStorageSpecCore) DeepCopy added in v0.4.0

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

func (*SwiftStorageSpecCore) DeepCopyInto added in v0.4.0

func (in *SwiftStorageSpecCore) DeepCopyInto(out *SwiftStorageSpecCore)

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"`

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

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

	// ObservedGeneration - the most recent generation observed for this
	// service. If the observed generation is less than the spec generation,
	// then the controller has not processed the latest changes injected by
	// the openstack-operator in the top-level CR (e.g. the ContainerImage)
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// LastAppliedTopology - the last applied Topology
	LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}

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