v1alpha2

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2021 License: MPL-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the rabbitmq.com v1alpha2 API group +kubebuilder:object:generate=true +groupName=rabbitmq.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "rabbitmq.com", Version: "v1alpha2"}

	// SchemeGroupVersion is group version used to register these objects
	// added for generated clientset
	SchemeGroupVersion = GroupVersion

	// 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 Kind added in v0.5.1

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind added for generated clientset

func Resource added in v0.5.1

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource added for generated clientset

Types

type Binding

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

	Spec   BindingSpec   `json:"spec,omitempty"`
	Status BindingStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:categories=all +kubebuilder:subresource:status Binding is the Schema for the bindings API

func (*Binding) DeepCopy

func (in *Binding) DeepCopy() *Binding

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

func (*Binding) DeepCopyInto

func (in *Binding) DeepCopyInto(out *Binding)

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

func (*Binding) DeepCopyObject

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

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

func (*Binding) GroupResource

func (b *Binding) GroupResource() schema.GroupResource

func (*Binding) SetupWebhookWithManager

func (b *Binding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Binding) ValidateCreate

func (b *Binding) ValidateCreate() error

no validation logic on create

func (*Binding) ValidateDelete

func (b *Binding) ValidateDelete() error

no validation logic on delete

func (*Binding) ValidateUpdate

func (b *Binding) ValidateUpdate(old runtime.Object) error

updates on bindings.rabbitmq.com is forbidden

type BindingList

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

BindingList contains a list of Binding

func (*BindingList) DeepCopy

func (in *BindingList) DeepCopy() *BindingList

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

func (*BindingList) DeepCopyInto

func (in *BindingList) DeepCopyInto(out *BindingList)

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

func (*BindingList) DeepCopyObject

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

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

type BindingSpec

type BindingSpec struct {
	// Default to vhost '/'
	// +kubebuilder:default:=/
	Vhost string `json:"vhost,omitempty"`
	// +kubebuilder:validation:Optional
	Source string `json:"source,omitempty"`
	// +kubebuilder:validation:Optional
	Destination string `json:"destination,omitempty"`
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum=exchange;queue
	DestinationType string `json:"destinationType,omitempty"`
	// +kubebuilder:validation:Optional
	RoutingKey string `json:"routingKey,omitempty"`
	// +kubebuilder:validation:Type=object
	// +kubebuilder:pruning:PreserveUnknownFields
	Arguments *runtime.RawExtension `json:"arguments,omitempty"`
	// Reference to the RabbitmqCluster that the binding will be created in.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

BindingSpec defines the desired state of Binding

func (*BindingSpec) DeepCopy

func (in *BindingSpec) DeepCopy() *BindingSpec

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

func (*BindingSpec) DeepCopyInto

func (in *BindingSpec) DeepCopyInto(out *BindingSpec)

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

type BindingStatus

type BindingStatus struct {
	// observedGeneration is the most recent successful generation observed for this Binding. It corresponds to the
	// Binding's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

BindingStatus defines the observed state of Binding

func (*BindingStatus) DeepCopy

func (in *BindingStatus) DeepCopy() *BindingStatus

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

func (*BindingStatus) DeepCopyInto

func (in *BindingStatus) DeepCopyInto(out *BindingStatus)

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

type Condition

type Condition struct {
	// Type indicates the scope of RabbitmqCluster status addressed by the condition.
	Type ConditionType `json:"type"`
	// True, False, or Unknown
	Status corev1.ConditionStatus `json:"status"`
	// The last time this Condition type changed.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// One word, camel-case reason for current status of the condition.
	Reason string `json:"reason,omitempty"`
	// Full text reason for current status of the condition.
	Message string `json:"message,omitempty"`
}

func NotReady

func NotReady(msg string) Condition

NotReady indicates that the last Create/Update operator on the CR failed.

func Ready

func Ready() Condition

Ready indicates that the last Create/Update operator on the CR was successful.

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

type ConditionType

type ConditionType string

type Exchange

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

	Spec   ExchangeSpec   `json:"spec,omitempty"`
	Status ExchangeStatus `json:"status,omitempty"`
}

Exchange is the Schema for the exchanges API

func (*Exchange) DeepCopy

func (in *Exchange) DeepCopy() *Exchange

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

func (*Exchange) DeepCopyInto

func (in *Exchange) DeepCopyInto(out *Exchange)

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

func (*Exchange) DeepCopyObject

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

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

func (*Exchange) GroupResource

func (e *Exchange) GroupResource() schema.GroupResource

func (*Exchange) SetupWebhookWithManager

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

func (*Exchange) ValidateCreate

func (e *Exchange) ValidateCreate() error

no validation on create

func (*Exchange) ValidateDelete

func (e *Exchange) ValidateDelete() error

no validation on delete

func (*Exchange) ValidateUpdate

func (e *Exchange) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type returns error type 'forbidden' for updates that the controller chooses to disallow: exchange name/vhost/rabbitmqClusterReference returns error type 'invalid' for updates that will be rejected by rabbitmq server: exchange types/autoDelete/durable exchange.spec.arguments can be updated

type ExchangeList

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

ExchangeList contains a list of Exchange

func (*ExchangeList) DeepCopy

func (in *ExchangeList) DeepCopy() *ExchangeList

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

func (*ExchangeList) DeepCopyInto

func (in *ExchangeList) DeepCopyInto(out *ExchangeList)

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

func (*ExchangeList) DeepCopyObject

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

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

type ExchangeSpec

type ExchangeSpec struct {
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Default to vhost '/'
	// +kubebuilder:default:=/
	Vhost string `json:"vhost,omitempty"`
	// +kubebuilder:validation:Enum=direct;fanout;headers;topic
	// +kubebuilder:default:=direct
	Type       string `json:"type,omitempty"`
	Durable    bool   `json:"durable,omitempty"`
	AutoDelete bool   `json:"autoDelete,omitempty"`
	// +kubebuilder:validation:Type=object
	// +kubebuilder:pruning:PreserveUnknownFields
	Arguments *runtime.RawExtension `json:"arguments,omitempty"`
	// Reference to the RabbitmqCluster that the exchange will be created in.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

ExchangeSpec defines the desired state of Exchange

func (*ExchangeSpec) DeepCopy

func (in *ExchangeSpec) DeepCopy() *ExchangeSpec

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

func (*ExchangeSpec) DeepCopyInto

func (in *ExchangeSpec) DeepCopyInto(out *ExchangeSpec)

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

type ExchangeStatus

type ExchangeStatus struct {
	// observedGeneration is the most recent successful generation observed for this Exchange. It corresponds to the
	// Exchange's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

ExchangeStatus defines the observed state of Exchange

func (*ExchangeStatus) DeepCopy

func (in *ExchangeStatus) DeepCopy() *ExchangeStatus

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

func (*ExchangeStatus) DeepCopyInto

func (in *ExchangeStatus) DeepCopyInto(out *ExchangeStatus)

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

type Permission added in v0.5.0

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

	Spec   PermissionSpec   `json:"spec,omitempty"`
	Status PermissionStatus `json:"status,omitempty"`
}

Permission is the Schema for the permissions API

func (*Permission) DeepCopy added in v0.5.0

func (in *Permission) DeepCopy() *Permission

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

func (*Permission) DeepCopyInto added in v0.5.0

func (in *Permission) DeepCopyInto(out *Permission)

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

func (*Permission) DeepCopyObject added in v0.5.0

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

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

func (*Permission) GroupResource added in v0.5.0

func (p *Permission) GroupResource() schema.GroupResource

func (*Permission) SetupWebhookWithManager added in v0.5.0

func (p *Permission) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Permission) ValidateCreate added in v0.5.0

func (p *Permission) ValidateCreate() error

no validation on create

func (*Permission) ValidateDelete added in v0.5.0

func (p *Permission) ValidateDelete() error

no validation on delete

func (*Permission) ValidateUpdate added in v0.5.0

func (p *Permission) ValidateUpdate(old runtime.Object) error

do not allow updates on spec.vhost, spec.user, and spec.rabbitmqClusterReference updates on spec.permissions are allowed

type PermissionList added in v0.5.0

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

PermissionList contains a list of Permission

func (*PermissionList) DeepCopy added in v0.5.0

func (in *PermissionList) DeepCopy() *PermissionList

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

func (*PermissionList) DeepCopyInto added in v0.5.0

func (in *PermissionList) DeepCopyInto(out *PermissionList)

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

func (*PermissionList) DeepCopyObject added in v0.5.0

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

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

type PermissionSpec added in v0.5.0

type PermissionSpec struct {
	// Name of an existing user; required property.
	// +kubebuilder:validation:Required
	User string `json:"user"`
	// Name of an existing vhost; required property.
	// +kubebuilder:validation:Required
	Vhost string `json:"vhost"`
	// Permissions to grant to the user in the specific vhost; required property.
	// See RabbitMQ doc for more information: https://www.rabbitmq.com/access-control.html#user-management
	// +kubebuilder:validation:Required
	Permissions VhostPermissions `json:"permissions"`
	// Reference to the RabbitmqCluster that both the provided user and vhost are.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

PermissionSpec defines the desired state of Permission

func (*PermissionSpec) DeepCopy added in v0.5.0

func (in *PermissionSpec) DeepCopy() *PermissionSpec

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

func (*PermissionSpec) DeepCopyInto added in v0.5.0

func (in *PermissionSpec) DeepCopyInto(out *PermissionSpec)

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

type PermissionStatus added in v0.5.0

type PermissionStatus struct {
	// observedGeneration is the most recent successful generation observed for this Permission. It corresponds to the
	// Permission's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

PermissionStatus defines the observed state of Permission

func (*PermissionStatus) DeepCopy added in v0.5.0

func (in *PermissionStatus) DeepCopy() *PermissionStatus

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

func (*PermissionStatus) DeepCopyInto added in v0.5.0

func (in *PermissionStatus) DeepCopyInto(out *PermissionStatus)

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

type Policy

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

	Spec   PolicySpec   `json:"spec,omitempty"`
	Status PolicyStatus `json:"status,omitempty"`
}

Policy is the Schema for the policies API

func (*Policy) DeepCopy

func (in *Policy) DeepCopy() *Policy

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

func (*Policy) DeepCopyInto

func (in *Policy) DeepCopyInto(out *Policy)

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

func (*Policy) DeepCopyObject

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

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

func (*Policy) GroupResource

func (p *Policy) GroupResource() schema.GroupResource

func (*Policy) SetupWebhookWithManager

func (p *Policy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Policy) ValidateCreate

func (p *Policy) ValidateCreate() error

no validation on create

func (*Policy) ValidateDelete

func (p *Policy) ValidateDelete() error

no validation on delete

func (*Policy) ValidateUpdate

func (p *Policy) ValidateUpdate(old runtime.Object) error

returns error type 'forbidden' for updates on policy name, vhost and rabbitmqClusterReference

type PolicyList

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

PolicyList contains a list of Policy

func (*PolicyList) DeepCopy

func (in *PolicyList) DeepCopy() *PolicyList

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

func (*PolicyList) DeepCopyInto

func (in *PolicyList) DeepCopyInto(out *PolicyList)

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

func (*PolicyList) DeepCopyObject

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

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

type PolicySpec

type PolicySpec struct {
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Default to vhost '/'
	// +kubebuilder:default:=/
	Vhost string `json:"vhost,omitempty"`
	// Regular expression pattern used to match queues and exchanges, e.g. "^amq.".
	// Required property.
	// +kubebuilder:validation:Required
	Pattern string `json:"pattern"`
	// What this policy applies to: 'queues', 'exchanges', or 'all'.
	// Default to 'all'.
	// +kubebuilder:validation:Enum=queues;exchanges;all
	// +kubebuilder:default:=all
	ApplyTo string `json:"applyTo,omitempty"`
	// Default to '0'.
	// In the event that more than one policy can match a given exchange or queue, the policy with the greatest priority applies.
	// +kubebuilder:default:=0
	Priority int `json:"priority,omitempty"`
	// Policy definition. Required property.
	// +kubebuilder:validation:Type=object
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Required
	Definition *runtime.RawExtension `json:"definition"`
	// Reference to the RabbitmqCluster that the exchange will be created in.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

PolicySpec defines the desired state of Policy https://www.rabbitmq.com/parameters.html#policies

func (*PolicySpec) DeepCopy

func (in *PolicySpec) DeepCopy() *PolicySpec

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

func (*PolicySpec) DeepCopyInto

func (in *PolicySpec) DeepCopyInto(out *PolicySpec)

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

type PolicyStatus

type PolicyStatus struct {
	// observedGeneration is the most recent successful generation observed for this Policy. It corresponds to the
	// Policy's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

PolicyStatus defines the observed state of Policy

func (*PolicyStatus) DeepCopy

func (in *PolicyStatus) DeepCopy() *PolicyStatus

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

func (*PolicyStatus) DeepCopyInto

func (in *PolicyStatus) DeepCopyInto(out *PolicyStatus)

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

type Queue

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

	Spec   QueueSpec   `json:"spec,omitempty"`
	Status QueueStatus `json:"status,omitempty"`
}

Queue is the Schema for the queues API

func (*Queue) DeepCopy

func (in *Queue) DeepCopy() *Queue

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

func (*Queue) DeepCopyInto

func (in *Queue) DeepCopyInto(out *Queue)

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

func (*Queue) DeepCopyObject

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

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

func (*Queue) GroupResource

func (q *Queue) GroupResource() schema.GroupResource

func (*Queue) SetupWebhookWithManager

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

func (*Queue) ValidateCreate

func (q *Queue) ValidateCreate() error

no validation on create

func (*Queue) ValidateDelete

func (q *Queue) ValidateDelete() error

no validation on delete

func (*Queue) ValidateUpdate

func (q *Queue) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type returns error type 'forbidden' for updates that the controller chooses to disallow: queue name/vhost/rabbitmqClusterReference returns error type 'invalid' for updates that will be rejected by rabbitmq server: queue types/autoDelete/durable queue arguments not handled because implementation couldn't change

type QueueList

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

QueueList contains a list of Queue

func (*QueueList) DeepCopy

func (in *QueueList) DeepCopy() *QueueList

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

func (*QueueList) DeepCopyInto

func (in *QueueList) DeepCopyInto(out *QueueList)

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

func (*QueueList) DeepCopyObject

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

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

type QueueSpec

type QueueSpec struct {
	// Name of the queue; required property
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Default to vhost '/'
	// +kubebuilder:default:=/
	Vhost string `json:"vhost,omitempty"`
	Type  string `json:"type,omitempty"`
	// When set to false queues does not survive server restart
	Durable bool `json:"durable,omitempty"`
	// when set to true, queues that has at least one consumer before, are deleted after last consumer unsubscribes
	AutoDelete bool `json:"autoDelete,omitempty"`
	// Queue arguments in the format of KEY: VALUE. e.g. x-delivery-limit: 10000
	// +kubebuilder:validation:Type=object
	// +kubebuilder:pruning:PreserveUnknownFields
	Arguments *runtime.RawExtension `json:"arguments,omitempty"`
	// Reference to the RabbitmqCluster that the queue will be created in.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

QueueSpec defines the desired state of Queue

func (*QueueSpec) DeepCopy

func (in *QueueSpec) DeepCopy() *QueueSpec

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

func (*QueueSpec) DeepCopyInto

func (in *QueueSpec) DeepCopyInto(out *QueueSpec)

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

type QueueStatus

type QueueStatus struct {
	// observedGeneration is the most recent successful generation observed for this Queue. It corresponds to the
	// Queue's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

QueueStatus defines the observed state of Queue

func (*QueueStatus) DeepCopy

func (in *QueueStatus) DeepCopy() *QueueStatus

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

func (*QueueStatus) DeepCopyInto

func (in *QueueStatus) DeepCopyInto(out *QueueStatus)

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

type RabbitmqClusterReference

type RabbitmqClusterReference struct {
	// +kubebuilder:validation:Required
	Name string `json:"name"`
}

func (*RabbitmqClusterReference) DeepCopy

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

func (*RabbitmqClusterReference) DeepCopyInto

func (in *RabbitmqClusterReference) DeepCopyInto(out *RabbitmqClusterReference)

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

type User

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

	// Spec configures the desired state of the User object.
	Spec UserSpec `json:"spec,omitempty"`
	// Status exposes the observed state of the User object.
	Status UserStatus `json:"status,omitempty"`
}

User is the Schema for the users API. +kubebuilder:subresource:status

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject

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

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

func (*User) GroupResource

func (u *User) GroupResource() schema.GroupResource

func (*User) SetupWebhookWithManager

func (u *User) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*User) ValidateCreate

func (u *User) ValidateCreate() error

no validation on create

func (*User) ValidateDelete

func (u *User) ValidateDelete() error

no validation on delete

func (*User) ValidateUpdate

func (u *User) ValidateUpdate(old runtime.Object) error

returns error type 'forbidden' for updates on rabbitmqClusterReference user.spec.tags can be updated

type UserList

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

UserList contains a list of Users.

func (*UserList) DeepCopy

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject

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

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

type UserSpec

type UserSpec struct {
	// List of permissions tags to associate with the user. This determines the level of
	// access to the RabbitMQ management UI granted to the user. Omitting this field will
	// lead to a user than can still connect to the cluster through messaging protocols,
	// but cannot perform any management actions.
	// For more information, see https://www.rabbitmq.com/management.html#permissions.
	Tags []UserTag `json:"tags,omitempty"`
	// Reference to the RabbitmqCluster that the user will be created for. This cluster must
	// exist for the User object to be created.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
	// Defines a Secret used to pre-define the username and password set for this User. User objects created
	// with this field set will not have randomly-generated credentials, and will instead import
	// the username/password values from this Secret.
	// The Secret must contain the keys `username` and `password` in its Data field, or the import will fail.
	// Note that this import only occurs at creation time, and is ignored once a password has been set
	// on a User.
	ImportCredentialsSecret *corev1.LocalObjectReference `json:"importCredentialsSecret,omitempty"`
}

UserSpec defines the desired state of User.

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus

type UserStatus struct {
	// observedGeneration is the most recent successful generation observed for this User. It corresponds to the
	// User's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
	// Provides a reference to a Secret object containing the user credentials.
	Credentials *corev1.LocalObjectReference `json:"credentials,omitempty"`
}

UserStatus defines the observed state of User.

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

type UserTag

type UserTag string

UserTag defines the level of access to the management UI allocated to the user. For more information, see https://www.rabbitmq.com/management.html#permissions. +kubebuilder:validation:Enum=management;policymaker;monitoring;administrator

type Vhost

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

	Spec   VhostSpec   `json:"spec,omitempty"`
	Status VhostStatus `json:"status,omitempty"`
}

Vhost is the Schema for the vhosts API

func (*Vhost) DeepCopy

func (in *Vhost) DeepCopy() *Vhost

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

func (*Vhost) DeepCopyInto

func (in *Vhost) DeepCopyInto(out *Vhost)

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

func (*Vhost) DeepCopyObject

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

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

func (*Vhost) GroupResource

func (v *Vhost) GroupResource() schema.GroupResource

func (*Vhost) SetupWebhookWithManager

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

func (*Vhost) ValidateCreate

func (v *Vhost) ValidateCreate() error

no validation on create

func (*Vhost) ValidateDelete

func (v *Vhost) ValidateDelete() error

no validation on delete

func (*Vhost) ValidateUpdate

func (v *Vhost) ValidateUpdate(old runtime.Object) error

returns error type 'forbidden' for updates on vhost name and rabbitmqClusterReference vhost.spec.tracing can be updated

type VhostList

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

VhostList contains a list of Vhost

func (*VhostList) DeepCopy

func (in *VhostList) DeepCopy() *VhostList

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

func (*VhostList) DeepCopyInto

func (in *VhostList) DeepCopyInto(out *VhostList)

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

func (*VhostList) DeepCopyObject

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

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

type VhostPermissions added in v0.5.0

type VhostPermissions struct {
	// +kubebuilder:validation:Optional
	Configure string `json:"configure,omitempty"`
	// +kubebuilder:validation:Optional
	Write string `json:"write,omitempty"`
	// +kubebuilder:validation:Optional
	Read string `json:"read,omitempty"`
}

Set of RabbitMQ permissions: configure, read and write. By not setting a property (configure/write/read), it result in an empty string which does not not match any permission.

func (*VhostPermissions) DeepCopy added in v0.5.0

func (in *VhostPermissions) DeepCopy() *VhostPermissions

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

func (*VhostPermissions) DeepCopyInto added in v0.5.0

func (in *VhostPermissions) DeepCopyInto(out *VhostPermissions)

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

type VhostSpec

type VhostSpec struct {
	// Name of the vhost; see https://www.rabbitmq.com/vhosts.html.
	// +kubebuilder:validation:Required
	Name    string `json:"name"`
	Tracing bool   `json:"tracing,omitempty"`
	// Reference to the RabbitmqCluster that the vhost will be created in.
	// Required property.
	// +kubebuilder:validation:Required
	RabbitmqClusterReference RabbitmqClusterReference `json:"rabbitmqClusterReference"`
}

VhostSpec defines the desired state of Vhost

func (*VhostSpec) DeepCopy

func (in *VhostSpec) DeepCopy() *VhostSpec

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

func (*VhostSpec) DeepCopyInto

func (in *VhostSpec) DeepCopyInto(out *VhostSpec)

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

type VhostStatus

type VhostStatus struct {
	// observedGeneration is the most recent successful generation observed for this Vhost. It corresponds to the
	// Vhost's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64       `json:"observedGeneration,omitempty"`
	Conditions         []Condition `json:"conditions,omitempty"`
}

VhostStatus defines the observed state of Vhost

func (*VhostStatus) DeepCopy

func (in *VhostStatus) DeepCopy() *VhostStatus

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

func (*VhostStatus) DeepCopyInto

func (in *VhostStatus) DeepCopyInto(out *VhostStatus)

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