v1alpha1

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2024 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=aiven.io +versionName=v1alpha1

Index

Constants

This section is empty.

Variables

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

	// 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
)
View Source
var ErrDeleteDependencies = errors.New("object has dependencies and cannot be deleted")

Functions

func ConvertDiscSpace added in v0.3.0

func ConvertDiscSpace(v string) int

func ErrorSubstrChecker added in v0.5.0

func ErrorSubstrChecker(substrings ...string) func(error) bool

ErrorSubstrChecker returns error checker for containing given substrings

func SetupWebhooks added in v0.11.0

func SetupWebhooks(mgr ctrl.Manager) error

Types

type AivenManagedObject added in v0.16.0

type AivenManagedObject interface {
	client.Object

	AuthSecretRef() *AuthSecretReference
	Conditions() *[]metav1.Condition
	NoSecret() bool
}

+k8s:deepcopy-gen=false

type AuthSecretReference

type AuthSecretReference struct {
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
	// +kubebuilder:validation:MinLength=1
	Key string `json:"key"`
}

AuthSecretReference references a Secret containing an Aiven authentication token

func (*AuthSecretReference) DeepCopy

func (in *AuthSecretReference) DeepCopy() *AuthSecretReference

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

func (*AuthSecretReference) DeepCopyInto

func (in *AuthSecretReference) DeepCopyInto(out *AuthSecretReference)

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

type Cassandra added in v0.7.0

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

	Spec   CassandraSpec `json:"spec,omitempty"`
	Status ServiceStatus `json:"status,omitempty"`
}

Cassandra is the Schema for the cassandras API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Region",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Plan",type="string",JSONPath=".spec.plan" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*Cassandra) AuthSecretRef added in v0.7.0

func (in *Cassandra) AuthSecretRef() *AuthSecretReference

func (*Cassandra) Conditions added in v0.16.0

func (in *Cassandra) Conditions() *[]metav1.Condition

func (*Cassandra) DeepCopy added in v0.7.0

func (in *Cassandra) DeepCopy() *Cassandra

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

func (*Cassandra) DeepCopyInto added in v0.7.0

func (in *Cassandra) DeepCopyInto(out *Cassandra)

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

func (*Cassandra) DeepCopyObject added in v0.7.0

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

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

func (*Cassandra) Default added in v0.7.0

func (in *Cassandra) Default()

func (*Cassandra) GetConnInfoSecretTarget added in v0.12.0

func (in *Cassandra) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Cassandra) GetRefs added in v0.7.0

func (in *Cassandra) GetRefs() []*ResourceReferenceObject

func (*Cassandra) NoSecret added in v0.17.0

func (in *Cassandra) NoSecret() bool

func (*Cassandra) SetupWebhookWithManager added in v0.7.0

func (in *Cassandra) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Cassandra) ValidateCreate added in v0.7.0

func (in *Cassandra) ValidateCreate() error

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

func (*Cassandra) ValidateDelete added in v0.7.0

func (in *Cassandra) ValidateDelete() error

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

func (*Cassandra) ValidateUpdate added in v0.7.0

func (in *Cassandra) ValidateUpdate(old runtime.Object) error

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

type CassandraList added in v0.7.0

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

CassandraList contains a list of Cassandra

func (*CassandraList) DeepCopy added in v0.7.0

func (in *CassandraList) DeepCopy() *CassandraList

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

func (*CassandraList) DeepCopyInto added in v0.7.0

func (in *CassandraList) DeepCopyInto(out *CassandraList)

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

func (*CassandraList) DeepCopyObject added in v0.7.0

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

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

type CassandraSpec added in v0.7.0

type CassandraSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `CASSANDRA_HOST`, `CASSANDRA_PORT`, `CASSANDRA_USER`, `CASSANDRA_PASSWORD`, `CASSANDRA_URI`, `CASSANDRA_HOSTS`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Cassandra specific user configuration options
	UserConfig *cassandrauserconfig.CassandraUserConfig `json:"userConfig,omitempty"`
}

CassandraSpec defines the desired state of Cassandra +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*CassandraSpec) DeepCopy added in v0.7.0

func (in *CassandraSpec) DeepCopy() *CassandraSpec

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

func (*CassandraSpec) DeepCopyInto added in v0.7.0

func (in *CassandraSpec) DeepCopyInto(out *CassandraSpec)

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

type Clickhouse added in v0.3.0

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

	Spec   ClickhouseSpec `json:"spec,omitempty"`
	Status ServiceStatus  `json:"status,omitempty"`
}

Clickhouse is the Schema for the clickhouses API

func (*Clickhouse) AuthSecretRef added in v0.3.0

func (in *Clickhouse) AuthSecretRef() *AuthSecretReference

func (*Clickhouse) Conditions added in v0.16.0

func (in *Clickhouse) Conditions() *[]metav1.Condition

func (*Clickhouse) DeepCopy added in v0.3.0

func (in *Clickhouse) DeepCopy() *Clickhouse

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

func (*Clickhouse) DeepCopyInto added in v0.3.0

func (in *Clickhouse) DeepCopyInto(out *Clickhouse)

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

func (*Clickhouse) DeepCopyObject added in v0.3.0

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

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

func (*Clickhouse) Default added in v0.3.0

func (in *Clickhouse) Default()

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

func (*Clickhouse) GetConnInfoSecretTarget added in v0.12.0

func (in *Clickhouse) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Clickhouse) GetRefs added in v0.5.0

func (in *Clickhouse) GetRefs() []*ResourceReferenceObject

func (*Clickhouse) NoSecret added in v0.17.0

func (in *Clickhouse) NoSecret() bool

func (*Clickhouse) SetupWebhookWithManager added in v0.3.0

func (in *Clickhouse) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Clickhouse) ValidateCreate added in v0.3.0

func (in *Clickhouse) ValidateCreate() error

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

func (*Clickhouse) ValidateDelete added in v0.3.0

func (in *Clickhouse) ValidateDelete() error

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

func (*Clickhouse) ValidateUpdate added in v0.3.0

func (in *Clickhouse) ValidateUpdate(old runtime.Object) error

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

type ClickhouseList added in v0.3.0

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

ClickhouseList contains a list of Clickhouse

func (*ClickhouseList) DeepCopy added in v0.3.0

func (in *ClickhouseList) DeepCopy() *ClickhouseList

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

func (*ClickhouseList) DeepCopyInto added in v0.3.0

func (in *ClickhouseList) DeepCopyInto(out *ClickhouseList)

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

func (*ClickhouseList) DeepCopyObject added in v0.3.0

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

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

type ClickhouseSpec added in v0.3.0

type ClickhouseSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `CLICKHOUSE_HOST`, `CLICKHOUSE_PORT`, `CLICKHOUSE_USER`, `CLICKHOUSE_PASSWORD`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// OpenSearch specific user configuration options
	UserConfig *clickhouseuserconfig.ClickhouseUserConfig `json:"userConfig,omitempty"`
}

ClickhouseSpec defines the desired state of Clickhouse +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*ClickhouseSpec) DeepCopy added in v0.3.0

func (in *ClickhouseSpec) DeepCopy() *ClickhouseSpec

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

func (*ClickhouseSpec) DeepCopyInto added in v0.3.0

func (in *ClickhouseSpec) DeepCopyInto(out *ClickhouseSpec)

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

type ClickhouseUser added in v0.3.0

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

	Spec   ClickhouseUserSpec   `json:"spec,omitempty"`
	Status ClickhouseUserStatus `json:"status,omitempty"`
}

ClickhouseUser is the Schema for the clickhouseusers API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Connection Information Secret",type="string",JSONPath=".spec.connInfoSecretTarget.name"

func (*ClickhouseUser) AuthSecretRef added in v0.3.0

func (in *ClickhouseUser) AuthSecretRef() *AuthSecretReference

func (*ClickhouseUser) Conditions added in v0.16.0

func (in *ClickhouseUser) Conditions() *[]metav1.Condition

func (*ClickhouseUser) DeepCopy added in v0.3.0

func (in *ClickhouseUser) DeepCopy() *ClickhouseUser

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

func (*ClickhouseUser) DeepCopyInto added in v0.3.0

func (in *ClickhouseUser) DeepCopyInto(out *ClickhouseUser)

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

func (*ClickhouseUser) DeepCopyObject added in v0.3.0

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

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

func (*ClickhouseUser) Default added in v0.3.0

func (in *ClickhouseUser) Default()

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

func (*ClickhouseUser) GetConnInfoSecretTarget added in v0.12.0

func (in *ClickhouseUser) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*ClickhouseUser) NoSecret added in v0.17.0

func (in *ClickhouseUser) NoSecret() bool

func (*ClickhouseUser) SetupWebhookWithManager added in v0.3.0

func (in *ClickhouseUser) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ClickhouseUser) ValidateCreate added in v0.3.0

func (in *ClickhouseUser) ValidateCreate() error

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

func (*ClickhouseUser) ValidateDelete added in v0.3.0

func (in *ClickhouseUser) ValidateDelete() error

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

func (*ClickhouseUser) ValidateUpdate added in v0.3.0

func (in *ClickhouseUser) ValidateUpdate(old runtime.Object) error

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

type ClickhouseUserList added in v0.3.0

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

ClickhouseUserList contains a list of ClickhouseUser

func (*ClickhouseUserList) DeepCopy added in v0.3.0

func (in *ClickhouseUserList) DeepCopy() *ClickhouseUserList

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

func (*ClickhouseUserList) DeepCopyInto added in v0.3.0

func (in *ClickhouseUserList) DeepCopyInto(out *ClickhouseUserList)

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

func (*ClickhouseUserList) DeepCopyObject added in v0.3.0

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

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

type ClickhouseUserSpec added in v0.3.0

type ClickhouseUserSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Project to link the user to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Service to link the user to
	ServiceName string `json:"serviceName"`

	// Information regarding secret creation.
	// Exposed keys: `CLICKHOUSEUSER_HOST`, `CLICKHOUSEUSER_PORT`, `CLICKHOUSEUSER_USER`, `CLICKHOUSEUSER_PASSWORD`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ClickhouseUserSpec defines the desired state of ClickhouseUser +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*ClickhouseUserSpec) DeepCopy added in v0.3.0

func (in *ClickhouseUserSpec) DeepCopy() *ClickhouseUserSpec

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

func (*ClickhouseUserSpec) DeepCopyInto added in v0.3.0

func (in *ClickhouseUserSpec) DeepCopyInto(out *ClickhouseUserSpec)

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

type ClickhouseUserStatus added in v0.3.0

type ClickhouseUserStatus struct {
	// Clickhouse user UUID
	UUID string `json:"uuid"`

	// Conditions represent the latest available observations of an ClickhouseUser state
	// +kubebuilder:validation:type=array
	Conditions []metav1.Condition `json:"conditions"`
}

ClickhouseUserStatus defines the observed state of ClickhouseUser

func (*ClickhouseUserStatus) DeepCopy added in v0.3.0

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

func (*ClickhouseUserStatus) DeepCopyInto added in v0.3.0

func (in *ClickhouseUserStatus) DeepCopyInto(out *ClickhouseUserStatus)

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

type ConnInfoSecretTarget

type ConnInfoSecretTarget struct {
	// Name of the secret resource to be created. By default, is equal to the resource name
	Name string `json:"name"`
	// +kubebuilder:pruning:PreserveUnknownFields
	// Annotations added to the secret
	Annotations map[string]string `json:"annotations,omitempty"`
	// +kubebuilder:pruning:PreserveUnknownFields
	// Labels added to the secret
	Labels map[string]string `json:"labels,omitempty"`
	// Prefix for the secret's keys.
	// Added "as is" without any transformations.
	// By default, is equal to the kind name in uppercase + underscore, e.g. `KAFKA_`, `REDIS_`, etc.
	Prefix string `json:"prefix,omitempty"`
}

ConnInfoSecretTarget contains information secret name

func (*ConnInfoSecretTarget) DeepCopy

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

func (*ConnInfoSecretTarget) DeepCopyInto

func (in *ConnInfoSecretTarget) DeepCopyInto(out *ConnInfoSecretTarget)

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

type ConnectionPool

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

	Spec   ConnectionPoolSpec   `json:"spec,omitempty"`
	Status ConnectionPoolStatus `json:"status,omitempty"`
}

ConnectionPool is the Schema for the connectionpools API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Database",type="string",JSONPath=".spec.databaseName" +kubebuilder:printcolumn:name="Username",type="string",JSONPath=".spec.username" +kubebuilder:printcolumn:name="Pool Size",type="string",JSONPath=".spec.poolSize" +kubebuilder:printcolumn:name="Pool Mode",type="string",JSONPath=".spec.poolMode"

func (*ConnectionPool) AuthSecretRef

func (in *ConnectionPool) AuthSecretRef() *AuthSecretReference

func (*ConnectionPool) Conditions added in v0.16.0

func (in *ConnectionPool) Conditions() *[]metav1.Condition

func (*ConnectionPool) DeepCopy

func (in *ConnectionPool) DeepCopy() *ConnectionPool

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

func (*ConnectionPool) DeepCopyInto

func (in *ConnectionPool) DeepCopyInto(out *ConnectionPool)

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

func (*ConnectionPool) DeepCopyObject

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

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

func (*ConnectionPool) Default

func (in *ConnectionPool) Default()

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

func (*ConnectionPool) GetConnInfoSecretTarget added in v0.12.0

func (in *ConnectionPool) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*ConnectionPool) NoSecret added in v0.17.0

func (in *ConnectionPool) NoSecret() bool

func (*ConnectionPool) SetupWebhookWithManager

func (in *ConnectionPool) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ConnectionPool) ValidateCreate

func (in *ConnectionPool) ValidateCreate() error

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

func (*ConnectionPool) ValidateDelete

func (in *ConnectionPool) ValidateDelete() error

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

func (*ConnectionPool) ValidateUpdate

func (in *ConnectionPool) ValidateUpdate(old runtime.Object) error

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

type ConnectionPoolList

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

ConnectionPoolList contains a list of ConnectionPool

func (*ConnectionPoolList) DeepCopy

func (in *ConnectionPoolList) DeepCopy() *ConnectionPoolList

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

func (*ConnectionPoolList) DeepCopyInto

func (in *ConnectionPoolList) DeepCopyInto(out *ConnectionPoolList)

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

func (*ConnectionPoolList) DeepCopyObject

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

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

type ConnectionPoolSpec

type ConnectionPoolSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Target project.
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service name.
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:MaxLength=40
	// Name of the database the pool connects to
	DatabaseName string `json:"databaseName"`

	// +kubebuilder:validation:MaxLength=64
	// Name of the service user used to connect to the database
	Username string `json:"username"`

	// +kubebuilder:validation:Min=1
	// +kubebuilder:validation:Max=1000
	// Number of connections the pool may create towards the backend server
	PoolSize int `json:"poolSize,omitempty"`

	// +kubebuilder:validation:Enum=session;transaction;statement
	// Mode the pool operates in (session, transaction, statement)
	PoolMode string `json:"poolMode,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `CONNECTIONPOOL_NAME`, `CONNECTIONPOOL_HOST`, `CONNECTIONPOOL_PORT`, `CONNECTIONPOOL_DATABASE`, `CONNECTIONPOOL_USER`, `CONNECTIONPOOL_PASSWORD`, `CONNECTIONPOOL_SSLMODE`, `CONNECTIONPOOL_DATABASE_URI`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ConnectionPoolSpec defines the desired state of ConnectionPool +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*ConnectionPoolSpec) DeepCopy

func (in *ConnectionPoolSpec) DeepCopy() *ConnectionPoolSpec

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

func (*ConnectionPoolSpec) DeepCopyInto

func (in *ConnectionPoolSpec) DeepCopyInto(out *ConnectionPoolSpec)

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

type ConnectionPoolStatus

type ConnectionPoolStatus struct {
	// Conditions represent the latest available observations of an ConnectionPool state
	Conditions []metav1.Condition `json:"conditions"`
}

ConnectionPoolStatus defines the observed state of ConnectionPool

func (*ConnectionPoolStatus) DeepCopy

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

func (*ConnectionPoolStatus) DeepCopyInto

func (in *ConnectionPoolStatus) DeepCopyInto(out *ConnectionPoolStatus)

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

type Database

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

	Spec   DatabaseSpec   `json:"spec,omitempty"`
	Status DatabaseStatus `json:"status,omitempty"`
}

Database is the Schema for the databases API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project"

func (*Database) AuthSecretRef

func (in *Database) AuthSecretRef() *AuthSecretReference

func (*Database) Conditions added in v0.16.0

func (in *Database) Conditions() *[]metav1.Condition

func (*Database) DeepCopy

func (in *Database) DeepCopy() *Database

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

func (*Database) DeepCopyInto

func (in *Database) DeepCopyInto(out *Database)

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

func (*Database) DeepCopyObject

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

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

func (*Database) Default

func (in *Database) Default()

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

func (*Database) NoSecret added in v0.17.0

func (*Database) NoSecret() bool

func (*Database) SetupWebhookWithManager

func (in *Database) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Database) ValidateCreate

func (in *Database) ValidateCreate() error

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

func (*Database) ValidateDelete

func (in *Database) ValidateDelete() error

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

func (*Database) ValidateUpdate

func (in *Database) ValidateUpdate(old runtime.Object) error

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

type DatabaseList

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

DatabaseList contains a list of Database

func (*DatabaseList) DeepCopy

func (in *DatabaseList) DeepCopy() *DatabaseList

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

func (*DatabaseList) DeepCopyInto

func (in *DatabaseList) DeepCopyInto(out *DatabaseList)

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

func (*DatabaseList) DeepCopyObject

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

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

type DatabaseSpec

type DatabaseSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Project to link the database to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// PostgreSQL service to link the database to
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:MaxLength=128
	// Default string sort order (LC_COLLATE) of the database. Default value: en_US.UTF-8
	LcCollate string `json:"lcCollate,omitempty"`

	// +kubebuilder:validation:MaxLength=128
	// Default character classification (LC_CTYPE) of the database. Default value: en_US.UTF-8
	LcCtype string `json:"lcCtype,omitempty"`

	// It is a Kubernetes side deletion protections, which prevents the database
	// from being deleted by Kubernetes. It is recommended to enable this for any production
	// databases containing critical data.
	TerminationProtection *bool `json:"terminationProtection,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

DatabaseSpec defines the desired state of Database

func (*DatabaseSpec) DeepCopy

func (in *DatabaseSpec) DeepCopy() *DatabaseSpec

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

func (*DatabaseSpec) DeepCopyInto

func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec)

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

type DatabaseStatus

type DatabaseStatus struct {
	// Conditions represent the latest available observations of an Database state
	Conditions []metav1.Condition `json:"conditions"`
}

DatabaseStatus defines the observed state of Database

func (*DatabaseStatus) DeepCopy

func (in *DatabaseStatus) DeepCopy() *DatabaseStatus

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

func (*DatabaseStatus) DeepCopyInto

func (in *DatabaseStatus) DeepCopyInto(out *DatabaseStatus)

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

type Grafana added in v0.7.0

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

	Spec   GrafanaSpec   `json:"spec,omitempty"`
	Status ServiceStatus `json:"status,omitempty"`
}

Grafana is the Schema for the grafanas API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Region",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Plan",type="string",JSONPath=".spec.plan" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*Grafana) AuthSecretRef added in v0.7.0

func (in *Grafana) AuthSecretRef() *AuthSecretReference

func (*Grafana) Conditions added in v0.16.0

func (in *Grafana) Conditions() *[]metav1.Condition

func (*Grafana) DeepCopy added in v0.7.0

func (in *Grafana) DeepCopy() *Grafana

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

func (*Grafana) DeepCopyInto added in v0.7.0

func (in *Grafana) DeepCopyInto(out *Grafana)

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

func (*Grafana) DeepCopyObject added in v0.7.0

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

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

func (*Grafana) Default added in v0.7.0

func (in *Grafana) Default()

func (*Grafana) GetConnInfoSecretTarget added in v0.12.0

func (in *Grafana) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Grafana) GetRefs added in v0.7.0

func (in *Grafana) GetRefs() []*ResourceReferenceObject

func (*Grafana) NoSecret added in v0.17.0

func (in *Grafana) NoSecret() bool

func (*Grafana) SetupWebhookWithManager added in v0.7.0

func (in *Grafana) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Grafana) ValidateCreate added in v0.7.0

func (in *Grafana) ValidateCreate() error

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

func (*Grafana) ValidateDelete added in v0.7.0

func (in *Grafana) ValidateDelete() error

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

func (*Grafana) ValidateUpdate added in v0.7.0

func (in *Grafana) ValidateUpdate(old runtime.Object) error

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

type GrafanaList added in v0.7.0

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

GrafanaList contains a list of Grafana

func (*GrafanaList) DeepCopy added in v0.7.0

func (in *GrafanaList) DeepCopy() *GrafanaList

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

func (*GrafanaList) DeepCopyInto added in v0.7.0

func (in *GrafanaList) DeepCopyInto(out *GrafanaList)

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

func (*GrafanaList) DeepCopyObject added in v0.7.0

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

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

type GrafanaSpec added in v0.7.0

type GrafanaSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `GRAFANA_HOST`, `GRAFANA_PORT`, `GRAFANA_USER`, `GRAFANA_PASSWORD`, `GRAFANA_URI`, `GRAFANA_HOSTS`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Cassandra specific user configuration options
	UserConfig *grafanauserconfig.GrafanaUserConfig `json:"userConfig,omitempty"`
}

GrafanaSpec defines the desired state of Grafana +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*GrafanaSpec) DeepCopy added in v0.7.0

func (in *GrafanaSpec) DeepCopy() *GrafanaSpec

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

func (*GrafanaSpec) DeepCopyInto added in v0.7.0

func (in *GrafanaSpec) DeepCopyInto(out *GrafanaSpec)

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

type Kafka

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

	Spec   KafkaSpec     `json:"spec,omitempty"`
	Status ServiceStatus `json:"status,omitempty"`
}

Kafka is the Schema for the kafkas API +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Region",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Plan",type="string",JSONPath=".spec.plan" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*Kafka) AuthSecretRef

func (in *Kafka) AuthSecretRef() *AuthSecretReference

func (*Kafka) Conditions added in v0.16.0

func (in *Kafka) Conditions() *[]metav1.Condition

func (*Kafka) DeepCopy

func (in *Kafka) DeepCopy() *Kafka

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

func (*Kafka) DeepCopyInto

func (in *Kafka) DeepCopyInto(out *Kafka)

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

func (*Kafka) DeepCopyObject

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

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

func (*Kafka) Default

func (in *Kafka) Default()

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

func (*Kafka) GetConnInfoSecretTarget added in v0.12.0

func (in *Kafka) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Kafka) GetRefs added in v0.5.0

func (in *Kafka) GetRefs() []*ResourceReferenceObject

func (*Kafka) NoSecret added in v0.17.0

func (in *Kafka) NoSecret() bool

func (*Kafka) SetupWebhookWithManager

func (in *Kafka) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Kafka) ValidateCreate

func (in *Kafka) ValidateCreate() error

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

func (*Kafka) ValidateDelete

func (in *Kafka) ValidateDelete() error

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

func (*Kafka) ValidateUpdate

func (in *Kafka) ValidateUpdate(old runtime.Object) error

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

type KafkaACL

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

	Spec   KafkaACLSpec   `json:"spec,omitempty"`
	Status KafkaACLStatus `json:"status,omitempty"`
}

KafkaACL is the Schema for the kafkaacls API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Username",type="string",JSONPath=".spec.username" +kubebuilder:printcolumn:name="Permission",type="string",JSONPath=".spec.permission" +kubebuilder:printcolumn:name="Topic",type="string",JSONPath=".spec.topic"

func (*KafkaACL) AuthSecretRef

func (in *KafkaACL) AuthSecretRef() *AuthSecretReference

func (*KafkaACL) Conditions added in v0.16.0

func (in *KafkaACL) Conditions() *[]metav1.Condition

func (*KafkaACL) DeepCopy

func (in *KafkaACL) DeepCopy() *KafkaACL

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

func (*KafkaACL) DeepCopyInto

func (in *KafkaACL) DeepCopyInto(out *KafkaACL)

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

func (*KafkaACL) DeepCopyObject

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

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

func (*KafkaACL) Default

func (in *KafkaACL) Default()

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

func (*KafkaACL) NoSecret added in v0.17.0

func (*KafkaACL) NoSecret() bool

func (*KafkaACL) SetupWebhookWithManager

func (in *KafkaACL) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*KafkaACL) ValidateCreate

func (in *KafkaACL) ValidateCreate() error

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

func (*KafkaACL) ValidateDelete

func (in *KafkaACL) ValidateDelete() error

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

func (*KafkaACL) ValidateUpdate

func (in *KafkaACL) ValidateUpdate(old runtime.Object) error

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

type KafkaACLList

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

KafkaACLList contains a list of KafkaACL

func (*KafkaACLList) DeepCopy

func (in *KafkaACLList) DeepCopy() *KafkaACLList

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

func (*KafkaACLList) DeepCopyInto

func (in *KafkaACLList) DeepCopyInto(out *KafkaACLList)

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

func (*KafkaACLList) DeepCopyObject

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

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

type KafkaACLSpec

type KafkaACLSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Project to link the Kafka ACL to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service to link the Kafka ACL to
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:Enum=admin;read;readwrite;write
	// Kafka permission to grant (admin, read, readwrite, write)
	Permission string `json:"permission"`

	// Topic name pattern for the ACL entry
	Topic string `json:"topic"`

	// Username pattern for the ACL entry
	Username string `json:"username"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

KafkaACLSpec defines the desired state of KafkaACL

func (*KafkaACLSpec) DeepCopy

func (in *KafkaACLSpec) DeepCopy() *KafkaACLSpec

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

func (*KafkaACLSpec) DeepCopyInto

func (in *KafkaACLSpec) DeepCopyInto(out *KafkaACLSpec)

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

type KafkaACLStatus

type KafkaACLStatus struct {
	// Conditions represent the latest available observations of an KafkaACL state
	Conditions []metav1.Condition `json:"conditions"`

	// Kafka ACL ID
	ID string `json:"id"`
}

KafkaACLStatus defines the observed state of KafkaACL

func (*KafkaACLStatus) DeepCopy

func (in *KafkaACLStatus) DeepCopy() *KafkaACLStatus

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

func (*KafkaACLStatus) DeepCopyInto

func (in *KafkaACLStatus) DeepCopyInto(out *KafkaACLStatus)

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

type KafkaConnect

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

	Spec   KafkaConnectSpec `json:"spec,omitempty"`
	Status ServiceStatus    `json:"status,omitempty"`
}

KafkaConnect is the Schema for the kafkaconnects API +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*KafkaConnect) AuthSecretRef

func (in *KafkaConnect) AuthSecretRef() *AuthSecretReference

func (*KafkaConnect) Conditions added in v0.16.0

func (in *KafkaConnect) Conditions() *[]metav1.Condition

func (*KafkaConnect) DeepCopy

func (in *KafkaConnect) DeepCopy() *KafkaConnect

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

func (*KafkaConnect) DeepCopyInto

func (in *KafkaConnect) DeepCopyInto(out *KafkaConnect)

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

func (*KafkaConnect) DeepCopyObject

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

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

func (*KafkaConnect) Default

func (in *KafkaConnect) Default()

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

func (*KafkaConnect) GetRefs added in v0.5.0

func (in *KafkaConnect) GetRefs() []*ResourceReferenceObject

func (*KafkaConnect) NoSecret added in v0.17.0

func (*KafkaConnect) NoSecret() bool

func (*KafkaConnect) SetupWebhookWithManager

func (in *KafkaConnect) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*KafkaConnect) ValidateCreate

func (in *KafkaConnect) ValidateCreate() error

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

func (*KafkaConnect) ValidateDelete

func (in *KafkaConnect) ValidateDelete() error

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

func (*KafkaConnect) ValidateUpdate

func (in *KafkaConnect) ValidateUpdate(old runtime.Object) error

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

type KafkaConnectList

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

KafkaConnectList contains a list of KafkaConnect

func (*KafkaConnectList) DeepCopy

func (in *KafkaConnectList) DeepCopy() *KafkaConnectList

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

func (*KafkaConnectList) DeepCopyInto

func (in *KafkaConnectList) DeepCopyInto(out *KafkaConnectList)

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

func (*KafkaConnectList) DeepCopyObject

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

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

type KafkaConnectSpec

type KafkaConnectSpec struct {
	ServiceCommonSpec `json:",inline"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// KafkaConnect specific user configuration options
	UserConfig *kafkaconnectuserconfig.KafkaConnectUserConfig `json:"userConfig,omitempty"`
}

KafkaConnectSpec defines the desired state of KafkaConnect

func (*KafkaConnectSpec) DeepCopy

func (in *KafkaConnectSpec) DeepCopy() *KafkaConnectSpec

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

func (*KafkaConnectSpec) DeepCopyInto

func (in *KafkaConnectSpec) DeepCopyInto(out *KafkaConnectSpec)

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

type KafkaConnector

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

	Spec   KafkaConnectorSpec   `json:"spec,omitempty"`
	Status KafkaConnectorStatus `json:"status,omitempty"`
}

KafkaConnector is the Schema for the kafkaconnectors API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Connector Class",type="string",JSONPath=".spec.connectorClass" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state" +kubebuilder:printcolumn:name="Tasks Total",type="integer",JSONPath=".status.tasksStatus.total" +kubebuilder:printcolumn:name="Tasks Running",type="integer",JSONPath=".status.tasksStatus.running"

func (*KafkaConnector) AuthSecretRef

func (in *KafkaConnector) AuthSecretRef() *AuthSecretReference

func (*KafkaConnector) Conditions added in v0.16.0

func (in *KafkaConnector) Conditions() *[]metav1.Condition

func (*KafkaConnector) DeepCopy

func (in *KafkaConnector) DeepCopy() *KafkaConnector

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

func (*KafkaConnector) DeepCopyInto

func (in *KafkaConnector) DeepCopyInto(out *KafkaConnector)

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

func (*KafkaConnector) DeepCopyObject

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

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

func (*KafkaConnector) Default

func (in *KafkaConnector) Default()

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

func (*KafkaConnector) NoSecret added in v0.17.0

func (*KafkaConnector) NoSecret() bool

func (*KafkaConnector) SetupWebhookWithManager

func (in *KafkaConnector) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*KafkaConnector) ValidateCreate

func (in *KafkaConnector) ValidateCreate() error

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

func (*KafkaConnector) ValidateDelete

func (in *KafkaConnector) ValidateDelete() error

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

func (*KafkaConnector) ValidateUpdate

func (in *KafkaConnector) ValidateUpdate(old runtime.Object) error

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

type KafkaConnectorList

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

KafkaConnectorList contains a list of KafkaConnector

func (*KafkaConnectorList) DeepCopy

func (in *KafkaConnectorList) DeepCopy() *KafkaConnectorList

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

func (*KafkaConnectorList) DeepCopyInto

func (in *KafkaConnectorList) DeepCopyInto(out *KafkaConnectorList)

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

func (*KafkaConnectorList) DeepCopyObject

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

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

type KafkaConnectorPluginStatus

type KafkaConnectorPluginStatus struct {
	Author  string `json:"author"`
	Class   string `json:"class"`
	DocURL  string `json:"docUrl"`
	Title   string `json:"title"`
	Type    string `json:"type"`
	Version string `json:"version"`
}

KafkaConnectorPluginStatus describes the observed state of a Kafka Connector Plugin

func (*KafkaConnectorPluginStatus) DeepCopy

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

func (*KafkaConnectorPluginStatus) DeepCopyInto

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

type KafkaConnectorSpec

type KafkaConnectorSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Target project.
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service name.
	ServiceName string `json:"serviceName"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// +kubebuilder:validation:MaxLength=1024
	// The Java class of the connector.
	ConnectorClass string `json:"connectorClass"`

	// The connector specific configuration
	// To build config values from secret the template function `{{ fromSecret "name" "key" }}`
	// is provided when interpreting the keys
	UserConfig map[string]string `json:"userConfig"`
}

KafkaConnectorSpec defines the desired state of KafkaConnector

func (*KafkaConnectorSpec) DeepCopy

func (in *KafkaConnectorSpec) DeepCopy() *KafkaConnectorSpec

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

func (*KafkaConnectorSpec) DeepCopyInto

func (in *KafkaConnectorSpec) DeepCopyInto(out *KafkaConnectorSpec)

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

type KafkaConnectorStatus

type KafkaConnectorStatus struct {
	// Conditions represent the latest available observations of an kafka connector state
	Conditions []metav1.Condition `json:"conditions"`

	// Connector state
	State string `json:"state"`

	// PluginStatus contains metadata about the configured connector plugin
	PluginStatus KafkaConnectorPluginStatus `json:"pluginStatus"`

	// TasksStatus contains metadata about the running tasks
	TasksStatus KafkaConnectorTasksStatus `json:"tasksStatus"`
}

KafkaConnectorStatus defines the observed state of KafkaConnector

func (*KafkaConnectorStatus) DeepCopy

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

func (*KafkaConnectorStatus) DeepCopyInto

func (in *KafkaConnectorStatus) DeepCopyInto(out *KafkaConnectorStatus)

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

type KafkaConnectorTasksStatus

type KafkaConnectorTasksStatus struct {
	Total      uint   `json:"total"`
	Running    uint   `json:"running,omitempty"`
	Failed     uint   `json:"failed,omitempty"`
	Paused     uint   `json:"paused,omitempty"`
	Unassigned uint   `json:"unassigned,omitempty"`
	Unknown    uint   `json:"unknown,omitempty"`
	StackTrace string `json:"stackTrace,omitempty"`
}

KafkaConnectorTasksStatus describes the observed state of the Kafka Connector Tasks

func (*KafkaConnectorTasksStatus) DeepCopy

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

func (*KafkaConnectorTasksStatus) DeepCopyInto

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

type KafkaList

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

KafkaList contains a list of Kafka

func (*KafkaList) DeepCopy

func (in *KafkaList) DeepCopy() *KafkaList

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

func (*KafkaList) DeepCopyInto

func (in *KafkaList) DeepCopyInto(out *KafkaList)

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

func (*KafkaList) DeepCopyObject

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

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

type KafkaSchema

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

	Spec   KafkaSchemaSpec   `json:"spec,omitempty"`
	Status KafkaSchemaStatus `json:"status,omitempty"`
}

KafkaSchema is the Schema for the kafkaschemas API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Subject",type="string",JSONPath=".spec.subjectName" +kubebuilder:printcolumn:name="Compatibility Level",type="string",JSONPath=".spec.compatibilityLevel" +kubebuilder:printcolumn:name="Version",type="number",JSONPath=".status.version"

func (*KafkaSchema) AuthSecretRef

func (in *KafkaSchema) AuthSecretRef() *AuthSecretReference

func (*KafkaSchema) Conditions added in v0.16.0

func (in *KafkaSchema) Conditions() *[]metav1.Condition

func (*KafkaSchema) DeepCopy

func (in *KafkaSchema) DeepCopy() *KafkaSchema

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

func (*KafkaSchema) DeepCopyInto

func (in *KafkaSchema) DeepCopyInto(out *KafkaSchema)

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

func (*KafkaSchema) DeepCopyObject

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

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

func (*KafkaSchema) Default

func (in *KafkaSchema) Default()

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

func (*KafkaSchema) NoSecret added in v0.17.0

func (*KafkaSchema) NoSecret() bool

func (*KafkaSchema) SetupWebhookWithManager

func (in *KafkaSchema) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*KafkaSchema) ValidateCreate

func (in *KafkaSchema) ValidateCreate() error

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

func (*KafkaSchema) ValidateDelete

func (in *KafkaSchema) ValidateDelete() error

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

func (*KafkaSchema) ValidateUpdate

func (in *KafkaSchema) ValidateUpdate(old runtime.Object) error

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

type KafkaSchemaList

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

KafkaSchemaList contains a list of KafkaSchema

func (*KafkaSchemaList) DeepCopy

func (in *KafkaSchemaList) DeepCopy() *KafkaSchemaList

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

func (*KafkaSchemaList) DeepCopyInto

func (in *KafkaSchemaList) DeepCopyInto(out *KafkaSchemaList)

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

func (*KafkaSchemaList) DeepCopyObject

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

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

type KafkaSchemaSpec

type KafkaSchemaSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Project to link the Kafka Schema to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service to link the Kafka Schema to
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:MaxLength=63
	// Kafka Schema Subject name
	SubjectName string `json:"subjectName"`

	// Kafka Schema configuration should be a valid Avro Schema JSON format
	Schema string `json:"schema"`

	// +kubebuilder:validation:Enum=BACKWARD;BACKWARD_TRANSITIVE;FORWARD;FORWARD_TRANSITIVE;FULL;FULL_TRANSITIVE;NONE
	// Kafka Schemas compatibility level
	CompatibilityLevel string `json:"compatibilityLevel,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

KafkaSchemaSpec defines the desired state of KafkaSchema

func (*KafkaSchemaSpec) DeepCopy

func (in *KafkaSchemaSpec) DeepCopy() *KafkaSchemaSpec

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

func (*KafkaSchemaSpec) DeepCopyInto

func (in *KafkaSchemaSpec) DeepCopyInto(out *KafkaSchemaSpec)

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

type KafkaSchemaStatus

type KafkaSchemaStatus struct {
	// Conditions represent the latest available observations of an KafkaSchema state
	Conditions []metav1.Condition `json:"conditions"`

	// Kafka Schema configuration version
	Version int `json:"version"`
}

KafkaSchemaStatus defines the observed state of KafkaSchema

func (*KafkaSchemaStatus) DeepCopy

func (in *KafkaSchemaStatus) DeepCopy() *KafkaSchemaStatus

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

func (*KafkaSchemaStatus) DeepCopyInto

func (in *KafkaSchemaStatus) DeepCopyInto(out *KafkaSchemaStatus)

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

type KafkaSpec

type KafkaSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `KAFKA_HOST`, `KAFKA_PORT`, `KAFKA_USERNAME`, `KAFKA_PASSWORD`, `KAFKA_ACCESS_CERT`, `KAFKA_ACCESS_KEY`, `KAFKA_SASL_HOST`, `KAFKA_SASL_PORT`, `KAFKA_SCHEMA_REGISTRY_HOST`, `KAFKA_SCHEMA_REGISTRY_PORT`, `KAFKA_CONNECT_HOST`, `KAFKA_CONNECT_PORT`, `KAFKA_REST_HOST`, `KAFKA_REST_PORT`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Switch the service to use Karapace for schema registry and REST proxy
	Karapace *bool `json:"karapace,omitempty"`

	// Kafka specific user configuration options
	UserConfig *kafkauserconfig.KafkaUserConfig `json:"userConfig,omitempty"`
}

KafkaSpec defines the desired state of Kafka +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*KafkaSpec) DeepCopy

func (in *KafkaSpec) DeepCopy() *KafkaSpec

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

func (*KafkaSpec) DeepCopyInto

func (in *KafkaSpec) DeepCopyInto(out *KafkaSpec)

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

type KafkaTopic

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

	Spec   KafkaTopicSpec   `json:"spec,omitempty"`
	Status KafkaTopicStatus `json:"status,omitempty"`
}

KafkaTopic is the Schema for the kafkatopics API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Partitions",type="string",JSONPath=".spec.partitions" +kubebuilder:printcolumn:name="Replication",type="string",JSONPath=".spec.replication"

func (*KafkaTopic) AuthSecretRef

func (in *KafkaTopic) AuthSecretRef() *AuthSecretReference

func (*KafkaTopic) Conditions added in v0.16.0

func (in *KafkaTopic) Conditions() *[]metav1.Condition

func (*KafkaTopic) DeepCopy

func (in *KafkaTopic) DeepCopy() *KafkaTopic

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

func (*KafkaTopic) DeepCopyInto

func (in *KafkaTopic) DeepCopyInto(out *KafkaTopic)

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

func (*KafkaTopic) DeepCopyObject

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

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

func (*KafkaTopic) Default

func (in *KafkaTopic) Default()

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

func (*KafkaTopic) GetTopicName added in v0.9.0

func (in *KafkaTopic) GetTopicName() string

GetTopicName returns topic name with a backward compatibility. metadata.Name is deprecated

func (*KafkaTopic) NoSecret added in v0.17.0

func (*KafkaTopic) NoSecret() bool

func (*KafkaTopic) SetupWebhookWithManager

func (in *KafkaTopic) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*KafkaTopic) ValidateCreate

func (in *KafkaTopic) ValidateCreate() error

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

func (*KafkaTopic) ValidateDelete

func (in *KafkaTopic) ValidateDelete() error

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

func (*KafkaTopic) ValidateUpdate

func (in *KafkaTopic) ValidateUpdate(old runtime.Object) error

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

type KafkaTopicConfig

type KafkaTopicConfig struct {
	// cleanup.policy value
	CleanupPolicy string `json:"cleanup_policy,omitempty"`

	// compression.type value
	CompressionType string `json:"compression_type,omitempty"`

	// delete.retention.ms value
	DeleteRetentionMs *int64 `json:"delete_retention_ms,omitempty"`

	// file.delete.delay.ms value
	FileDeleteDelayMs *int64 `json:"file_delete_delay_ms,omitempty"`

	// flush.messages value
	FlushMessages *int64 `json:"flush_messages,omitempty"`

	// flush.ms value
	FlushMs *int64 `json:"flush_ms,omitempty"`

	// index.interval.bytes value
	IndexIntervalBytes *int64 `json:"index_interval_bytes,omitempty"`

	// max.compaction.lag.ms value
	MaxCompactionLagMs *int64 `json:"max_compaction_lag_ms,omitempty"`

	// max.message.bytes value
	MaxMessageBytes *int64 `json:"max_message_bytes,omitempty"`

	// message.downconversion.enable value
	MessageDownconversionEnable *bool `json:"message_downconversion_enable,omitempty"`

	// message.format.version value
	MessageFormatVersion string `json:"message_format_version,omitempty"`

	// message.timestamp.difference.max.ms value
	MessageTimestampDifferenceMaxMs *int64 `json:"message_timestamp_difference_max_ms,omitempty"`

	// message.timestamp.type value
	MessageTimestampType string `json:"message_timestamp_type,omitempty"`

	// min.cleanable.dirty.ratio value
	MinCleanableDirtyRatio *float64 `json:"min_cleanable_dirty_ratio,omitempty"`

	// min.compaction.lag.ms value
	MinCompactionLagMs *int64 `json:"min_compaction_lag_ms,omitempty"`

	// min.insync.replicas value
	MinInsyncReplicas *int64 `json:"min_insync_replicas,omitempty"`

	// preallocate value
	Preallocate *bool `json:"preallocate,omitempty"`

	// retention.bytes value
	RetentionBytes *int64 `json:"retention_bytes,omitempty"`

	// retention.ms value
	RetentionMs *int64 `json:"retention_ms,omitempty"`

	// segment.bytes value
	SegmentBytes *int64 `json:"segment_bytes,omitempty"`

	// segment.index.bytes value
	SegmentIndexBytes *int64 `json:"segment_index_bytes,omitempty"`

	// segment.jitter.ms value
	SegmentJitterMs *int64 `json:"segment_jitter_ms,omitempty"`

	// segment.ms value
	SegmentMs *int64 `json:"segment_ms,omitempty"`
}

func (*KafkaTopicConfig) DeepCopy

func (in *KafkaTopicConfig) DeepCopy() *KafkaTopicConfig

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

func (*KafkaTopicConfig) DeepCopyInto

func (in *KafkaTopicConfig) DeepCopyInto(out *KafkaTopicConfig)

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

type KafkaTopicList

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

KafkaTopicList contains a list of KafkaTopic

func (*KafkaTopicList) DeepCopy

func (in *KafkaTopicList) DeepCopy() *KafkaTopicList

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

func (*KafkaTopicList) DeepCopyInto

func (in *KafkaTopicList) DeepCopyInto(out *KafkaTopicList)

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

func (*KafkaTopicList) DeepCopyObject

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

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

type KafkaTopicSpec

type KafkaTopicSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Target project.
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service name.
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=249
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Topic name. If provided, is used instead of metadata.name.
	// This field supports additional characters, has a longer length,
	// and will replace metadata.name in future releases
	TopicName string `json:"topicName,omitempty"`

	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=1000000
	// Number of partitions to create in the topic
	Partitions int `json:"partitions"`

	// +kubebuilder:validation:Minimum=2
	// Replication factor for the topic
	Replication int `json:"replication"`

	// Kafka topic tags
	Tags []KafkaTopicTag `json:"tags,omitempty"`

	// Kafka topic configuration
	Config KafkaTopicConfig `json:"config,omitempty"`

	// It is a Kubernetes side deletion protections, which prevents the kafka topic
	// from being deleted by Kubernetes. It is recommended to enable this for any production
	// databases containing critical data.
	TerminationProtection *bool `json:"termination_protection,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

KafkaTopicSpec defines the desired state of KafkaTopic

func (*KafkaTopicSpec) DeepCopy

func (in *KafkaTopicSpec) DeepCopy() *KafkaTopicSpec

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

func (*KafkaTopicSpec) DeepCopyInto

func (in *KafkaTopicSpec) DeepCopyInto(out *KafkaTopicSpec)

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

type KafkaTopicStatus

type KafkaTopicStatus struct {
	// Conditions represent the latest available observations of an KafkaTopic state
	Conditions []metav1.Condition `json:"conditions"`

	// State represents the state of the kafka topic
	State string `json:"state"`
}

KafkaTopicStatus defines the observed state of KafkaTopic

func (*KafkaTopicStatus) DeepCopy

func (in *KafkaTopicStatus) DeepCopy() *KafkaTopicStatus

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

func (*KafkaTopicStatus) DeepCopyInto

func (in *KafkaTopicStatus) DeepCopyInto(out *KafkaTopicStatus)

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

type KafkaTopicTag

type KafkaTopicTag struct {
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=64
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	Key string `json:"key"`

	// +kubebuilder:validation:MaxLength=256
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	Value string `json:"value,omitempty"`
}

func (*KafkaTopicTag) DeepCopy

func (in *KafkaTopicTag) DeepCopy() *KafkaTopicTag

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

func (*KafkaTopicTag) DeepCopyInto

func (in *KafkaTopicTag) DeepCopyInto(out *KafkaTopicTag)

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

type MySQL added in v0.6.0

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

	Spec   MySQLSpec     `json:"spec,omitempty"`
	Status ServiceStatus `json:"status,omitempty"`
}

MySQL is the Schema for the mysqls API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Region",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Plan",type="string",JSONPath=".spec.plan" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*MySQL) AuthSecretRef added in v0.6.0

func (in *MySQL) AuthSecretRef() *AuthSecretReference

func (*MySQL) Conditions added in v0.16.0

func (in *MySQL) Conditions() *[]metav1.Condition

func (*MySQL) DeepCopy added in v0.6.0

func (in *MySQL) DeepCopy() *MySQL

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

func (*MySQL) DeepCopyInto added in v0.6.0

func (in *MySQL) DeepCopyInto(out *MySQL)

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

func (*MySQL) DeepCopyObject added in v0.6.0

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

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

func (*MySQL) Default added in v0.6.0

func (in *MySQL) Default()

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

func (*MySQL) GetConnInfoSecretTarget added in v0.12.0

func (in *MySQL) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*MySQL) GetRefs added in v0.6.0

func (in *MySQL) GetRefs() []*ResourceReferenceObject

func (*MySQL) NoSecret added in v0.17.0

func (in *MySQL) NoSecret() bool

func (*MySQL) SetupWebhookWithManager added in v0.6.0

func (in *MySQL) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*MySQL) ValidateCreate added in v0.6.0

func (in *MySQL) ValidateCreate() error

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

func (*MySQL) ValidateDelete added in v0.6.0

func (in *MySQL) ValidateDelete() error

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

func (*MySQL) ValidateUpdate added in v0.6.0

func (in *MySQL) ValidateUpdate(old runtime.Object) error

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

type MySQLList added in v0.6.0

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

MySQLList contains a list of MySQL

func (*MySQLList) DeepCopy added in v0.6.0

func (in *MySQLList) DeepCopy() *MySQLList

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

func (*MySQLList) DeepCopyInto added in v0.6.0

func (in *MySQLList) DeepCopyInto(out *MySQLList)

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

func (*MySQLList) DeepCopyObject added in v0.6.0

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

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

type MySQLSpec added in v0.6.0

type MySQLSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `MYSQL_HOST`, `MYSQL_PORT`, `MYSQL_DATABASE`, `MYSQL_USER`, `MYSQL_PASSWORD`, `MYSQL_SSL_MODE`, `MYSQL_URI`, `MYSQL_REPLICA_URI`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// MySQL specific user configuration options
	UserConfig *mysqluserconfig.MysqlUserConfig `json:"userConfig,omitempty"`
}

MySQLSpec defines the desired state of MySQL +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*MySQLSpec) DeepCopy added in v0.6.0

func (in *MySQLSpec) DeepCopy() *MySQLSpec

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

func (*MySQLSpec) DeepCopyInto added in v0.6.0

func (in *MySQLSpec) DeepCopyInto(out *MySQLSpec)

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

type OpenSearch added in v0.3.0

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

	Spec   OpenSearchSpec `json:"spec,omitempty"`
	Status ServiceStatus  `json:"status,omitempty"`
}

OpenSearch is the Schema for the opensearches API

func (*OpenSearch) AuthSecretRef added in v0.3.0

func (in *OpenSearch) AuthSecretRef() *AuthSecretReference

func (*OpenSearch) Conditions added in v0.16.0

func (in *OpenSearch) Conditions() *[]metav1.Condition

func (*OpenSearch) DeepCopy added in v0.3.0

func (in *OpenSearch) DeepCopy() *OpenSearch

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

func (*OpenSearch) DeepCopyInto added in v0.3.0

func (in *OpenSearch) DeepCopyInto(out *OpenSearch)

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

func (*OpenSearch) DeepCopyObject added in v0.3.0

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

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

func (*OpenSearch) Default added in v0.3.0

func (in *OpenSearch) Default()

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

func (*OpenSearch) GetConnInfoSecretTarget added in v0.12.0

func (in *OpenSearch) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*OpenSearch) GetRefs added in v0.5.0

func (in *OpenSearch) GetRefs() []*ResourceReferenceObject

func (*OpenSearch) NoSecret added in v0.17.0

func (in *OpenSearch) NoSecret() bool

func (*OpenSearch) SetupWebhookWithManager added in v0.3.0

func (in *OpenSearch) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*OpenSearch) ValidateCreate added in v0.3.0

func (in *OpenSearch) ValidateCreate() error

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

func (*OpenSearch) ValidateDelete added in v0.3.0

func (in *OpenSearch) ValidateDelete() error

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

func (*OpenSearch) ValidateUpdate added in v0.3.0

func (in *OpenSearch) ValidateUpdate(old runtime.Object) error

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

type OpenSearchList added in v0.3.0

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

OpenSearchList contains a list of OpenSearch

func (*OpenSearchList) DeepCopy added in v0.3.0

func (in *OpenSearchList) DeepCopy() *OpenSearchList

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

func (*OpenSearchList) DeepCopyInto added in v0.3.0

func (in *OpenSearchList) DeepCopyInto(out *OpenSearchList)

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

func (*OpenSearchList) DeepCopyObject added in v0.3.0

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

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

type OpenSearchSpec added in v0.3.0

type OpenSearchSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `OPENSEARCH_HOST`, `OPENSEARCH_PORT`, `OPENSEARCH_USER`, `OPENSEARCH_PASSWORD`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// OpenSearch specific user configuration options
	UserConfig *opensearchuserconfig.OpensearchUserConfig `json:"userConfig,omitempty"`
}

OpenSearchSpec defines the desired state of OpenSearch +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*OpenSearchSpec) DeepCopy added in v0.3.0

func (in *OpenSearchSpec) DeepCopy() *OpenSearchSpec

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

func (*OpenSearchSpec) DeepCopyInto added in v0.3.0

func (in *OpenSearchSpec) DeepCopyInto(out *OpenSearchSpec)

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

type PostgreSQL

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

	Spec   PostgreSQLSpec `json:"spec,omitempty"`
	Status ServiceStatus  `json:"status,omitempty"`
}

PostgreSQL is the Schema for the postgresql API +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Region",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Plan",type="string",JSONPath=".spec.plan" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func (*PostgreSQL) AuthSecretRef

func (in *PostgreSQL) AuthSecretRef() *AuthSecretReference

func (*PostgreSQL) Conditions added in v0.16.0

func (in *PostgreSQL) Conditions() *[]metav1.Condition

func (*PostgreSQL) DeepCopy

func (in *PostgreSQL) DeepCopy() *PostgreSQL

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

func (*PostgreSQL) DeepCopyInto

func (in *PostgreSQL) DeepCopyInto(out *PostgreSQL)

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

func (*PostgreSQL) DeepCopyObject

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

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

func (*PostgreSQL) Default

func (in *PostgreSQL) Default()

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

func (*PostgreSQL) GetConnInfoSecretTarget added in v0.12.0

func (in *PostgreSQL) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*PostgreSQL) GetRefs added in v0.5.0

func (in *PostgreSQL) GetRefs() []*ResourceReferenceObject

func (*PostgreSQL) NoSecret added in v0.17.0

func (in *PostgreSQL) NoSecret() bool

func (*PostgreSQL) SetupWebhookWithManager

func (in *PostgreSQL) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*PostgreSQL) ValidateCreate

func (in *PostgreSQL) ValidateCreate() error

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

func (*PostgreSQL) ValidateDelete

func (in *PostgreSQL) ValidateDelete() error

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

func (*PostgreSQL) ValidateUpdate

func (in *PostgreSQL) ValidateUpdate(old runtime.Object) error

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

type PostgreSQLList

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

PostgreSQLList contains a list of PostgreSQL instances

func (*PostgreSQLList) DeepCopy

func (in *PostgreSQLList) DeepCopy() *PostgreSQLList

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

func (*PostgreSQLList) DeepCopyInto

func (in *PostgreSQLList) DeepCopyInto(out *PostgreSQLList)

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

func (*PostgreSQLList) DeepCopyObject

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

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

type PostgreSQLSpec

type PostgreSQLSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `POSTGRESQL_HOST`, `POSTGRESQL_PORT`, `POSTGRESQL_DATABASE`, `POSTGRESQL_USER`, `POSTGRESQL_PASSWORD`, `POSTGRESQL_SSLMODE`, `POSTGRESQL_DATABASE_URI`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// PostgreSQL specific user configuration options
	UserConfig *pguserconfig.PgUserConfig `json:"userConfig,omitempty"`
}

PostgreSQLSpec defines the desired state of postgres instance +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*PostgreSQLSpec) DeepCopy

func (in *PostgreSQLSpec) DeepCopy() *PostgreSQLSpec

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

func (*PostgreSQLSpec) DeepCopyInto

func (in *PostgreSQLSpec) DeepCopyInto(out *PostgreSQLSpec)

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

type Project

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

	Spec   ProjectSpec   `json:"spec,omitempty"`
	Status ProjectStatus `json:"status,omitempty"`
}

Project is the Schema for the projects API +kubebuilder:subresource:status

func (*Project) AuthSecretRef

func (in *Project) AuthSecretRef() *AuthSecretReference

func (*Project) Conditions added in v0.16.0

func (in *Project) Conditions() *[]metav1.Condition

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

func (*Project) Default

func (in *Project) Default()

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

func (*Project) GetConnInfoSecretTarget added in v0.12.0

func (in *Project) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Project) NoSecret added in v0.17.0

func (in *Project) NoSecret() bool

func (*Project) SetupWebhookWithManager

func (in *Project) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Project) ValidateCreate

func (in *Project) ValidateCreate() error

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

func (*Project) ValidateDelete

func (in *Project) ValidateDelete() error

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

func (*Project) ValidateUpdate

func (in *Project) ValidateUpdate(old runtime.Object) error

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

type ProjectList

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

ProjectList contains a list of Project

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

type ProjectSpec

type ProjectSpec struct {
	// +kubebuilder:validation:MaxLength=64
	// Credit card ID; The ID may be either last 4 digits of the card or the actual ID
	CardID string `json:"cardId,omitempty"`

	// +kubebuilder:validation:MaxLength=32
	// Account ID
	AccountID string `json:"accountId,omitempty"`

	// +kubebuilder:validation:MaxLength=1000
	// Billing name and address of the project
	BillingAddress string `json:"billingAddress,omitempty"`

	// +kubebuilder:validation:MaxItems=10
	// Billing contact emails of the project
	BillingEmails []string `json:"billingEmails,omitempty"`

	// +kubebuilder:validation:Enum=AUD;CAD;CHF;DKK;EUR;GBP;NOK;SEK;USD
	// Billing currency
	BillingCurrency string `json:"billingCurrency,omitempty"`

	// +kubebuilder:validation:MaxLength=1000
	// Extra text to be included in all project invoices, e.g. purchase order or cost center number
	BillingExtraText string `json:"billingExtraText,omitempty"`

	// +kubebuilder:validation:MaxLength=36
	// +kubebuilder:validation:MinLength=36
	// BillingGroup ID
	BillingGroupID string `json:"billingGroupId,omitempty"`

	// +kubebuilder:validation:MinLength=2
	// +kubebuilder:validation:MaxLength=2
	// Billing country code of the project
	CountryCode string `json:"countryCode,omitempty"`

	// +kubebuilder:validation:MaxLength=256
	// Target cloud, example: aws-eu-central-1
	Cloud string `json:"cloud,omitempty"`

	// +kubebuilder:validation:MaxLength=63
	// Project name from which to copy settings to the new project
	CopyFromProject string `json:"copyFromProject,omitempty"`

	// +kubebuilder:validation:MaxItems=10
	// Technical contact emails of the project
	TechnicalEmails []string `json:"technicalEmails,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `PROJECT_CA_CERT`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Tags are key-value pairs that allow you to categorize projects
	Tags map[string]string `json:"tags,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ProjectSpec defines the desired state of Project +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus

type ProjectStatus struct {
	// Conditions represent the latest available observations of an Project state
	Conditions []metav1.Condition `json:"conditions"`

	// +kubebuilder:validation:MaxLength=64
	// EU VAT Identification Number
	VatID string `json:"vatId,omitempty"`

	// Available credirs
	AvailableCredits string `json:"availableCredits,omitempty"`

	// Country name
	Country string `json:"country,omitempty"`

	// Estimated balance
	EstimatedBalance string `json:"estimatedBalance,omitempty"`

	// Payment method name
	PaymentMethod string `json:"paymentMethod,omitempty"`
}

ProjectStatus defines the observed state of Project

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

type ProjectVPC

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

	Spec   ProjectVPCSpec   `json:"spec,omitempty"`
	Status ProjectVPCStatus `json:"status,omitempty"`
}

ProjectVPC is the Schema for the projectvpcs API +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Cloud",type="string",JSONPath=".spec.cloudName" +kubebuilder:printcolumn:name="Network CIDR",type="string",JSONPath=".spec.networkCidr" +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state"

func FindProjectVPC added in v0.5.0

func FindProjectVPC(refs []client.Object) *ProjectVPC

FindProjectVPC returns ProjectVPC from reference list

func (*ProjectVPC) AuthSecretRef

func (in *ProjectVPC) AuthSecretRef() *AuthSecretReference

func (*ProjectVPC) Conditions added in v0.16.0

func (in *ProjectVPC) Conditions() *[]metav1.Condition

func (*ProjectVPC) DeepCopy

func (in *ProjectVPC) DeepCopy() *ProjectVPC

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

func (*ProjectVPC) DeepCopyInto

func (in *ProjectVPC) DeepCopyInto(out *ProjectVPC)

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

func (*ProjectVPC) DeepCopyObject

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

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

func (*ProjectVPC) NoSecret added in v0.17.0

func (*ProjectVPC) NoSecret() bool

type ProjectVPCList

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

ProjectVPCList contains a list of ProjectVPC

func (*ProjectVPCList) DeepCopy

func (in *ProjectVPCList) DeepCopy() *ProjectVPCList

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

func (*ProjectVPCList) DeepCopyInto

func (in *ProjectVPCList) DeepCopyInto(out *ProjectVPCList)

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

func (*ProjectVPCList) DeepCopyObject

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

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

type ProjectVPCSpec

type ProjectVPCSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// The project the VPC belongs to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=256
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Cloud the VPC is in
	CloudName string `json:"cloudName"`

	// +kubebuilder:validation:MaxLength=36
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Network address range used by the VPC like 192.168.0.0/24
	NetworkCidr string `json:"networkCidr"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ProjectVPCSpec defines the desired state of ProjectVPC

func (*ProjectVPCSpec) DeepCopy

func (in *ProjectVPCSpec) DeepCopy() *ProjectVPCSpec

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

func (*ProjectVPCSpec) DeepCopyInto

func (in *ProjectVPCSpec) DeepCopyInto(out *ProjectVPCSpec)

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

type ProjectVPCStatus

type ProjectVPCStatus struct {
	// Conditions represent the latest available observations of an ProjectVPC state
	Conditions []metav1.Condition `json:"conditions"`

	// State of VPC
	State string `json:"state"`

	// Project VPC id
	ID string `json:"id"`
}

ProjectVPCStatus defines the observed state of ProjectVPC

func (*ProjectVPCStatus) DeepCopy

func (in *ProjectVPCStatus) DeepCopy() *ProjectVPCStatus

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

func (*ProjectVPCStatus) DeepCopyInto

func (in *ProjectVPCStatus) DeepCopyInto(out *ProjectVPCStatus)

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

type Redis added in v0.2.0

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

	Spec   RedisSpec     `json:"spec,omitempty"`
	Status ServiceStatus `json:"status,omitempty"`
}

Redis is the Schema for the redis API +kubebuilder:subresource:status

func (*Redis) AuthSecretRef added in v0.2.0

func (in *Redis) AuthSecretRef() *AuthSecretReference

func (*Redis) Conditions added in v0.16.0

func (in *Redis) Conditions() *[]metav1.Condition

func (*Redis) DeepCopy added in v0.2.0

func (in *Redis) DeepCopy() *Redis

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

func (*Redis) DeepCopyInto added in v0.2.0

func (in *Redis) DeepCopyInto(out *Redis)

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

func (*Redis) DeepCopyObject added in v0.2.0

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

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

func (*Redis) Default added in v0.2.0

func (in *Redis) Default()

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

func (*Redis) GetConnInfoSecretTarget added in v0.12.0

func (in *Redis) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*Redis) GetRefs added in v0.5.0

func (in *Redis) GetRefs() []*ResourceReferenceObject

func (*Redis) NoSecret added in v0.17.0

func (in *Redis) NoSecret() bool

func (*Redis) SetupWebhookWithManager added in v0.2.0

func (in *Redis) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Redis) ValidateCreate added in v0.2.0

func (in *Redis) ValidateCreate() error

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

func (*Redis) ValidateDelete added in v0.2.0

func (in *Redis) ValidateDelete() error

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

func (*Redis) ValidateUpdate added in v0.2.0

func (in *Redis) ValidateUpdate(old runtime.Object) error

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

type RedisList added in v0.2.0

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

RedisList contains a list of Redis

func (*RedisList) DeepCopy added in v0.2.0

func (in *RedisList) DeepCopy() *RedisList

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

func (*RedisList) DeepCopyInto added in v0.2.0

func (in *RedisList) DeepCopyInto(out *RedisList)

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

func (*RedisList) DeepCopyObject added in v0.2.0

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

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

type RedisSpec added in v0.2.0

type RedisSpec struct {
	ServiceCommonSpec `json:",inline"`

	// +kubebuilder:validation:Format="^[1-9][0-9]*(GiB|G)*"
	// The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service re-balancing.
	DiskSpace string `json:"disk_space,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `REDIS_HOST`, `REDIS_PORT`, `REDIS_USER`, `REDIS_PASSWORD`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Redis specific user configuration options
	UserConfig *redisuserconfig.RedisUserConfig `json:"userConfig,omitempty"`
}

RedisSpec defines the desired state of Redis +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*RedisSpec) DeepCopy added in v0.2.0

func (in *RedisSpec) DeepCopy() *RedisSpec

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

func (*RedisSpec) DeepCopyInto added in v0.2.0

func (in *RedisSpec) DeepCopyInto(out *RedisSpec)

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

type ResourceReference added in v0.5.0

type ResourceReference struct {
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
	// +kubebuilder:validation:MinLength=1
	Namespace string `json:"namespace,omitempty"`
}

ResourceReference is a generic reference to another resource. Resource referring to another (dependency) won't start reconciliation until dependency is not ready

func (*ResourceReference) DeepCopy added in v0.5.0

func (in *ResourceReference) DeepCopy() *ResourceReference

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

func (*ResourceReference) DeepCopyInto added in v0.5.0

func (in *ResourceReference) DeepCopyInto(out *ResourceReference)

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

func (*ResourceReference) ProjectVPC added in v0.5.0

func (in *ResourceReference) ProjectVPC(objNamespace string) *ResourceReferenceObject

ProjectVPC returns reference ProjectVPC kind

type ResourceReferenceObject added in v0.5.0

type ResourceReferenceObject struct {
	GroupVersionKind schema.GroupVersionKind
	NamespacedName   types.NamespacedName
}

ResourceReferenceObject is a composite "key" to resource GroupVersionKind is for resource "type": GroupVersionKind{Group: "aiven.io", Version: "v1alpha1", Kind: "Kafka"} NamespacedName is for specific instance: NamespacedName{Name: "my-kafka", Namespace: "default"}

func (*ResourceReferenceObject) DeepCopy added in v0.5.0

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

func (*ResourceReferenceObject) DeepCopyInto added in v0.5.0

func (in *ResourceReferenceObject) DeepCopyInto(out *ResourceReferenceObject)

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

type ServiceCommonSpec

type ServiceCommonSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Target project.
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=128
	// Subscription plan.
	Plan string `json:"plan"`

	// +kubebuilder:validation:MaxLength=256
	// Cloud the service runs in.
	CloudName string `json:"cloudName,omitempty"`

	// +kubebuilder:validation:MaxLength=36
	// Identifier of the VPC the service should be in, if any.
	ProjectVPCID string `json:"projectVpcId,omitempty"`

	// ProjectVPCRef reference to ProjectVPC resource to use its ID as ProjectVPCID automatically
	ProjectVPCRef *ResourceReference `json:"projectVPCRef,omitempty"`

	// +kubebuilder:validation:Enum=monday;tuesday;wednesday;thursday;friday;saturday;sunday
	// Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
	MaintenanceWindowDow string `json:"maintenanceWindowDow,omitempty"`

	// +kubebuilder:validation:MaxLength=8
	// Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
	MaintenanceWindowTime string `json:"maintenanceWindowTime,omitempty"`

	// Prevent service from being deleted. It is recommended to have this enabled for all services.
	TerminationProtection *bool `json:"terminationProtection,omitempty"`

	// Tags are key-value pairs that allow you to categorize services.
	Tags map[string]string `json:"tags,omitempty"`

	// +kubebuilder:validation:MaxItems=1
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Service integrations to specify when creating a service. Not applied after initial service creation
	ServiceIntegrations []*ServiceIntegrationItem `json:"serviceIntegrations,omitempty"`

	// +kubebuilder:validation:MaxItems=10
	// Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
	TechnicalEmails []ServiceTechEmail `json:"technicalEmails,omitempty"`
}

func (*ServiceCommonSpec) DeepCopy

func (in *ServiceCommonSpec) DeepCopy() *ServiceCommonSpec

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

func (*ServiceCommonSpec) DeepCopyInto

func (in *ServiceCommonSpec) DeepCopyInto(out *ServiceCommonSpec)

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

func (*ServiceCommonSpec) GetRefs added in v0.5.0

func (in *ServiceCommonSpec) GetRefs(namespace string) (refs []*ResourceReferenceObject)

GetRefs is inherited by kafka, pg, os, etc

func (*ServiceCommonSpec) Validate added in v0.5.0

func (in *ServiceCommonSpec) Validate() error

Validate runs complex validation on ServiceCommonSpec

type ServiceIntegration

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

	Spec   ServiceIntegrationSpec   `json:"spec,omitempty"`
	Status ServiceIntegrationStatus `json:"status,omitempty"`
}

ServiceIntegration is the Schema for the serviceintegrations API +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.integrationType" +kubebuilder:printcolumn:name="Source Service Name",type="string",JSONPath=".spec.sourceServiceName" +kubebuilder:printcolumn:name="Destination Service Name",type="string",JSONPath=".spec.destinationServiceName" +kubebuilder:printcolumn:name="Source Endpoint ID",type="string",JSONPath=".spec.sourceEndpointId" +kubebuilder:printcolumn:name="Destination Endpoint ID",type="string",JSONPath=".spec.destinationEndpointId"

func (*ServiceIntegration) AuthSecretRef

func (in *ServiceIntegration) AuthSecretRef() *AuthSecretReference

func (*ServiceIntegration) Conditions added in v0.16.0

func (in *ServiceIntegration) Conditions() *[]metav1.Condition

func (*ServiceIntegration) DeepCopy

func (in *ServiceIntegration) DeepCopy() *ServiceIntegration

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

func (*ServiceIntegration) DeepCopyInto

func (in *ServiceIntegration) DeepCopyInto(out *ServiceIntegration)

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

func (*ServiceIntegration) DeepCopyObject

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

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

func (*ServiceIntegration) Default

func (in *ServiceIntegration) Default()

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

func (*ServiceIntegration) GetUserConfig added in v0.11.0

func (in *ServiceIntegration) GetUserConfig() (any, error)

func (*ServiceIntegration) NoSecret added in v0.17.0

func (*ServiceIntegration) NoSecret() bool

func (*ServiceIntegration) SetupWebhookWithManager

func (in *ServiceIntegration) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceIntegration) ValidateCreate

func (in *ServiceIntegration) ValidateCreate() error

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

func (*ServiceIntegration) ValidateDelete

func (in *ServiceIntegration) ValidateDelete() error

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

func (*ServiceIntegration) ValidateUpdate

func (in *ServiceIntegration) ValidateUpdate(old runtime.Object) error

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

type ServiceIntegrationItem added in v0.8.0

type ServiceIntegrationItem struct {
	// +kubebuilder:validation:Enum=read_replica
	IntegrationType string `json:"integrationType"`
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=64
	SourceServiceName string `json:"sourceServiceName"`
}

Service integrations to specify when creating a service. Not applied after initial service creation

func (*ServiceIntegrationItem) DeepCopy added in v0.8.0

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

func (*ServiceIntegrationItem) DeepCopyInto added in v0.8.0

func (in *ServiceIntegrationItem) DeepCopyInto(out *ServiceIntegrationItem)

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

type ServiceIntegrationList

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

ServiceIntegrationList contains a list of ServiceIntegration

func (*ServiceIntegrationList) DeepCopy

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

func (*ServiceIntegrationList) DeepCopyInto

func (in *ServiceIntegrationList) DeepCopyInto(out *ServiceIntegrationList)

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

func (*ServiceIntegrationList) DeepCopyObject

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

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

type ServiceIntegrationSpec

type ServiceIntegrationSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// Project the integration belongs to
	Project string `json:"project"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:Enum=alertmanager;autoscaler;caching;cassandra_cross_service_cluster;clickhouse_kafka;clickhouse_postgresql;dashboard;datadog;datasource;external_aws_cloudwatch_logs;external_aws_cloudwatch_metrics;external_elasticsearch_logs;external_google_cloud_logging;external_opensearch_logs;flink;flink_external_kafka;internal_connectivity;jolokia;kafka_connect;kafka_logs;kafka_mirrormaker;logs;m3aggregator;m3coordinator;metrics;opensearch_cross_cluster_replication;opensearch_cross_cluster_search;prometheus;read_replica;rsyslog;schema_registry_proxy;stresstester;thanosquery;thanosstore;vmalert
	// Type of the service integration accepted by Aiven API. Some values may not be supported by the operator
	IntegrationType string `json:"integrationType"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=36
	// Source endpoint for the integration (if any)
	SourceEndpointID string `json:"sourceEndpointID,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=64
	// Source service for the integration (if any)
	SourceServiceName string `json:"sourceServiceName,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=63
	// Source project for the integration (if any)
	SourceProjectName string `json:"sourceProjectName,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=36
	// Destination endpoint for the integration (if any)
	DestinationEndpointID string `json:"destinationEndpointId,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=64
	// Destination service for the integration (if any)
	DestinationServiceName string `json:"destinationServiceName,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:MaxLength=63
	// Destination project for the integration (if any)
	DestinationProjectName string `json:"destinationProjectName,omitempty"`

	// Datadog specific user configuration options
	DatadogUserConfig *datadogintegration.DatadogUserConfig `json:"datadog,omitempty"`

	// Kafka Connect service configuration values
	KafkaConnectUserConfig *kafkaconnectintegration.KafkaConnectUserConfig `json:"kafkaConnect,omitempty"`

	// Kafka logs configuration values
	KafkaLogsUserConfig *kafkalogsintegration.KafkaLogsUserConfig `json:"kafkaLogs,omitempty"`

	// Metrics configuration values
	MetricsUserConfig *metricsintegration.MetricsUserConfig `json:"metrics,omitempty"`

	// Clickhouse PostgreSQL configuration values
	ClickhousePostgreSQLUserConfig *clickhousepostgresqluserconfig.ClickhousePostgresqlUserConfig `json:"clickhousePostgresql,omitempty"`

	// Clickhouse Kafka configuration values
	ClickhouseKafkaUserConfig *clickhousekafkauserconfig.ClickhouseKafkaUserConfig `json:"clickhouseKafka,omitempty"`

	// Kafka MirrorMaker configuration values
	KafkaMirrormakerUserConfig *kafkamirrormakeruserconfig.KafkaMirrormakerUserConfig `json:"kafkaMirrormaker,omitempty"`

	// Logs configuration values
	LogsUserConfig *logsuserconfig.LogsUserConfig `json:"logs,omitempty"`

	// External AWS CloudWatch Metrics integration Logs configuration values
	ExternalAWSCloudwatchMetricsUserConfig *externalawscloudwatchmetricsuserconfig.ExternalAwsCloudwatchMetricsUserConfig `json:"externalAWSCloudwatchMetrics,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ServiceIntegrationSpec defines the desired state of ServiceIntegration

func (*ServiceIntegrationSpec) DeepCopy

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

func (*ServiceIntegrationSpec) DeepCopyInto

func (in *ServiceIntegrationSpec) DeepCopyInto(out *ServiceIntegrationSpec)

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

type ServiceIntegrationStatus

type ServiceIntegrationStatus struct {
	// Conditions represent the latest available observations of an ServiceIntegration state
	Conditions []metav1.Condition `json:"conditions"`

	// Service integration ID
	ID string `json:"id"`
}

ServiceIntegrationStatus defines the observed state of ServiceIntegration

func (*ServiceIntegrationStatus) DeepCopy

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

func (*ServiceIntegrationStatus) DeepCopyInto

func (in *ServiceIntegrationStatus) DeepCopyInto(out *ServiceIntegrationStatus)

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

type ServiceStatus

type ServiceStatus struct {
	// Conditions represent the latest available observations of a service state
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Service state
	State string `json:"state,omitempty"`
}

ServiceStatus defines the observed state of service

func (*ServiceStatus) DeepCopy

func (in *ServiceStatus) DeepCopy() *ServiceStatus

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

func (*ServiceStatus) DeepCopyInto

func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)

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

type ServiceTechEmail added in v0.17.0

type ServiceTechEmail struct {
	// +kubebuilder:validation:Format="^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$"
	// Email address.
	Email string `json:"email"`
}

func (*ServiceTechEmail) DeepCopy added in v0.17.0

func (in *ServiceTechEmail) DeepCopy() *ServiceTechEmail

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

func (*ServiceTechEmail) DeepCopyInto added in v0.17.0

func (in *ServiceTechEmail) DeepCopyInto(out *ServiceTechEmail)

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

type ServiceUser

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

	Spec   ServiceUserSpec   `json:"spec,omitempty"`
	Status ServiceUserStatus `json:"status,omitempty"`
}

ServiceUser is the Schema for the serviceusers API +kubebuilder:printcolumn:name="Service Name",type="string",JSONPath=".spec.serviceName" +kubebuilder:printcolumn:name="Project",type="string",JSONPath=".spec.project" +kubebuilder:printcolumn:name="Connection Information Secret",type="string",JSONPath=".spec.connInfoSecretTarget.name"

func (*ServiceUser) AuthSecretRef

func (in *ServiceUser) AuthSecretRef() *AuthSecretReference

func (*ServiceUser) Conditions added in v0.16.0

func (in *ServiceUser) Conditions() *[]metav1.Condition

func (*ServiceUser) DeepCopy

func (in *ServiceUser) DeepCopy() *ServiceUser

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

func (*ServiceUser) DeepCopyInto

func (in *ServiceUser) DeepCopyInto(out *ServiceUser)

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

func (*ServiceUser) DeepCopyObject

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

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

func (*ServiceUser) Default

func (in *ServiceUser) Default()

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

func (*ServiceUser) GetConnInfoSecretTarget added in v0.12.0

func (in *ServiceUser) GetConnInfoSecretTarget() ConnInfoSecretTarget

func (*ServiceUser) NoSecret added in v0.17.0

func (in *ServiceUser) NoSecret() bool

func (*ServiceUser) SetupWebhookWithManager

func (in *ServiceUser) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceUser) ValidateCreate

func (in *ServiceUser) ValidateCreate() error

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

func (*ServiceUser) ValidateDelete

func (in *ServiceUser) ValidateDelete() error

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

func (*ServiceUser) ValidateUpdate

func (in *ServiceUser) ValidateUpdate(old runtime.Object) error

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

type ServiceUserList

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

ServiceUserList contains a list of ServiceUser

func (*ServiceUserList) DeepCopy

func (in *ServiceUserList) DeepCopy() *ServiceUserList

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

func (*ServiceUserList) DeepCopyInto

func (in *ServiceUserList) DeepCopyInto(out *ServiceUserList)

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

func (*ServiceUserList) DeepCopyObject

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

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

type ServiceUserSpec

type ServiceUserSpec struct {
	// +kubebuilder:validation:MaxLength=63
	// +kubebuilder:validation:Format="^[a-zA-Z0-9_-]*$"
	// Project to link the user to
	Project string `json:"project"`

	// +kubebuilder:validation:MaxLength=63
	// Service to link the user to
	ServiceName string `json:"serviceName"`

	// +kubebuilder:validation:Enum=caching_sha2_password;mysql_native_password
	// Authentication details
	Authentication string `json:"authentication,omitempty"`

	// Information regarding secret creation.
	// Exposed keys: `SERVICEUSER_HOST`, `SERVICEUSER_PORT`, `SERVICEUSER_USERNAME`, `SERVICEUSER_PASSWORD`, `SERVICEUSER_CA_CERT`, `SERVICEUSER_ACCESS_CERT`, `SERVICEUSER_ACCESS_KEY`
	ConnInfoSecretTarget ConnInfoSecretTarget `json:"connInfoSecretTarget,omitempty"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="connInfoSecretTargetDisabled is immutable."
	// When true, the secret containing connection information will not be created, defaults to false. This field cannot be changed after resource creation.
	ConnInfoSecretTargetDisabled *bool `json:"connInfoSecretTargetDisabled,omitempty"`

	// Authentication reference to Aiven token in a secret
	AuthSecretRef *AuthSecretReference `json:"authSecretRef,omitempty"`
}

ServiceUserSpec defines the desired state of ServiceUser +kubebuilder:validation:XValidation:rule="has(oldSelf.connInfoSecretTargetDisabled) == has(self.connInfoSecretTargetDisabled)",message="connInfoSecretTargetDisabled can only be set during resource creation."

func (*ServiceUserSpec) DeepCopy

func (in *ServiceUserSpec) DeepCopy() *ServiceUserSpec

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

func (*ServiceUserSpec) DeepCopyInto

func (in *ServiceUserSpec) DeepCopyInto(out *ServiceUserSpec)

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

type ServiceUserStatus

type ServiceUserStatus struct {
	// Conditions represent the latest available observations of an ServiceUser state
	Conditions []metav1.Condition `json:"conditions"`

	// Type of the user account
	Type string `json:"type,omitempty"`
}

ServiceUserStatus defines the observed state of ServiceUser

func (*ServiceUserStatus) DeepCopy

func (in *ServiceUserStatus) DeepCopy() *ServiceUserStatus

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

func (*ServiceUserStatus) DeepCopyInto

func (in *ServiceUserStatus) DeepCopyInto(out *ServiceUserStatus)

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