v1alpha2

package
v0.47.0-rc.2 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2024 License: Apache-2.0 Imports: 61 Imported by: 88

Documentation

Overview

+k8s:deepcopy-gen=package,register +k8s:conversion-gen=kubedb.dev/apimachinery/apis/kubedb/v1 +k8s:openapi-gen=true +k8s:defaulter-gen=TypeMeta +groupName=kubedb.com

nolint:goconst

Index

Constants

View Source
const (
	ResourceKindClickHouse     = "ClickHouse"
	ResourceSingularClickHouse = "clickhouse"
	ResourcePluralClickHouse   = "clickhouses"
	ResourceCodeClickHouse     = "ch"
)
View Source
const (
	ResourceCodeDruid     = "dr"
	ResourceKindDruid     = "Druid"
	ResourceSingularDruid = "druid"
	ResourcePluralDruid   = "druids"
)
View Source
const (
	ResourceCodeElasticsearch     = "es"
	ResourceKindElasticsearch     = "Elasticsearch"
	ResourceSingularElasticsearch = "elasticsearch"
	ResourcePluralElasticsearch   = "elasticsearches"
)
View Source
const (
	ResourceCodeEtcd     = "etc"
	ResourceKindEtcd     = "Etcd"
	ResourceSingularEtcd = "etcd"
	ResourcePluralEtcd   = "etcds"
)
View Source
const (
	ResourceCodeFerretDB     = "fr"
	ResourceKindFerretDB     = "FerretDB"
	ResourceSingularFerretDB = "ferretdb"
	ResourcePluralFerretDB   = "ferretdbs"
)
View Source
const (
	ResourceCodeKafka     = "kf"
	ResourceKindKafka     = "Kafka"
	ResourceSingularKafka = "kafka"
	ResourcePluralKafka   = "kafkas"
)
View Source
const (
	ResourceCodeMariaDB     = "md"
	ResourceKindMariaDB     = "MariaDB"
	ResourceSingularMariaDB = "mariadb"
	ResourcePluralMariaDB   = "mariadbs"
)
View Source
const (
	ResourceCodeMemcached     = "mc"
	ResourceKindMemcached     = "Memcached"
	ResourceSingularMemcached = "memcached"
	ResourcePluralMemcached   = "memcacheds"
)
View Source
const (
	TLSCAKeyFileName    = "ca.key"
	TLSCACertFileName   = "ca.crt"
	MongoPemFileName    = "mongo.pem"
	MongoClientFileName = "client.pem"
	MongoCertDirectory  = "/var/run/mongodb/tls"

	MongoDBShardLabelKey  = "mongodb.kubedb.com/node.shard"
	MongoDBConfigLabelKey = "mongodb.kubedb.com/node.config"
	MongoDBMongosLabelKey = "mongodb.kubedb.com/node.mongos"
	MongoDBTypeLabelKey   = "mongodb.kubedb.com/node.type"

	MongoDBShardAffinityTemplateVar = "SHARD_INDEX"
)
View Source
const (
	ResourceCodeMongoDB     = "mg"
	ResourceKindMongoDB     = "MongoDB"
	ResourceSingularMongoDB = "mongodb"
	ResourcePluralMongoDB   = "mongodbs"
)
View Source
const (
	ResourceCodeMSSQLServer     = "ms"
	ResourceKindMSSQLServer     = "MSSQLServer"
	ResourceSingularMSSQLServer = "mssqlserver"
	ResourcePluralMSSQLServer   = "mssqlservers"
)
View Source
const (
	ResourceCodeMySQL     = "my"
	ResourceKindMySQL     = "MySQL"
	ResourceSingularMySQL = "mysql"
	ResourcePluralMySQL   = "mysqls"
)
View Source
const (
	ResourceCodePerconaXtraDB     = "px"
	ResourceKindPerconaXtraDB     = "PerconaXtraDB"
	ResourceSingularPerconaXtraDB = "perconaxtradb"
	ResourcePluralPerconaXtraDB   = "perconaxtradbs"
)
View Source
const (
	ResourceCodePgBouncer     = "pb"
	ResourceKindPgBouncer     = "PgBouncer"
	ResourceSingularPgBouncer = "pgbouncer"
	ResourcePluralPgBouncer   = "pgbouncers"
)
View Source
const (
	ResourceCodePgpool     = "pp"
	ResourceKindPgpool     = "Pgpool"
	ResourceSingularPgpool = "pgpool"
	ResourcePluralPgpool   = "pgpools"
)
View Source
const (
	ResourceCodePostgres     = "pg"
	ResourceKindPostgres     = "Postgres"
	ResourceSingularPostgres = "postgres"
	ResourcePluralPostgres   = "postgreses"
)
View Source
const (
	ResourceCodeProxySQL     = "prx"
	ResourceKindProxySQL     = "ProxySQL"
	ResourceSingularProxySQL = "proxysql"
	ResourcePluralProxySQL   = "proxysqls"
)
View Source
const (
	ResourceCodeRabbitmq     = "rm"
	ResourceKindRabbitmq     = "RabbitMQ"
	ResourceSingularRabbitmq = "rabbitmq"
	ResourcePluralRabbitmq   = "rabbitmqs"
)
View Source
const (
	ResourceCodeRedisSentinel     = "rds"
	ResourceKindRedisSentinel     = "RedisSentinel"
	ResourceSingularRedisSentinel = "redissentinel"
	ResourcePluralRedisSentinel   = "redissentinels"
)
View Source
const (
	ResourceCodeRedis     = "rd"
	ResourceKindRedis     = "Redis"
	ResourceSingularRedis = "redis"
	ResourcePluralRedis   = "redises"
)
View Source
const (
	ResourceCodeSinglestore     = "sdb"
	ResourceKindSinglestore     = "Singlestore"
	ResourceSingularSinglestore = "singlestore"
	ResourcePluralSinglestore   = "singlestores"
)
View Source
const (
	ResourceCodeSolr     = "sl"
	ResourceKindSolr     = "Solr"
	ResourceSingularSolr = "solr"
	ResourcePluralSolr   = "solrs"
)
View Source
const (
	ResourceCodeZooKeeper     = "zk"
	ResourceKindZooKeeper     = "ZooKeeper"
	ResourceSingularZooKeeper = "zookeeper"
	ResourcePluralZooKeeper   = "zookeepers"
)
View Source
const (
	ElasticsearchNodeAffinityTemplateVar = "NODE_ROLE"
)
View Source
const (
	RedisShardAffinityTemplateVar = "SHARD_INDEX"
)

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var (
	DefaultClient client.Client
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: kubedb.GroupName, Version: "v1alpha2"}

Functions

func Convert_Slice_v1_Container_To_v1alpha2_CoordinatorSpec added in v0.47.0

func Convert_Slice_v1_Container_To_v1alpha2_CoordinatorSpec(in *[]corev1.Container, out *CoordinatorSpec, s conversion.Scope) error

Convert_Slice_v1_Container_To_v1alpha2_CoordinatorSpec is an autogenerated conversion function.

func Convert_v1_Age_To_v1alpha2_Age added in v0.47.0

func Convert_v1_Age_To_v1alpha2_Age(in *v1.Age, out *Age, s conversion.Scope) error

Convert_v1_Age_To_v1alpha2_Age is an autogenerated conversion function.

func Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers added in v0.47.0

func Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers(in *v1.AllowedConsumers, out *AllowedConsumers, s conversion.Scope) error

Convert_v1_AllowedConsumers_To_v1alpha2_AllowedConsumers is an autogenerated conversion function.

func Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec added in v0.47.0

func Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec(in *v1.ArbiterSpec, out *ArbiterSpec, s conversion.Scope) error

Convert_v1_ArbiterSpec_To_v1alpha2_ArbiterSpec is an autogenerated conversion function.

func Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery added in v0.47.0

func Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery(in *v1.ArchiverRecovery, out *ArchiverRecovery, s conversion.Scope) error

Convert_v1_ArchiverRecovery_To_v1alpha2_ArchiverRecovery is an autogenerated conversion function.

func Convert_v1_Archiver_To_v1alpha2_Archiver added in v0.47.0

func Convert_v1_Archiver_To_v1alpha2_Archiver(in *v1.Archiver, out *Archiver, s conversion.Scope) error

Convert_v1_Archiver_To_v1alpha2_Archiver is an autogenerated conversion function.

func Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec added in v0.47.0

func Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec(in *v1.AutoOpsSpec, out *AutoOpsSpec, s conversion.Scope) error

Convert_v1_AutoOpsSpec_To_v1alpha2_AutoOpsSpec is an autogenerated conversion function.

func Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig added in v0.47.0

func Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig(in *v1.ConnectionPoolConfig, out *ConnectionPoolConfig, s conversion.Scope) error

Convert_v1_ConnectionPoolConfig_To_v1alpha2_ConnectionPoolConfig is an autogenerated conversion function.

func Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces added in v0.47.0

func Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces(in *v1.ConsumerNamespaces, out *ConsumerNamespaces, s conversion.Scope) error

Convert_v1_ConsumerNamespaces_To_v1alpha2_ConsumerNamespaces is an autogenerated conversion function.

func Convert_v1_Database_To_v1alpha2_Database added in v0.47.0

func Convert_v1_Database_To_v1alpha2_Database(in *v1.Database, out *Database, s conversion.Scope) error

Convert_v1_Database_To_v1alpha2_Database is an autogenerated conversion function.

func Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology added in v0.47.0

func Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology(in *v1.ElasticsearchClusterTopology, out *ElasticsearchClusterTopology, s conversion.Scope) error

Convert_v1_ElasticsearchClusterTopology_To_v1alpha2_ElasticsearchClusterTopology is an autogenerated conversion function.

func Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList added in v0.47.0

func Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList(in *v1.ElasticsearchList, out *ElasticsearchList, s conversion.Scope) error

Convert_v1_ElasticsearchList_To_v1alpha2_ElasticsearchList is an autogenerated conversion function.

func Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode added in v0.47.0

func Convert_v1_ElasticsearchNode_To_v1alpha2_ElasticsearchNode(in *v1.ElasticsearchNode, out *ElasticsearchNode, s conversion.Scope) error

func Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec added in v0.47.0

func Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec(in *v1.ElasticsearchRoleMapSpec, out *ElasticsearchRoleMapSpec, s conversion.Scope) error

Convert_v1_ElasticsearchRoleMapSpec_To_v1alpha2_ElasticsearchRoleMapSpec is an autogenerated conversion function.

func Convert_v1_ElasticsearchSpec_To_v1alpha2_ElasticsearchSpec added in v0.47.0

func Convert_v1_ElasticsearchSpec_To_v1alpha2_ElasticsearchSpec(in *v1.ElasticsearchSpec, out *ElasticsearchSpec, s conversion.Scope) error

func Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus added in v0.47.0

func Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus(in *v1.ElasticsearchStatus, out *ElasticsearchStatus, s conversion.Scope) error

Convert_v1_ElasticsearchStatus_To_v1alpha2_ElasticsearchStatus is an autogenerated conversion function.

func Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec added in v0.47.0

func Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec(in *v1.ElasticsearchUserSpec, out *ElasticsearchUserSpec, s conversion.Scope) error

Convert_v1_ElasticsearchUserSpec_To_v1alpha2_ElasticsearchUserSpec is an autogenerated conversion function.

func Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch added in v0.47.0

func Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch(in *v1.Elasticsearch, out *Elasticsearch, s conversion.Scope) error

Convert_v1_Elasticsearch_To_v1alpha2_Elasticsearch is an autogenerated conversion function.

func Convert_v1_GitRepo_To_v1alpha2_GitRepo added in v0.47.0

func Convert_v1_GitRepo_To_v1alpha2_GitRepo(in *v1.GitRepo, out *GitRepo, s conversion.Scope) error

Convert_v1_GitRepo_To_v1alpha2_GitRepo is an autogenerated conversion function.

func Convert_v1_InitSpec_To_v1alpha2_InitSpec added in v0.47.0

func Convert_v1_InitSpec_To_v1alpha2_InitSpec(in *v1.InitSpec, out *InitSpec, s conversion.Scope) error

Convert_v1_InitSpec_To_v1alpha2_InitSpec is an autogenerated conversion function.

func Convert_v1_KafkaApp_To_v1alpha2_KafkaApp added in v0.47.0

func Convert_v1_KafkaApp_To_v1alpha2_KafkaApp(in *v1.KafkaApp, out *KafkaApp, s conversion.Scope) error

Convert_v1_KafkaApp_To_v1alpha2_KafkaApp is an autogenerated conversion function.

func Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity added in v0.47.0

func Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity(in *v1.KafkaBrokerCapacity, out *KafkaBrokerCapacity, s conversion.Scope) error

Convert_v1_KafkaBrokerCapacity_To_v1alpha2_KafkaBrokerCapacity is an autogenerated conversion function.

func Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology added in v0.47.0

func Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology(in *v1.KafkaClusterTopology, out *KafkaClusterTopology, s conversion.Scope) error

Convert_v1_KafkaClusterTopology_To_v1alpha2_KafkaClusterTopology is an autogenerated conversion function.

func Convert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl added in v0.47.0

func Convert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl(in *v1.KafkaCruiseControl, out *KafkaCruiseControl, s conversion.Scope) error

Convert_v1_KafkaCruiseControl_To_v1alpha2_KafkaCruiseControl is an autogenerated conversion function.

func Convert_v1_KafkaList_To_v1alpha2_KafkaList added in v0.47.0

func Convert_v1_KafkaList_To_v1alpha2_KafkaList(in *v1.KafkaList, out *KafkaList, s conversion.Scope) error

Convert_v1_KafkaList_To_v1alpha2_KafkaList is an autogenerated conversion function.

func Convert_v1_KafkaNode_To_v1alpha2_KafkaNode added in v0.47.0

func Convert_v1_KafkaNode_To_v1alpha2_KafkaNode(in *v1.KafkaNode, out *KafkaNode, s conversion.Scope) error

func Convert_v1_KafkaSpec_To_v1alpha2_KafkaSpec added in v0.47.0

func Convert_v1_KafkaSpec_To_v1alpha2_KafkaSpec(in *v1.KafkaSpec, out *KafkaSpec, s conversion.Scope) error

Convert_v1_KafkaSpec_To_v1alpha2_KafkaSpec is an autogenerated conversion function.

func Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus added in v0.47.0

func Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus(in *v1.KafkaStatus, out *KafkaStatus, s conversion.Scope) error

Convert_v1_KafkaStatus_To_v1alpha2_KafkaStatus is an autogenerated conversion function.

func Convert_v1_Kafka_To_v1alpha2_Kafka added in v0.47.0

func Convert_v1_Kafka_To_v1alpha2_Kafka(in *v1.Kafka, out *Kafka, s conversion.Scope) error

Convert_v1_Kafka_To_v1alpha2_Kafka is an autogenerated conversion function.

func Convert_v1_KernelSettings_To_v1alpha2_KernelSettings added in v0.47.0

func Convert_v1_KernelSettings_To_v1alpha2_KernelSettings(in *v1.KernelSettings, out *KernelSettings, s conversion.Scope) error

Convert_v1_KernelSettings_To_v1alpha2_KernelSettings is an autogenerated conversion function.

func Convert_v1_MariaDBList_To_v1alpha2_MariaDBList added in v0.47.0

func Convert_v1_MariaDBList_To_v1alpha2_MariaDBList(in *v1.MariaDBList, out *MariaDBList, s conversion.Scope) error

Convert_v1_MariaDBList_To_v1alpha2_MariaDBList is an autogenerated conversion function.

func Convert_v1_MariaDBSpec_To_v1alpha2_MariaDBSpec added in v0.47.0

func Convert_v1_MariaDBSpec_To_v1alpha2_MariaDBSpec(in *v1.MariaDBSpec, out *MariaDBSpec, s conversion.Scope) error

func Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus added in v0.47.0

func Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus(in *v1.MariaDBStatus, out *MariaDBStatus, s conversion.Scope) error

Convert_v1_MariaDBStatus_To_v1alpha2_MariaDBStatus is an autogenerated conversion function.

func Convert_v1_MariaDB_To_v1alpha2_MariaDB added in v0.47.0

func Convert_v1_MariaDB_To_v1alpha2_MariaDB(in *v1.MariaDB, out *MariaDB, s conversion.Scope) error

Convert_v1_MariaDB_To_v1alpha2_MariaDB is an autogenerated conversion function.

func Convert_v1_MemcachedList_To_v1alpha2_MemcachedList added in v0.47.0

func Convert_v1_MemcachedList_To_v1alpha2_MemcachedList(in *v1.MemcachedList, out *MemcachedList, s conversion.Scope) error

Convert_v1_MemcachedList_To_v1alpha2_MemcachedList is an autogenerated conversion function.

func Convert_v1_MemcachedSpec_To_v1alpha2_MemcachedSpec added in v0.47.0

func Convert_v1_MemcachedSpec_To_v1alpha2_MemcachedSpec(in *v1.MemcachedSpec, out *MemcachedSpec, s conversion.Scope) error

func Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus added in v0.47.0

func Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus(in *v1.MemcachedStatus, out *MemcachedStatus, s conversion.Scope) error

Convert_v1_MemcachedStatus_To_v1alpha2_MemcachedStatus is an autogenerated conversion function.

func Convert_v1_Memcached_To_v1alpha2_Memcached added in v0.47.0

func Convert_v1_Memcached_To_v1alpha2_Memcached(in *v1.Memcached, out *Memcached, s conversion.Scope) error

Convert_v1_Memcached_To_v1alpha2_Memcached is an autogenerated conversion function.

func Convert_v1_MongoArbiterNode_To_v1alpha2_MongoArbiterNode added in v0.47.0

func Convert_v1_MongoArbiterNode_To_v1alpha2_MongoArbiterNode(in *v1.MongoArbiterNode, out *MongoArbiterNode, s conversion.Scope) error

func Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode added in v0.47.0

func Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode(in *v1.MongoDBConfigNode, out *MongoDBConfigNode, s conversion.Scope) error

Convert_v1_MongoDBConfigNode_To_v1alpha2_MongoDBConfigNode is an autogenerated conversion function.

func Convert_v1_MongoDBList_To_v1alpha2_MongoDBList added in v0.47.0

func Convert_v1_MongoDBList_To_v1alpha2_MongoDBList(in *v1.MongoDBList, out *MongoDBList, s conversion.Scope) error

Convert_v1_MongoDBList_To_v1alpha2_MongoDBList is an autogenerated conversion function.

func Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode added in v0.47.0

func Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode(in *v1.MongoDBMongosNode, out *MongoDBMongosNode, s conversion.Scope) error

Convert_v1_MongoDBMongosNode_To_v1alpha2_MongoDBMongosNode is an autogenerated conversion function.

func Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode added in v0.47.0

func Convert_v1_MongoDBNode_To_v1alpha2_MongoDBNode(in *v1.MongoDBNode, out *MongoDBNode, s conversion.Scope) error

func Convert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet added in v0.47.0

func Convert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet(in *v1.MongoDBReplicaSet, out *MongoDBReplicaSet, s conversion.Scope) error

Convert_v1_MongoDBReplicaSet_To_v1alpha2_MongoDBReplicaSet is an autogenerated conversion function.

func Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode added in v0.47.0

func Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode(in *v1.MongoDBShardNode, out *MongoDBShardNode, s conversion.Scope) error

Convert_v1_MongoDBShardNode_To_v1alpha2_MongoDBShardNode is an autogenerated conversion function.

func Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology added in v0.47.0

func Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology(in *v1.MongoDBShardingTopology, out *MongoDBShardingTopology, s conversion.Scope) error

Convert_v1_MongoDBShardingTopology_To_v1alpha2_MongoDBShardingTopology is an autogenerated conversion function.

func Convert_v1_MongoDBSpec_To_v1alpha2_MongoDBSpec added in v0.47.0

func Convert_v1_MongoDBSpec_To_v1alpha2_MongoDBSpec(in *v1.MongoDBSpec, out *MongoDBSpec, s conversion.Scope) error

func Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus added in v0.47.0

func Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus(in *v1.MongoDBStatus, out *MongoDBStatus, s conversion.Scope) error

Convert_v1_MongoDBStatus_To_v1alpha2_MongoDBStatus is an autogenerated conversion function.

func Convert_v1_MongoDB_To_v1alpha2_MongoDB added in v0.47.0

func Convert_v1_MongoDB_To_v1alpha2_MongoDB(in *v1.MongoDB, out *MongoDB, s conversion.Scope) error

Convert_v1_MongoDB_To_v1alpha2_MongoDB is an autogenerated conversion function.

func Convert_v1_MongoHiddenNode_To_v1alpha2_MongoHiddenNode added in v0.47.0

func Convert_v1_MongoHiddenNode_To_v1alpha2_MongoHiddenNode(in *v1.MongoHiddenNode, out *MongoHiddenNode, s conversion.Scope) error

func Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec added in v0.47.0

func Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec(in *v1.MySQLGroupSpec, out *MySQLGroupSpec, s conversion.Scope) error

Convert_v1_MySQLGroupSpec_To_v1alpha2_MySQLGroupSpec is an autogenerated conversion function.

func Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec added in v0.47.0

func Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec(in *v1.MySQLInnoDBClusterSpec, out *MySQLInnoDBClusterSpec, s conversion.Scope) error

Convert_v1_MySQLInnoDBClusterSpec_To_v1alpha2_MySQLInnoDBClusterSpec is an autogenerated conversion function.

func Convert_v1_MySQLList_To_v1alpha2_MySQLList added in v0.47.0

func Convert_v1_MySQLList_To_v1alpha2_MySQLList(in *v1.MySQLList, out *MySQLList, s conversion.Scope) error

Convert_v1_MySQLList_To_v1alpha2_MySQLList is an autogenerated conversion function.

func Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec added in v0.47.0

func Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec(in *v1.MySQLRouterSpec, out *MySQLRouterSpec, s conversion.Scope) error

Convert_v1_MySQLRouterSpec_To_v1alpha2_MySQLRouterSpec is an autogenerated conversion function.

func Convert_v1_MySQLSpec_To_v1alpha2_MySQLSpec added in v0.47.0

func Convert_v1_MySQLSpec_To_v1alpha2_MySQLSpec(in *v1.MySQLSpec, out *MySQLSpec, s conversion.Scope) error

func Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus added in v0.47.0

func Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus(in *v1.MySQLStatus, out *MySQLStatus, s conversion.Scope) error

Convert_v1_MySQLStatus_To_v1alpha2_MySQLStatus is an autogenerated conversion function.

func Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology added in v0.47.0

func Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology(in *v1.MySQLTopology, out *MySQLTopology, s conversion.Scope) error

Convert_v1_MySQLTopology_To_v1alpha2_MySQLTopology is an autogenerated conversion function.

func Convert_v1_MySQLUser_To_v1alpha2_MySQLUser added in v0.47.0

func Convert_v1_MySQLUser_To_v1alpha2_MySQLUser(in *v1.MySQLUser, out *MySQLUser, s conversion.Scope) error

Convert_v1_MySQLUser_To_v1alpha2_MySQLUser is an autogenerated conversion function.

func Convert_v1_MySQL_To_v1alpha2_MySQL added in v0.47.0

func Convert_v1_MySQL_To_v1alpha2_MySQL(in *v1.MySQL, out *MySQL, s conversion.Scope) error

Convert_v1_MySQL_To_v1alpha2_MySQL is an autogenerated conversion function.

func Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec added in v0.47.0

func Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec(in *v1.NamedServiceTemplateSpec, out *NamedServiceTemplateSpec, s conversion.Scope) error

Convert_v1_NamedServiceTemplateSpec_To_v1alpha2_NamedServiceTemplateSpec is an autogenerated conversion function.

func Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList added in v0.47.0

func Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList(in *v1.PerconaXtraDBList, out *PerconaXtraDBList, s conversion.Scope) error

Convert_v1_PerconaXtraDBList_To_v1alpha2_PerconaXtraDBList is an autogenerated conversion function.

func Convert_v1_PerconaXtraDBSpec_To_v1alpha2_PerconaXtraDBSpec added in v0.47.0

func Convert_v1_PerconaXtraDBSpec_To_v1alpha2_PerconaXtraDBSpec(in *v1.PerconaXtraDBSpec, out *PerconaXtraDBSpec, s conversion.Scope) error

func Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus added in v0.47.0

func Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus(in *v1.PerconaXtraDBStatus, out *PerconaXtraDBStatus, s conversion.Scope) error

Convert_v1_PerconaXtraDBStatus_To_v1alpha2_PerconaXtraDBStatus is an autogenerated conversion function.

func Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB added in v0.47.0

func Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB(in *v1.PerconaXtraDB, out *PerconaXtraDB, s conversion.Scope) error

Convert_v1_PerconaXtraDB_To_v1alpha2_PerconaXtraDB is an autogenerated conversion function.

func Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList added in v0.47.0

func Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList(in *v1.PgBouncerList, out *PgBouncerList, s conversion.Scope) error

Convert_v1_PgBouncerList_To_v1alpha2_PgBouncerList is an autogenerated conversion function.

func Convert_v1_PgBouncerSpec_To_v1alpha2_PgBouncerSpec added in v0.47.0

func Convert_v1_PgBouncerSpec_To_v1alpha2_PgBouncerSpec(in *v1.PgBouncerSpec, out *PgBouncerSpec, s conversion.Scope) error

func Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus added in v0.47.0

func Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus(in *v1.PgBouncerStatus, out *PgBouncerStatus, s conversion.Scope) error

Convert_v1_PgBouncerStatus_To_v1alpha2_PgBouncerStatus is an autogenerated conversion function.

func Convert_v1_PgBouncer_To_v1alpha2_PgBouncer added in v0.47.0

func Convert_v1_PgBouncer_To_v1alpha2_PgBouncer(in *v1.PgBouncer, out *PgBouncer, s conversion.Scope) error

Convert_v1_PgBouncer_To_v1alpha2_PgBouncer is an autogenerated conversion function.

func Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec added in v0.47.0

func Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec(in *ofstv1.PodTemplateSpec, out *ofstv2.PodTemplateSpec, s conversion.Scope) error

Convert_v1_PodTemplateSpec_To_v2_PodTemplateSpec is an autogenerated conversion function.

func Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig added in v0.47.0

func Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig(in *v1.PostgreLeaderElectionConfig, out *PostgreLeaderElectionConfig, s conversion.Scope) error

Convert_v1_PostgreLeaderElectionConfig_To_v1alpha2_PostgreLeaderElectionConfig is an autogenerated conversion function.

func Convert_v1_PostgresList_To_v1alpha2_PostgresList added in v0.47.0

func Convert_v1_PostgresList_To_v1alpha2_PostgresList(in *v1.PostgresList, out *PostgresList, s conversion.Scope) error

Convert_v1_PostgresList_To_v1alpha2_PostgresList is an autogenerated conversion function.

func Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication added in v0.47.0

func Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication(in *v1.PostgresReplication, out *PostgresReplication, s conversion.Scope) error

Convert_v1_PostgresReplication_To_v1alpha2_PostgresReplication is an autogenerated conversion function.

func Convert_v1_PostgresSpec_To_v1alpha2_PostgresSpec added in v0.47.0

func Convert_v1_PostgresSpec_To_v1alpha2_PostgresSpec(in *v1.PostgresSpec, out *PostgresSpec, s conversion.Scope) error

func Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus added in v0.47.0

func Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus(in *v1.PostgresStatus, out *PostgresStatus, s conversion.Scope) error

Convert_v1_PostgresStatus_To_v1alpha2_PostgresStatus is an autogenerated conversion function.

func Convert_v1_Postgres_To_v1alpha2_Postgres added in v0.47.0

func Convert_v1_Postgres_To_v1alpha2_Postgres(in *v1.Postgres, out *Postgres, s conversion.Scope) error

Convert_v1_Postgres_To_v1alpha2_Postgres is an autogenerated conversion function.

func Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration added in v0.47.0

func Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration(in *v1.ProxySQLConfiguration, out *ProxySQLConfiguration, s conversion.Scope) error

Convert_v1_ProxySQLConfiguration_To_v1alpha2_ProxySQLConfiguration is an autogenerated conversion function.

func Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList added in v0.47.0

func Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList(in *v1.ProxySQLList, out *ProxySQLList, s conversion.Scope) error

Convert_v1_ProxySQLList_To_v1alpha2_ProxySQLList is an autogenerated conversion function.

func Convert_v1_ProxySQLSpec_To_v1alpha2_ProxySQLSpec added in v0.47.0

func Convert_v1_ProxySQLSpec_To_v1alpha2_ProxySQLSpec(in *v1.ProxySQLSpec, out *ProxySQLSpec, s conversion.Scope) error

func Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus added in v0.47.0

func Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus(in *v1.ProxySQLStatus, out *ProxySQLStatus, s conversion.Scope) error

Convert_v1_ProxySQLStatus_To_v1alpha2_ProxySQLStatus is an autogenerated conversion function.

func Convert_v1_ProxySQL_To_v1alpha2_ProxySQL added in v0.47.0

func Convert_v1_ProxySQL_To_v1alpha2_ProxySQL(in *v1.ProxySQL, out *ProxySQL, s conversion.Scope) error

Convert_v1_ProxySQL_To_v1alpha2_ProxySQL is an autogenerated conversion function.

func Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget added in v0.47.0

func Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget(in *v1.RecoveryTarget, out *RecoveryTarget, s conversion.Scope) error

Convert_v1_RecoveryTarget_To_v1alpha2_RecoveryTarget is an autogenerated conversion function.

func Convert_v1_RedisClusterSpec_To_v1alpha2_RedisClusterSpec added in v0.47.0

func Convert_v1_RedisClusterSpec_To_v1alpha2_RedisClusterSpec(in *v1.RedisClusterSpec, out *RedisClusterSpec, s conversion.Scope) error

func Convert_v1_RedisList_To_v1alpha2_RedisList added in v0.47.0

func Convert_v1_RedisList_To_v1alpha2_RedisList(in *v1.RedisList, out *RedisList, s conversion.Scope) error

Convert_v1_RedisList_To_v1alpha2_RedisList is an autogenerated conversion function.

func Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList added in v0.47.0

func Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList(in *v1.RedisSentinelList, out *RedisSentinelList, s conversion.Scope) error

Convert_v1_RedisSentinelList_To_v1alpha2_RedisSentinelList is an autogenerated conversion function.

func Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef added in v0.47.0

func Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef(in *v1.RedisSentinelRef, out *RedisSentinelRef, s conversion.Scope) error

Convert_v1_RedisSentinelRef_To_v1alpha2_RedisSentinelRef is an autogenerated conversion function.

func Convert_v1_RedisSentinelSpec_To_v1alpha2_RedisSentinelSpec added in v0.47.0

func Convert_v1_RedisSentinelSpec_To_v1alpha2_RedisSentinelSpec(in *v1.RedisSentinelSpec, out *RedisSentinelSpec, s conversion.Scope) error

func Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus added in v0.47.0

func Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus(in *v1.RedisSentinelStatus, out *RedisSentinelStatus, s conversion.Scope) error

Convert_v1_RedisSentinelStatus_To_v1alpha2_RedisSentinelStatus is an autogenerated conversion function.

func Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel added in v0.47.0

func Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel(in *v1.RedisSentinel, out *RedisSentinel, s conversion.Scope) error

Convert_v1_RedisSentinel_To_v1alpha2_RedisSentinel is an autogenerated conversion function.

func Convert_v1_RedisSpec_To_v1alpha2_RedisSpec added in v0.47.0

func Convert_v1_RedisSpec_To_v1alpha2_RedisSpec(in *v1.RedisSpec, out *RedisSpec, s conversion.Scope) error

func Convert_v1_RedisStatus_To_v1alpha2_RedisStatus added in v0.47.0

func Convert_v1_RedisStatus_To_v1alpha2_RedisStatus(in *v1.RedisStatus, out *RedisStatus, s conversion.Scope) error

Convert_v1_RedisStatus_To_v1alpha2_RedisStatus is an autogenerated conversion function.

func Convert_v1_Redis_To_v1alpha2_Redis added in v0.47.0

func Convert_v1_Redis_To_v1alpha2_Redis(in *v1.Redis, out *Redis, s conversion.Scope) error

Convert_v1_Redis_To_v1alpha2_Redis is an autogenerated conversion function.

func Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec added in v0.47.0

func Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec(in *v1.RemoteReplicaSpec, out *RemoteReplicaSpec, s conversion.Scope) error

Convert_v1_RemoteReplicaSpec_To_v1alpha2_RemoteReplicaSpec is an autogenerated conversion function.

func Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec added in v0.47.0

func Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec(in *v1.ScriptSourceSpec, out *ScriptSourceSpec, s conversion.Scope) error

Convert_v1_ScriptSourceSpec_To_v1alpha2_ScriptSourceSpec is an autogenerated conversion function.

func Convert_v1_SecretReference_To_v1alpha2_SecretReference added in v0.47.0

func Convert_v1_SecretReference_To_v1alpha2_SecretReference(in *v1.SecretReference, out *SecretReference, s conversion.Scope) error

Convert_v1_SecretReference_To_v1alpha2_SecretReference is an autogenerated conversion function.

func Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec added in v0.47.0

func Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec(in *v1.SemiSyncSpec, out *SemiSyncSpec, s conversion.Scope) error

Convert_v1_SemiSyncSpec_To_v1alpha2_SemiSyncSpec is an autogenerated conversion function.

func Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec added in v0.47.0

func Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec(in *v1.SystemUserSecretsSpec, out *SystemUserSecretsSpec, s conversion.Scope) error

Convert_v1_SystemUserSecretsSpec_To_v1alpha2_SystemUserSecretsSpec is an autogenerated conversion function.

func Convert_v1alpha2_Age_To_v1_Age added in v0.47.0

func Convert_v1alpha2_Age_To_v1_Age(in *Age, out *v1.Age, s conversion.Scope) error

Convert_v1alpha2_Age_To_v1_Age is an autogenerated conversion function.

func Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers added in v0.47.0

func Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers(in *AllowedConsumers, out *v1.AllowedConsumers, s conversion.Scope) error

Convert_v1alpha2_AllowedConsumers_To_v1_AllowedConsumers is an autogenerated conversion function.

func Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec added in v0.47.0

func Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec(in *ArbiterSpec, out *v1.ArbiterSpec, s conversion.Scope) error

Convert_v1alpha2_ArbiterSpec_To_v1_ArbiterSpec is an autogenerated conversion function.

func Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery added in v0.47.0

func Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery(in *ArchiverRecovery, out *v1.ArchiverRecovery, s conversion.Scope) error

Convert_v1alpha2_ArchiverRecovery_To_v1_ArchiverRecovery is an autogenerated conversion function.

func Convert_v1alpha2_Archiver_To_v1_Archiver added in v0.47.0

func Convert_v1alpha2_Archiver_To_v1_Archiver(in *Archiver, out *v1.Archiver, s conversion.Scope) error

Convert_v1alpha2_Archiver_To_v1_Archiver is an autogenerated conversion function.

func Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec added in v0.47.0

func Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec(in *AutoOpsSpec, out *v1.AutoOpsSpec, s conversion.Scope) error

Convert_v1alpha2_AutoOpsSpec_To_v1_AutoOpsSpec is an autogenerated conversion function.

func Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig added in v0.47.0

func Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig(in *ConnectionPoolConfig, out *v1.ConnectionPoolConfig, s conversion.Scope) error

Convert_v1alpha2_ConnectionPoolConfig_To_v1_ConnectionPoolConfig is an autogenerated conversion function.

func Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces added in v0.47.0

func Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces(in *ConsumerNamespaces, out *v1.ConsumerNamespaces, s conversion.Scope) error

Convert_v1alpha2_ConsumerNamespaces_To_v1_ConsumerNamespaces is an autogenerated conversion function.

func Convert_v1alpha2_CoordinatorSpec_To_Slice_v1_Container added in v0.47.0

func Convert_v1alpha2_CoordinatorSpec_To_Slice_v1_Container(in *CoordinatorSpec, out *[]corev1.Container, s conversion.Scope) error

Convert_v1alpha2_CoordinatorSpec_To_Slice_v1_Container is an autogenerated conversion function.

func Convert_v1alpha2_Database_To_v1_Database added in v0.47.0

func Convert_v1alpha2_Database_To_v1_Database(in *Database, out *v1.Database, s conversion.Scope) error

Convert_v1alpha2_Database_To_v1_Database is an autogenerated conversion function.

func Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology added in v0.47.0

func Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology(in *ElasticsearchClusterTopology, out *v1.ElasticsearchClusterTopology, s conversion.Scope) error

Convert_v1alpha2_ElasticsearchClusterTopology_To_v1_ElasticsearchClusterTopology is an autogenerated conversion function.

func Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList added in v0.47.0

func Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList(in *ElasticsearchList, out *v1.ElasticsearchList, s conversion.Scope) error

Convert_v1alpha2_ElasticsearchList_To_v1_ElasticsearchList is an autogenerated conversion function.

func Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode added in v0.47.0

func Convert_v1alpha2_ElasticsearchNode_To_v1_ElasticsearchNode(in *ElasticsearchNode, out *v1.ElasticsearchNode, s conversion.Scope) error

func Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec added in v0.47.0

func Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec(in *ElasticsearchRoleMapSpec, out *v1.ElasticsearchRoleMapSpec, s conversion.Scope) error

Convert_v1alpha2_ElasticsearchRoleMapSpec_To_v1_ElasticsearchRoleMapSpec is an autogenerated conversion function.

func Convert_v1alpha2_ElasticsearchSpec_To_v1_ElasticsearchSpec added in v0.47.0

func Convert_v1alpha2_ElasticsearchSpec_To_v1_ElasticsearchSpec(in *ElasticsearchSpec, out *v1.ElasticsearchSpec, s conversion.Scope) error

func Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus added in v0.47.0

func Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus(in *ElasticsearchStatus, out *v1.ElasticsearchStatus, s conversion.Scope) error

Convert_v1alpha2_ElasticsearchStatus_To_v1_ElasticsearchStatus is an autogenerated conversion function.

func Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec added in v0.47.0

func Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec(in *ElasticsearchUserSpec, out *v1.ElasticsearchUserSpec, s conversion.Scope) error

Convert_v1alpha2_ElasticsearchUserSpec_To_v1_ElasticsearchUserSpec is an autogenerated conversion function.

func Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch added in v0.47.0

func Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch(in *Elasticsearch, out *v1.Elasticsearch, s conversion.Scope) error

Convert_v1alpha2_Elasticsearch_To_v1_Elasticsearch is an autogenerated conversion function.

func Convert_v1alpha2_GitRepo_To_v1_GitRepo added in v0.47.0

func Convert_v1alpha2_GitRepo_To_v1_GitRepo(in *GitRepo, out *v1.GitRepo, s conversion.Scope) error

Convert_v1alpha2_GitRepo_To_v1_GitRepo is an autogenerated conversion function.

func Convert_v1alpha2_InitSpec_To_v1_InitSpec added in v0.47.0

func Convert_v1alpha2_InitSpec_To_v1_InitSpec(in *InitSpec, out *v1.InitSpec, s conversion.Scope) error

Convert_v1alpha2_InitSpec_To_v1_InitSpec is an autogenerated conversion function.

func Convert_v1alpha2_KafkaApp_To_v1_KafkaApp added in v0.47.0

func Convert_v1alpha2_KafkaApp_To_v1_KafkaApp(in *KafkaApp, out *v1.KafkaApp, s conversion.Scope) error

Convert_v1alpha2_KafkaApp_To_v1_KafkaApp is an autogenerated conversion function.

func Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity added in v0.47.0

func Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity(in *KafkaBrokerCapacity, out *v1.KafkaBrokerCapacity, s conversion.Scope) error

Convert_v1alpha2_KafkaBrokerCapacity_To_v1_KafkaBrokerCapacity is an autogenerated conversion function.

func Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology added in v0.47.0

func Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology(in *KafkaClusterTopology, out *v1.KafkaClusterTopology, s conversion.Scope) error

Convert_v1alpha2_KafkaClusterTopology_To_v1_KafkaClusterTopology is an autogenerated conversion function.

func Convert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl added in v0.47.0

func Convert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl(in *KafkaCruiseControl, out *v1.KafkaCruiseControl, s conversion.Scope) error

Convert_v1alpha2_KafkaCruiseControl_To_v1_KafkaCruiseControl is an autogenerated conversion function.

func Convert_v1alpha2_KafkaList_To_v1_KafkaList added in v0.47.0

func Convert_v1alpha2_KafkaList_To_v1_KafkaList(in *KafkaList, out *v1.KafkaList, s conversion.Scope) error

Convert_v1alpha2_KafkaList_To_v1_KafkaList is an autogenerated conversion function.

func Convert_v1alpha2_KafkaNode_To_v1_KafkaNode added in v0.47.0

func Convert_v1alpha2_KafkaNode_To_v1_KafkaNode(in *KafkaNode, out *v1.KafkaNode, s conversion.Scope) error

func Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec added in v0.47.0

func Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec(in *KafkaSpec, out *v1.KafkaSpec, s conversion.Scope) error

Convert_v1alpha2_KafkaSpec_To_v1_KafkaSpec is an autogenerated conversion function.

func Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus added in v0.47.0

func Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus(in *KafkaStatus, out *v1.KafkaStatus, s conversion.Scope) error

Convert_v1alpha2_KafkaStatus_To_v1_KafkaStatus is an autogenerated conversion function.

func Convert_v1alpha2_Kafka_To_v1_Kafka added in v0.47.0

func Convert_v1alpha2_Kafka_To_v1_Kafka(in *Kafka, out *v1.Kafka, s conversion.Scope) error

Convert_v1alpha2_Kafka_To_v1_Kafka is an autogenerated conversion function.

func Convert_v1alpha2_KernelSettings_To_v1_KernelSettings added in v0.47.0

func Convert_v1alpha2_KernelSettings_To_v1_KernelSettings(in *KernelSettings, out *v1.KernelSettings, s conversion.Scope) error

Convert_v1alpha2_KernelSettings_To_v1_KernelSettings is an autogenerated conversion function.

func Convert_v1alpha2_MariaDBList_To_v1_MariaDBList added in v0.47.0

func Convert_v1alpha2_MariaDBList_To_v1_MariaDBList(in *MariaDBList, out *v1.MariaDBList, s conversion.Scope) error

Convert_v1alpha2_MariaDBList_To_v1_MariaDBList is an autogenerated conversion function.

func Convert_v1alpha2_MariaDBSpec_To_v1_MariaDBSpec added in v0.47.0

func Convert_v1alpha2_MariaDBSpec_To_v1_MariaDBSpec(in *MariaDBSpec, out *v1.MariaDBSpec, s conversion.Scope) error

func Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus added in v0.47.0

func Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus(in *MariaDBStatus, out *v1.MariaDBStatus, s conversion.Scope) error

Convert_v1alpha2_MariaDBStatus_To_v1_MariaDBStatus is an autogenerated conversion function.

func Convert_v1alpha2_MariaDB_To_v1_MariaDB added in v0.47.0

func Convert_v1alpha2_MariaDB_To_v1_MariaDB(in *MariaDB, out *v1.MariaDB, s conversion.Scope) error

Convert_v1alpha2_MariaDB_To_v1_MariaDB is an autogenerated conversion function.

func Convert_v1alpha2_MemcachedList_To_v1_MemcachedList added in v0.47.0

func Convert_v1alpha2_MemcachedList_To_v1_MemcachedList(in *MemcachedList, out *v1.MemcachedList, s conversion.Scope) error

Convert_v1alpha2_MemcachedList_To_v1_MemcachedList is an autogenerated conversion function.

func Convert_v1alpha2_MemcachedSpec_To_v1_MemcachedSpec added in v0.47.0

func Convert_v1alpha2_MemcachedSpec_To_v1_MemcachedSpec(in *MemcachedSpec, out *v1.MemcachedSpec, s conversion.Scope) error

func Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus added in v0.47.0

func Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus(in *MemcachedStatus, out *v1.MemcachedStatus, s conversion.Scope) error

Convert_v1alpha2_MemcachedStatus_To_v1_MemcachedStatus is an autogenerated conversion function.

func Convert_v1alpha2_Memcached_To_v1_Memcached added in v0.47.0

func Convert_v1alpha2_Memcached_To_v1_Memcached(in *Memcached, out *v1.Memcached, s conversion.Scope) error

Convert_v1alpha2_Memcached_To_v1_Memcached is an autogenerated conversion function.

func Convert_v1alpha2_MongoArbiterNode_To_v1_MongoArbiterNode added in v0.47.0

func Convert_v1alpha2_MongoArbiterNode_To_v1_MongoArbiterNode(in *MongoArbiterNode, out *v1.MongoArbiterNode, s conversion.Scope) error

func Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode added in v0.47.0

func Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode(in *MongoDBConfigNode, out *v1.MongoDBConfigNode, s conversion.Scope) error

Convert_v1alpha2_MongoDBConfigNode_To_v1_MongoDBConfigNode is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBList_To_v1_MongoDBList added in v0.47.0

func Convert_v1alpha2_MongoDBList_To_v1_MongoDBList(in *MongoDBList, out *v1.MongoDBList, s conversion.Scope) error

Convert_v1alpha2_MongoDBList_To_v1_MongoDBList is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode added in v0.47.0

func Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode(in *MongoDBMongosNode, out *v1.MongoDBMongosNode, s conversion.Scope) error

Convert_v1alpha2_MongoDBMongosNode_To_v1_MongoDBMongosNode is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode added in v0.47.0

func Convert_v1alpha2_MongoDBNode_To_v1_MongoDBNode(in *MongoDBNode, out *v1.MongoDBNode, s conversion.Scope) error

func Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet added in v0.47.0

func Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet(in *MongoDBReplicaSet, out *v1.MongoDBReplicaSet, s conversion.Scope) error

Convert_v1alpha2_MongoDBReplicaSet_To_v1_MongoDBReplicaSet is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode added in v0.47.0

func Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode(in *MongoDBShardNode, out *v1.MongoDBShardNode, s conversion.Scope) error

Convert_v1alpha2_MongoDBShardNode_To_v1_MongoDBShardNode is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology added in v0.47.0

func Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology(in *MongoDBShardingTopology, out *v1.MongoDBShardingTopology, s conversion.Scope) error

Convert_v1alpha2_MongoDBShardingTopology_To_v1_MongoDBShardingTopology is an autogenerated conversion function.

func Convert_v1alpha2_MongoDBSpec_To_v1_MongoDBSpec added in v0.47.0

func Convert_v1alpha2_MongoDBSpec_To_v1_MongoDBSpec(in *MongoDBSpec, out *v1.MongoDBSpec, s conversion.Scope) error

func Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus added in v0.47.0

func Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus(in *MongoDBStatus, out *v1.MongoDBStatus, s conversion.Scope) error

Convert_v1alpha2_MongoDBStatus_To_v1_MongoDBStatus is an autogenerated conversion function.

func Convert_v1alpha2_MongoDB_To_v1_MongoDB added in v0.47.0

func Convert_v1alpha2_MongoDB_To_v1_MongoDB(in *MongoDB, out *v1.MongoDB, s conversion.Scope) error

Convert_v1alpha2_MongoDB_To_v1_MongoDB is an autogenerated conversion function.

func Convert_v1alpha2_MongoHiddenNode_To_v1_MongoHiddenNode added in v0.47.0

func Convert_v1alpha2_MongoHiddenNode_To_v1_MongoHiddenNode(in *MongoHiddenNode, out *v1.MongoHiddenNode, s conversion.Scope) error

func Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec added in v0.47.0

func Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec(in *MySQLGroupSpec, out *v1.MySQLGroupSpec, s conversion.Scope) error

Convert_v1alpha2_MySQLGroupSpec_To_v1_MySQLGroupSpec is an autogenerated conversion function.

func Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec added in v0.47.0

func Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec(in *MySQLInnoDBClusterSpec, out *v1.MySQLInnoDBClusterSpec, s conversion.Scope) error

Convert_v1alpha2_MySQLInnoDBClusterSpec_To_v1_MySQLInnoDBClusterSpec is an autogenerated conversion function.

func Convert_v1alpha2_MySQLList_To_v1_MySQLList added in v0.47.0

func Convert_v1alpha2_MySQLList_To_v1_MySQLList(in *MySQLList, out *v1.MySQLList, s conversion.Scope) error

Convert_v1alpha2_MySQLList_To_v1_MySQLList is an autogenerated conversion function.

func Convert_v1alpha2_MySQLRouterSpec_To_v1_MySQLRouterSpec added in v0.47.0

func Convert_v1alpha2_MySQLRouterSpec_To_v1_MySQLRouterSpec(in *MySQLRouterSpec, out *v1.MySQLRouterSpec, s conversion.Scope) error

func Convert_v1alpha2_MySQLSpec_To_v1_MySQLSpec added in v0.47.0

func Convert_v1alpha2_MySQLSpec_To_v1_MySQLSpec(in *MySQLSpec, out *v1.MySQLSpec, s conversion.Scope) error

func Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus added in v0.47.0

func Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus(in *MySQLStatus, out *v1.MySQLStatus, s conversion.Scope) error

Convert_v1alpha2_MySQLStatus_To_v1_MySQLStatus is an autogenerated conversion function.

func Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology added in v0.47.0

func Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology(in *MySQLTopology, out *v1.MySQLTopology, s conversion.Scope) error

Convert_v1alpha2_MySQLTopology_To_v1_MySQLTopology is an autogenerated conversion function.

func Convert_v1alpha2_MySQLUser_To_v1_MySQLUser added in v0.47.0

func Convert_v1alpha2_MySQLUser_To_v1_MySQLUser(in *MySQLUser, out *v1.MySQLUser, s conversion.Scope) error

Convert_v1alpha2_MySQLUser_To_v1_MySQLUser is an autogenerated conversion function.

func Convert_v1alpha2_MySQL_To_v1_MySQL added in v0.47.0

func Convert_v1alpha2_MySQL_To_v1_MySQL(in *MySQL, out *v1.MySQL, s conversion.Scope) error

Convert_v1alpha2_MySQL_To_v1_MySQL is an autogenerated conversion function.

func Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec added in v0.47.0

func Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec(in *NamedServiceTemplateSpec, out *v1.NamedServiceTemplateSpec, s conversion.Scope) error

Convert_v1alpha2_NamedServiceTemplateSpec_To_v1_NamedServiceTemplateSpec is an autogenerated conversion function.

func Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList added in v0.47.0

func Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList(in *PerconaXtraDBList, out *v1.PerconaXtraDBList, s conversion.Scope) error

Convert_v1alpha2_PerconaXtraDBList_To_v1_PerconaXtraDBList is an autogenerated conversion function.

func Convert_v1alpha2_PerconaXtraDBSpec_To_v1_PerconaXtraDBSpec added in v0.47.0

func Convert_v1alpha2_PerconaXtraDBSpec_To_v1_PerconaXtraDBSpec(in *PerconaXtraDBSpec, out *v1.PerconaXtraDBSpec, s conversion.Scope) error

func Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus added in v0.47.0

func Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus(in *PerconaXtraDBStatus, out *v1.PerconaXtraDBStatus, s conversion.Scope) error

Convert_v1alpha2_PerconaXtraDBStatus_To_v1_PerconaXtraDBStatus is an autogenerated conversion function.

func Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB added in v0.47.0

func Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB(in *PerconaXtraDB, out *v1.PerconaXtraDB, s conversion.Scope) error

Convert_v1alpha2_PerconaXtraDB_To_v1_PerconaXtraDB is an autogenerated conversion function.

func Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList added in v0.47.0

func Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList(in *PgBouncerList, out *v1.PgBouncerList, s conversion.Scope) error

Convert_v1alpha2_PgBouncerList_To_v1_PgBouncerList is an autogenerated conversion function.

func Convert_v1alpha2_PgBouncerSpec_To_v1_PgBouncerSpec added in v0.47.0

func Convert_v1alpha2_PgBouncerSpec_To_v1_PgBouncerSpec(in *PgBouncerSpec, out *v1.PgBouncerSpec, s conversion.Scope) error

func Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus added in v0.47.0

func Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus(in *PgBouncerStatus, out *v1.PgBouncerStatus, s conversion.Scope) error

Convert_v1alpha2_PgBouncerStatus_To_v1_PgBouncerStatus is an autogenerated conversion function.

func Convert_v1alpha2_PgBouncer_To_v1_PgBouncer added in v0.47.0

func Convert_v1alpha2_PgBouncer_To_v1_PgBouncer(in *PgBouncer, out *v1.PgBouncer, s conversion.Scope) error

Convert_v1alpha2_PgBouncer_To_v1_PgBouncer is an autogenerated conversion function.

func Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig added in v0.47.0

func Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig(in *PostgreLeaderElectionConfig, out *v1.PostgreLeaderElectionConfig, s conversion.Scope) error

Convert_v1alpha2_PostgreLeaderElectionConfig_To_v1_PostgreLeaderElectionConfig is an autogenerated conversion function.

func Convert_v1alpha2_PostgresList_To_v1_PostgresList added in v0.47.0

func Convert_v1alpha2_PostgresList_To_v1_PostgresList(in *PostgresList, out *v1.PostgresList, s conversion.Scope) error

Convert_v1alpha2_PostgresList_To_v1_PostgresList is an autogenerated conversion function.

func Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication added in v0.47.0

func Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication(in *PostgresReplication, out *v1.PostgresReplication, s conversion.Scope) error

Convert_v1alpha2_PostgresReplication_To_v1_PostgresReplication is an autogenerated conversion function.

func Convert_v1alpha2_PostgresSpec_To_v1_PostgresSpec added in v0.47.0

func Convert_v1alpha2_PostgresSpec_To_v1_PostgresSpec(in *PostgresSpec, out *v1.PostgresSpec, s conversion.Scope) error

func Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus added in v0.47.0

func Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus(in *PostgresStatus, out *v1.PostgresStatus, s conversion.Scope) error

Convert_v1alpha2_PostgresStatus_To_v1_PostgresStatus is an autogenerated conversion function.

func Convert_v1alpha2_Postgres_To_v1_Postgres added in v0.47.0

func Convert_v1alpha2_Postgres_To_v1_Postgres(in *Postgres, out *v1.Postgres, s conversion.Scope) error

Convert_v1alpha2_Postgres_To_v1_Postgres is an autogenerated conversion function.

func Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration added in v0.47.0

func Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration(in *ProxySQLConfiguration, out *v1.ProxySQLConfiguration, s conversion.Scope) error

Convert_v1alpha2_ProxySQLConfiguration_To_v1_ProxySQLConfiguration is an autogenerated conversion function.

func Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList added in v0.47.0

func Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList(in *ProxySQLList, out *v1.ProxySQLList, s conversion.Scope) error

Convert_v1alpha2_ProxySQLList_To_v1_ProxySQLList is an autogenerated conversion function.

func Convert_v1alpha2_ProxySQLSpec_To_v1_ProxySQLSpec added in v0.47.0

func Convert_v1alpha2_ProxySQLSpec_To_v1_ProxySQLSpec(in *ProxySQLSpec, out *v1.ProxySQLSpec, s conversion.Scope) error

func Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus added in v0.47.0

func Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus(in *ProxySQLStatus, out *v1.ProxySQLStatus, s conversion.Scope) error

Convert_v1alpha2_ProxySQLStatus_To_v1_ProxySQLStatus is an autogenerated conversion function.

func Convert_v1alpha2_ProxySQL_To_v1_ProxySQL added in v0.47.0

func Convert_v1alpha2_ProxySQL_To_v1_ProxySQL(in *ProxySQL, out *v1.ProxySQL, s conversion.Scope) error

Convert_v1alpha2_ProxySQL_To_v1_ProxySQL is an autogenerated conversion function.

func Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget added in v0.47.0

func Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget(in *RecoveryTarget, out *v1.RecoveryTarget, s conversion.Scope) error

Convert_v1alpha2_RecoveryTarget_To_v1_RecoveryTarget is an autogenerated conversion function.

func Convert_v1alpha2_RedisClusterSpec_To_v1_RedisClusterSpec added in v0.47.0

func Convert_v1alpha2_RedisClusterSpec_To_v1_RedisClusterSpec(in *RedisClusterSpec, out *v1.RedisClusterSpec, s conversion.Scope) error

func Convert_v1alpha2_RedisList_To_v1_RedisList added in v0.47.0

func Convert_v1alpha2_RedisList_To_v1_RedisList(in *RedisList, out *v1.RedisList, s conversion.Scope) error

Convert_v1alpha2_RedisList_To_v1_RedisList is an autogenerated conversion function.

func Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList added in v0.47.0

func Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList(in *RedisSentinelList, out *v1.RedisSentinelList, s conversion.Scope) error

Convert_v1alpha2_RedisSentinelList_To_v1_RedisSentinelList is an autogenerated conversion function.

func Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef added in v0.47.0

func Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef(in *RedisSentinelRef, out *v1.RedisSentinelRef, s conversion.Scope) error

Convert_v1alpha2_RedisSentinelRef_To_v1_RedisSentinelRef is an autogenerated conversion function.

func Convert_v1alpha2_RedisSentinelSpec_To_v1_RedisSentinelSpec added in v0.47.0

func Convert_v1alpha2_RedisSentinelSpec_To_v1_RedisSentinelSpec(in *RedisSentinelSpec, out *v1.RedisSentinelSpec, s conversion.Scope) error

func Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus added in v0.47.0

func Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus(in *RedisSentinelStatus, out *v1.RedisSentinelStatus, s conversion.Scope) error

Convert_v1alpha2_RedisSentinelStatus_To_v1_RedisSentinelStatus is an autogenerated conversion function.

func Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel added in v0.47.0

func Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel(in *RedisSentinel, out *v1.RedisSentinel, s conversion.Scope) error

Convert_v1alpha2_RedisSentinel_To_v1_RedisSentinel is an autogenerated conversion function.

func Convert_v1alpha2_RedisSpec_To_v1_RedisSpec added in v0.47.0

func Convert_v1alpha2_RedisSpec_To_v1_RedisSpec(in *RedisSpec, out *v1.RedisSpec, s conversion.Scope) error

func Convert_v1alpha2_RedisStatus_To_v1_RedisStatus added in v0.47.0

func Convert_v1alpha2_RedisStatus_To_v1_RedisStatus(in *RedisStatus, out *v1.RedisStatus, s conversion.Scope) error

Convert_v1alpha2_RedisStatus_To_v1_RedisStatus is an autogenerated conversion function.

func Convert_v1alpha2_Redis_To_v1_Redis added in v0.47.0

func Convert_v1alpha2_Redis_To_v1_Redis(in *Redis, out *v1.Redis, s conversion.Scope) error

Convert_v1alpha2_Redis_To_v1_Redis is an autogenerated conversion function.

func Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec added in v0.47.0

func Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec(in *RemoteReplicaSpec, out *v1.RemoteReplicaSpec, s conversion.Scope) error

Convert_v1alpha2_RemoteReplicaSpec_To_v1_RemoteReplicaSpec is an autogenerated conversion function.

func Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec added in v0.47.0

func Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec(in *ScriptSourceSpec, out *v1.ScriptSourceSpec, s conversion.Scope) error

Convert_v1alpha2_ScriptSourceSpec_To_v1_ScriptSourceSpec is an autogenerated conversion function.

func Convert_v1alpha2_SecretReference_To_v1_SecretReference added in v0.47.0

func Convert_v1alpha2_SecretReference_To_v1_SecretReference(in *SecretReference, out *v1.SecretReference, s conversion.Scope) error

Convert_v1alpha2_SecretReference_To_v1_SecretReference is an autogenerated conversion function.

func Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec added in v0.47.0

func Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec(in *SemiSyncSpec, out *v1.SemiSyncSpec, s conversion.Scope) error

Convert_v1alpha2_SemiSyncSpec_To_v1_SemiSyncSpec is an autogenerated conversion function.

func Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec added in v0.47.0

func Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec(in *SystemUserSecretsSpec, out *v1.SystemUserSecretsSpec, s conversion.Scope) error

Convert_v1alpha2_SystemUserSecretsSpec_To_v1_SystemUserSecretsSpec is an autogenerated conversion function.

func Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec added in v0.47.0

func Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec(in *ofstv2.PodTemplateSpec, out *ofstv1.PodTemplateSpec, s conversion.Scope) error

Convert_v2_PodTemplateSpec_To_v1_PodTemplateSpec is an autogenerated conversion function.

func FerretDBValidateEnvVar added in v0.41.0

func FerretDBValidateEnvVar(envs []core.EnvVar, forbiddenEnvs []string, resourceType string) error

func GetDatabasePods added in v0.24.0

func GetDatabasePods(db metav1.Object, stsLister appslister.StatefulSetLister, pods []core.Pod) ([]core.Pod, error)

func GetDatabasePodsByPetSetLister added in v0.44.0

func GetDatabasePodsByPetSetLister(db metav1.Object, psLister pslister.PetSetLister, pods []core.Pod) ([]core.Pod, error)

func GetServiceTemplate added in v0.15.0

func GetServiceTemplate(templates []NamedServiceTemplateSpec, alias ServiceAlias) ofst.ServiceTemplateSpec

GetServiceTemplate returns a pointer to the desired serviceTemplate referred by "aliaS". Otherwise, it returns nil.

func GetSharedBufferSizeForPostgres added in v0.19.0

func GetSharedBufferSizeForPostgres(resource *resource.Quantity) string

GetSharedBufferSizeForPostgres this func takes a input type int64 which is in bytes return the 25% of the input in Bytes

func HasServiceTemplate added in v0.15.0

func HasServiceTemplate(templates []NamedServiceTemplateSpec, alias ServiceAlias) bool

HasServiceTemplate returns "true" if the desired serviceTemplate provided in "aliaS" is present in the serviceTemplate list. Otherwise, it returns "false".

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func MySQLExporterTLSArg added in v0.16.0

func MySQLExporterTLSArg() string

func MySQLRequireSSLArg added in v0.16.0

func MySQLRequireSSLArg() string

func PgpoolGetMainContainerEnvs added in v0.41.0

func PgpoolGetMainContainerEnvs(p *Pgpool) []core.EnvVar

func PgpoolValidateVersion added in v0.41.0

func PgpoolValidateVersion(p *Pgpool) error

func PgpoolValidateVolumes added in v0.41.0

func PgpoolValidateVolumes(p *Pgpool) error

func PgpoolValidateVolumesMountPaths added in v0.41.0

func PgpoolValidateVolumesMountPaths(podTemplate *ofst.PodTemplateSpec) error

func RegisterConversions added in v0.47.0

func RegisterConversions(s *runtime.Scheme) error

RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

func SetDefaultClient added in v0.38.0

func SetDefaultClient(kc client.Client)

func UsesAcmeIssuer added in v0.32.0

func UsesAcmeIssuer(kc client.Client, ns string, issuerRef core.TypedLocalObjectReference) (bool, error)

Types

type AddressType added in v0.18.0

type AddressType string

+kubebuilder:validation:Enum=DNS;IP;IPv4;IPv6

const (
	AddressTypeDNS AddressType = "DNS"
	// Uses spec.podIP as address for db pods.
	AddressTypeIP AddressType = "IP"
	// Uses first IPv4 address from spec.podIP, spec.podIPs fields as address for db pods.
	AddressTypeIPv4 AddressType = "IPv4"
	// Uses first IPv6 address from spec.podIP, spec.podIPs fields as address for db pods.
	AddressTypeIPv6 AddressType = "IPv6"
)

func (AddressType) IsIP added in v0.18.0

func (a AddressType) IsIP() bool

type Age added in v0.29.0

type Age struct {
	// Populated by Provisioner when authSecret is created or Ops Manager when authSecret is updated.
	LastUpdateTimestamp metav1.Time `json:"lastUpdateTimestamp,omitempty"`
}

func (*Age) DeepCopy added in v0.29.0

func (in *Age) DeepCopy() *Age

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

func (*Age) DeepCopyInto added in v0.29.0

func (in *Age) DeepCopyInto(out *Age)

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

type AllowedConsumers added in v0.25.0

type AllowedConsumers struct {
	// Namespaces indicates namespaces from which Consumers may be attached to
	//
	// +optional
	// +kubebuilder:default={from: Same}
	Namespaces *ConsumerNamespaces `json:"namespaces,omitempty"`

	// Selector specifies a selector for consumers that are allowed to bind
	// to this database instance.
	//
	// +optional
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
}

AllowedConsumers defines which consumers may refer to a database instance.

func (*AllowedConsumers) DeepCopy added in v0.25.0

func (in *AllowedConsumers) DeepCopy() *AllowedConsumers

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

func (*AllowedConsumers) DeepCopyInto added in v0.25.0

func (in *AllowedConsumers) DeepCopyInto(out *AllowedConsumers)

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

type ArbiterSpec added in v0.38.0

type ArbiterSpec struct {
	// Compute Resources required by the sidecar container.
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`
	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
	// +optional
	// +mapType=atomic
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []core.Toleration `json:"tolerations,omitempty"`
}

func (*ArbiterSpec) DeepCopy added in v0.38.0

func (in *ArbiterSpec) DeepCopy() *ArbiterSpec

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

func (*ArbiterSpec) DeepCopyInto added in v0.38.0

func (in *ArbiterSpec) DeepCopyInto(out *ArbiterSpec)

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

type Archiver added in v0.38.0

type Archiver struct {
	// Pause is used to stop the archiver backup for the database
	// +optional
	Pause bool `json:"pause,omitempty"`
	// Ref is the name and namespace reference to the Archiver CR
	Ref kmapi.ObjectReference `json:"ref"`
}

func (*Archiver) DeepCopy added in v0.38.0

func (in *Archiver) DeepCopy() *Archiver

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

func (*Archiver) DeepCopyInto added in v0.38.0

func (in *Archiver) DeepCopyInto(out *Archiver)

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

type ArchiverRecovery added in v0.38.0

type ArchiverRecovery struct {
	RecoveryTimestamp metav1.Time `json:"recoveryTimestamp"`
	// +optional
	EncryptionSecret *kmapi.ObjectReference `json:"encryptionSecret,omitempty"`
	// +optional
	ManifestRepository *kmapi.ObjectReference `json:"manifestRepository,omitempty"`

	// FullDBRepository means db restore + manifest restore
	FullDBRepository *kmapi.ObjectReference `json:"fullDBRepository,omitempty"`
}

func (*ArchiverRecovery) DeepCopy added in v0.38.0

func (in *ArchiverRecovery) DeepCopy() *ArchiverRecovery

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

func (*ArchiverRecovery) DeepCopyInto added in v0.38.0

func (in *ArchiverRecovery) DeepCopyInto(out *ArchiverRecovery)

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

type AutoOpsSpec added in v0.28.0

type AutoOpsSpec struct {
	// Disabled specifies whether the ops-request recommendation generation will be disabled or not.
	// +optional
	Disabled bool `json:"disabled,omitempty"`
}

AutoOpsSpec defines the specifications of automatic ops-request recommendation generation

func (*AutoOpsSpec) DeepCopy added in v0.28.0

func (in *AutoOpsSpec) DeepCopy() *AutoOpsSpec

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

func (*AutoOpsSpec) DeepCopyInto added in v0.28.0

func (in *AutoOpsSpec) DeepCopyInto(out *AutoOpsSpec)

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

type ClickHouse added in v0.46.0

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

	Spec   ClickHouseSpec   `json:"spec,omitempty"`
	Status ClickHouseStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=ch,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*ClickHouse) AppBindingMeta added in v0.46.0

func (c *ClickHouse) AppBindingMeta() appcat.AppBindingMeta

func (*ClickHouse) ClusterGoverningServiceDNS added in v0.46.0

func (c *ClickHouse) ClusterGoverningServiceDNS(petSetName string, replicaNo int) string

func (*ClickHouse) ClusterGoverningServiceName added in v0.46.0

func (c *ClickHouse) ClusterGoverningServiceName(name string) string

func (*ClickHouse) ClusterPodLabels added in v0.46.0

func (c *ClickHouse) ClusterPodLabels(petSetName string, labels map[string]string, extraLabels ...map[string]string) map[string]string

func (*ClickHouse) ConfigSecretName added in v0.46.0

func (r *ClickHouse) ConfigSecretName() string

func (*ClickHouse) CustomResourceDefinition added in v0.46.0

func (r *ClickHouse) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ClickHouse) DeepCopy added in v0.46.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.46.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.46.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.46.0

func (r *ClickHouse) Default()

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

func (*ClickHouse) DefaultUserCredSecretName added in v0.46.0

func (c *ClickHouse) DefaultUserCredSecretName(username string) string

func (*ClickHouse) Finalizer added in v0.46.0

func (c *ClickHouse) Finalizer() string

func (*ClickHouse) GetAuthSecretName added in v0.46.0

func (c *ClickHouse) GetAuthSecretName() string

func (*ClickHouse) GetConnectionScheme added in v0.46.0

func (c *ClickHouse) GetConnectionScheme() string

func (*ClickHouse) GoverningServiceName added in v0.46.0

func (c *ClickHouse) GoverningServiceName() string

func (*ClickHouse) OffshootClusterLabels added in v0.46.0

func (c *ClickHouse) OffshootClusterLabels(petSetName string) map[string]string

func (*ClickHouse) OffshootClusterName added in v0.46.0

func (c *ClickHouse) OffshootClusterName(value string) string

func (*ClickHouse) OffshootClusterPetSetName added in v0.46.0

func (c *ClickHouse) OffshootClusterPetSetName(clusterName string, shardNo int) string

func (*ClickHouse) OffshootClusterSelectors added in v0.46.0

func (c *ClickHouse) OffshootClusterSelectors(petSetName string, extraSelectors ...map[string]string) map[string]string

func (*ClickHouse) OffshootLabels added in v0.46.0

func (c *ClickHouse) OffshootLabels() map[string]string

func (*ClickHouse) OffshootName added in v0.46.0

func (c *ClickHouse) OffshootName() string

func (*ClickHouse) OffshootSelectors added in v0.46.0

func (c *ClickHouse) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*ClickHouse) Owner added in v0.46.0

func (c *ClickHouse) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*ClickHouse) PVCName added in v0.46.0

func (c *ClickHouse) PVCName(alias string) string

func (*ClickHouse) PetSetName added in v0.46.0

func (c *ClickHouse) PetSetName() string

func (*ClickHouse) PodLabels added in v0.46.0

func (c *ClickHouse) PodLabels(extraLabels ...map[string]string) map[string]string

func (*ClickHouse) PrimaryServiceDNS added in v0.46.0

func (c *ClickHouse) PrimaryServiceDNS() string

func (*ClickHouse) ReplicasAreReady added in v0.47.0

func (c *ClickHouse) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*ClickHouse) ResourceFQN added in v0.46.0

func (c *ClickHouse) ResourceFQN() string

func (*ClickHouse) ResourceKind added in v0.46.0

func (c *ClickHouse) ResourceKind() string

func (*ClickHouse) ResourcePlural added in v0.46.0

func (c *ClickHouse) ResourcePlural() string

func (*ClickHouse) ResourceSingular added in v0.46.0

func (c *ClickHouse) ResourceSingular() string

func (*ClickHouse) ServiceName added in v0.46.0

func (c *ClickHouse) ServiceName() string

func (*ClickHouse) SetDefaults added in v0.46.0

func (c *ClickHouse) SetDefaults()

func (*ClickHouse) SetHealthCheckerDefaults added in v0.46.0

func (c *ClickHouse) SetHealthCheckerDefaults()

func (*ClickHouse) ValidateCreate added in v0.46.0

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

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

func (*ClickHouse) ValidateCreateOrUpdate added in v0.46.0

func (r *ClickHouse) ValidateCreateOrUpdate() error

func (*ClickHouse) ValidateDelete added in v0.46.0

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

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

func (*ClickHouse) ValidateUpdate added in v0.46.0

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

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

func (*ClickHouse) ValidateVersion added in v0.46.0

func (r *ClickHouse) ValidateVersion(db *ClickHouse) error

type ClickHouseKeeperConfig added in v0.46.0

type ClickHouseKeeperConfig struct {
	Node ClickHouseKeeperNode `json:"node,omitempty"`
}

func (*ClickHouseKeeperConfig) DeepCopy added in v0.46.0

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

func (*ClickHouseKeeperConfig) DeepCopyInto added in v0.46.0

func (in *ClickHouseKeeperConfig) DeepCopyInto(out *ClickHouseKeeperConfig)

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

type ClickHouseKeeperNode added in v0.46.0

type ClickHouseKeeperNode struct {
	Host string `json:"host,omitempty"`

	// +optional
	Port int32 `json:"port,omitempty"`
}

ClickHouseKeeperNode defines item of nodes section of .spec.clusterTopology.

func (*ClickHouseKeeperNode) DeepCopy added in v0.46.0

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

func (*ClickHouseKeeperNode) DeepCopyInto added in v0.46.0

func (in *ClickHouseKeeperNode) DeepCopyInto(out *ClickHouseKeeperNode)

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

type ClickHouseList added in v0.46.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.46.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.46.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.46.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.46.0

type ClickHouseSpec struct {
	// Version of ClickHouse to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a ClickHouse database.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Cluster
	// +optional
	ClusterTopology *ClusterTopology `json:"clusterTopology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// disable security. It disables authentication security of user.
	// If unset, default is false
	// +optional
	DisableSecurity bool `json:"disableSecurity,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 20, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

ClickHouseSpec defines the desired state of ClickHouse

func (*ClickHouseSpec) DeepCopy added in v0.46.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.46.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 ClickHouseStatus added in v0.46.0

type ClickHouseStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

ClickHouseStatus defines the observed state of ClickHouse

func (*ClickHouseStatus) DeepCopy added in v0.46.0

func (in *ClickHouseStatus) DeepCopy() *ClickHouseStatus

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

func (*ClickHouseStatus) DeepCopyInto added in v0.46.0

func (in *ClickHouseStatus) DeepCopyInto(out *ClickHouseStatus)

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

type ClickhouseApp added in v0.46.0

type ClickhouseApp struct {
	*ClickHouse
}

func (*ClickhouseApp) DeepCopy added in v0.46.0

func (in *ClickhouseApp) DeepCopy() *ClickhouseApp

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

func (*ClickhouseApp) DeepCopyInto added in v0.46.0

func (in *ClickhouseApp) DeepCopyInto(out *ClickhouseApp)

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

func (ClickhouseApp) Name added in v0.46.0

func (r ClickhouseApp) Name() string

func (ClickhouseApp) Type added in v0.46.0

func (r ClickhouseApp) Type() appcat.AppType

type ClusterAuthMode

type ClusterAuthMode string

ClusterAuthMode represents the clusterAuthMode of mongodb clusters ( replicaset or sharding) ref: https://docs.mongodb.com/manual/reference/program/mongod/#cmdoption-mongod-clusterauthmode +kubebuilder:validation:Enum=keyFile;sendKeyFile;sendX509;x509

const (
	// ClusterAuthModeKeyFile represents `keyFile` mongodb clusterAuthMode. In this mode, Use a keyfile for authentication. Accept only keyfiles.
	ClusterAuthModeKeyFile ClusterAuthMode = "keyFile"

	// ClusterAuthModeSendKeyFile represents `sendKeyFile` mongodb clusterAuthMode.
	// This mode is for rolling upgrade purposes. Send a keyfile for authentication but can accept both keyfiles
	// and x.509 certificates.
	ClusterAuthModeSendKeyFile ClusterAuthMode = "sendKeyFile"

	// ClusterAuthModeSendX509 represents `sendx509` mongodb clusterAuthMode. This mode is usually for rolling upgrade purposes.
	// Send the x.509 certificate for authentication but can accept both keyfiles and x.509 certificates.
	ClusterAuthModeSendX509 ClusterAuthMode = "sendX509"

	// ClusterAuthModeX509 represents `x509` mongodb clusterAuthMode. This is the recommended clusterAuthMode.
	// Send the x.509 certificate for authentication and accept only x.509 certificates.
	ClusterAuthModeX509 ClusterAuthMode = "x509"
)

type ClusterSpec added in v0.46.0

type ClusterSpec struct {
	// Cluster Name
	Name string `json:"name,omitempty"`
	// Number of replica for each shard to deploy for a cluster.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Number of shard to deploy for a cluster.
	// +optional
	Shards *int32 `json:"shards,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`
}

func (*ClusterSpec) DeepCopy added in v0.46.0

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto added in v0.46.0

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterTopology added in v0.46.0

type ClusterTopology struct {
	// Clickhouse Cluster Structure
	Cluster []ClusterSpec `json:"cluster,omitempty"`

	// ClickHouse Keeper server name
	ClickHouseKeeper *ClickHouseKeeperConfig `json:"clickHouseKeeper,omitempty"`
}

func (*ClusterTopology) DeepCopy added in v0.46.0

func (in *ClusterTopology) DeepCopy() *ClusterTopology

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

func (*ClusterTopology) DeepCopyInto added in v0.46.0

func (in *ClusterTopology) DeepCopyInto(out *ClusterTopology)

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

type ConnectionPoolConfig

type ConnectionPoolConfig struct {
	// Port is the port number on which PgBouncer listens to clients. Default: 5432.
	// +kubebuilder:default=5432
	// +optional
	Port *int32 `json:"port,omitempty"`
	// PoolMode is the pooling mechanism type. Default: session.
	// +kubebuilder:default="session"
	// +optional
	PoolMode string `json:"poolMode,omitempty"`
	// MaxClientConnections is the maximum number of allowed client connections. Default: 100.
	// +kubebuilder:default=100
	// +optional
	MaxClientConnections *int64 `json:"maxClientConnections,omitempty"`
	// DefaultPoolSize specifies how many server connections to allow per user/database pair. Default: 20.
	// +kubebuilder:default=20
	// +optional
	DefaultPoolSize *int64 `json:"defaultPoolSize,omitempty"`
	// MinPoolSize is used to add more server connections to pool if below this number. Default: 0 (disabled).
	// +kubebuilder:default=0
	// +optional
	MinPoolSize *int64 `json:"minPoolSize,omitempty"`
	// ReservePoolSize specifies how many additional connections to allow to a pool. 0 disables. Default: 0 (disabled).
	// +kubebuilder:default=0
	// +optional
	ReservePoolSize *int64 `json:"reservePoolSize,omitempty"`
	// ReservePoolTimeoutSeconds is the number of seconds in which if a client has not been serviced,
	// pgbouncer enables use of additional connections from reserve pool. 0 disables. Default: 5.0.
	// +kubebuilder:default=5
	// +optional
	ReservePoolTimeoutSeconds *int64 `json:"reservePoolTimeoutSeconds,omitempty"`
	// MaxDBConnections is the maximum number of connections allowed per-database. Default: 0 (unlimited).
	// +kubebuilder:default=0
	// +optional
	MaxDBConnections *int64 `json:"maxDBConnections,omitempty"`
	// MaxUserConnections is the maximum number of users allowed per-database. Default: 0 (unlimited).
	// +kubebuilder:default=0
	// +optional
	MaxUserConnections *int64 `json:"maxUserConnections,omitempty"`
	// StatsPeriodSeconds sets how often the averages shown in various SHOW commands are updated
	// and how often aggregated statistics are written to the log. Default: 60
	// +kubebuilder:default=60
	// +optional
	StatsPeriodSeconds *int64 `json:"statsPeriodSeconds,omitempty"`
	// AuthType specifies how to authenticate users. Default: md5 (md5+plain text).
	// +kubebuilder:default=md5
	// +optional
	AuthType PgBouncerClientAuthMode `json:"authType,omitempty"`
	// IgnoreStartupParameters specifies comma-separated startup parameters that
	// pgbouncer knows are handled by admin and it can ignore them. Default: empty
	// +kubebuilder:default="empty"
	// +optional
	IgnoreStartupParameters string `json:"ignoreStartupParameters,omitempty"`
}

func (*ConnectionPoolConfig) DeepCopy

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

func (*ConnectionPoolConfig) DeepCopyInto

func (in *ConnectionPoolConfig) DeepCopyInto(out *ConnectionPoolConfig)

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

type ConsumerNamespaces added in v0.25.0

type ConsumerNamespaces struct {
	// From indicates where Consumers will be selected for the database instance. Possible
	// values are:
	// * All: Consumers in all namespaces.
	// * Selector: Consumers in namespaces selected by the selector
	// * Same: Only Consumers in the same namespace
	//
	// +optional
	// +kubebuilder:default=Same
	From *FromNamespaces `json:"from,omitempty"`

	// Selector must be specified when From is set to "Selector". In that case,
	// only Consumers in Namespaces matching this Selector will be selected by the
	// database instance. This field is ignored for other values of "From".
	//
	// +optional
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
}

ConsumerNamespaces indicate which namespaces Consumers should be selected from.

func (*ConsumerNamespaces) DeepCopy added in v0.25.0

func (in *ConsumerNamespaces) DeepCopy() *ConsumerNamespaces

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

func (*ConsumerNamespaces) DeepCopyInto added in v0.25.0

func (in *ConsumerNamespaces) DeepCopyInto(out *ConsumerNamespaces)

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

type CoordinatorSpec added in v0.21.0

type CoordinatorSpec struct {
	// Compute Resources required by coordinator container.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`

	// Security options the coordinator container should run with.
	// More info: https://kubernetes.io/docs/concepts/policy/security-context/
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
	// +optional
	SecurityContext *core.SecurityContext `json:"securityContext,omitempty"`
}

CoordinatorSpec defines attributes of the coordinator container

func (*CoordinatorSpec) DeepCopy added in v0.21.0

func (in *CoordinatorSpec) DeepCopy() *CoordinatorSpec

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

func (*CoordinatorSpec) DeepCopyInto added in v0.21.0

func (in *CoordinatorSpec) DeepCopyInto(out *CoordinatorSpec)

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

type Database added in v0.46.0

type Database struct {
	// SyncUsers is a boolean type and when enabled, operator fetches users of backend server from externally managed
	// secrets to the PgBouncer server. Secrets updation or deletion are also synced in pgBouncer when it is enabled.
	// +optional
	SyncUsers bool `json:"syncUsers,omitempty"`

	// DatabaseRef specifies the database appbinding reference in any namespace.
	DatabaseRef appcat.AppReference `json:"databaseRef"`

	// DatabaseName is the name of the target database inside a Postgres instance.
	DatabaseName string `json:"databaseName"`
}

func (*Database) DeepCopy added in v0.46.0

func (in *Database) DeepCopy() *Database

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

func (*Database) DeepCopyInto added in v0.46.0

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

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

type DatabasePhase

type DatabasePhase string

+kubebuilder:validation:Enum=Provisioning;DataRestoring;Ready;Critical;NotReady;Halted;Unknown

const (
	// used for Databases that are currently provisioning
	DatabasePhaseProvisioning DatabasePhase = "Provisioning"
	// used for Databases for which data is currently restoring
	DatabasePhaseDataRestoring DatabasePhase = "DataRestoring"
	// used for Databases that are currently ReplicaReady, AcceptingConnection and Ready
	DatabasePhaseReady DatabasePhase = "Ready"
	// used for Databases that can connect, ReplicaReady == false || Ready == false (eg, ES yellow)
	DatabasePhaseCritical DatabasePhase = "Critical"
	// used for Databases that can't connect
	DatabasePhaseNotReady DatabasePhase = "NotReady"
	// used for Databases that are halted
	DatabasePhaseHalted DatabasePhase = "Halted"
	// used for Databases for which Phase can't be calculated
	DatabasePhaseUnknown DatabasePhase = "Unknown"
)

type DeepStorageSpec added in v0.41.0

type DeepStorageSpec struct {
	// Specifies the storage type to be used by druid
	// Possible values: s3, google, azure, hdfs
	Type DruidDeepStorageType `json:"type"`

	// deepStorage.configSecret should contain the necessary data
	// to connect to the deep storage
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`
}

func (*DeepStorageSpec) DeepCopy added in v0.41.0

func (in *DeepStorageSpec) DeepCopy() *DeepStorageSpec

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

func (*DeepStorageSpec) DeepCopyInto added in v0.41.0

func (in *DeepStorageSpec) DeepCopyInto(out *DeepStorageSpec)

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

type Druid added in v0.41.0

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

	Spec   DruidSpec   `json:"spec,omitempty"`
	Status DruidStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=dr,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Druid) AddDruidExtensionLoadList added in v0.41.0

func (d *Druid) AddDruidExtensionLoadList(druidExtensionLoadList string, extension string) string

func (*Druid) AppBindingMeta added in v0.41.0

func (d *Druid) AppBindingMeta() appcat.AppBindingMeta

func (*Druid) BrokersServiceName added in v0.41.0

func (d *Druid) BrokersServiceName() string

func (*Druid) ConfigSecretName added in v0.41.0

func (d *Druid) ConfigSecretName() string

func (*Druid) CoordinatorsServiceName added in v0.41.0

func (d *Druid) CoordinatorsServiceName() string

func (*Druid) CustomResourceDefinition added in v0.41.0

func (d *Druid) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Druid) DeepCopy added in v0.41.0

func (in *Druid) DeepCopy() *Druid

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

func (*Druid) DeepCopyInto added in v0.41.0

func (in *Druid) DeepCopyInto(out *Druid)

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

func (*Druid) DeepCopyObject added in v0.41.0

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

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

func (*Druid) Default added in v0.41.0

func (d *Druid) Default()

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

func (*Druid) DefaultUserCredSecretName added in v0.41.0

func (d *Druid) DefaultUserCredSecretName(username string) string

func (*Druid) DruidNodeContainerPort added in v0.41.0

func (d *Druid) DruidNodeContainerPort(nodeRole DruidNodeRoleType) int32

func (*Druid) DruidNodeRoleString added in v0.41.0

func (d *Druid) DruidNodeRoleString(nodeRole DruidNodeRoleType) string

func (*Druid) DruidNodeRoleStringSingular added in v0.41.0

func (d *Druid) DruidNodeRoleStringSingular(nodeRole DruidNodeRoleType) string

func (*Druid) Finalizer added in v0.44.0

func (r *Druid) Finalizer() string

func (*Druid) GetAppBinding added in v0.47.0

func (d *Druid) GetAppBinding(name string, namespace string) (*appcat.AppBinding, error)

func (*Druid) GetConnectionScheme added in v0.41.0

func (d *Druid) GetConnectionScheme() string

func (*Druid) GetDefaultPVC added in v0.47.0

func (d *Druid) GetDefaultPVC() *core.PersistentVolumeClaimSpec

func (*Druid) GetDruidSegmentCacheConfig added in v0.41.0

func (d *Druid) GetDruidSegmentCacheConfig() string

func (*Druid) GetDruidStorageSize added in v0.41.0

func (d *Druid) GetDruidStorageSize(storageSize string) string

func (*Druid) GetInitConfigMapName added in v0.47.0

func (d *Druid) GetInitConfigMapName() string

func (*Druid) GetMetadataStorageConnectURI added in v0.41.0

func (d *Druid) GetMetadataStorageConnectURI(appbinding *appcat.AppBinding, metadataStorageType DruidMetadataStorageType) string

func (*Druid) GetMetadataStorageName added in v0.47.0

func (d *Druid) GetMetadataStorageName() string

func (*Druid) GetMetadataStorageType added in v0.41.0

func (d *Druid) GetMetadataStorageType(metadataStorage string) DruidMetadataStorageType

func (*Druid) GetNodeSpec added in v0.46.0

func (d *Druid) GetNodeSpec(nodeType DruidNodeRoleType) (*DruidNode, *DruidDataNode)

func (*Druid) GetPersistentSecrets added in v0.41.0

func (d *Druid) GetPersistentSecrets() []string

func (*Druid) GetZKServiceHost added in v0.41.0

func (d *Druid) GetZKServiceHost(appbinding *appcat.AppBinding) string

func (*Druid) GetZooKeeperName added in v0.47.0

func (d *Druid) GetZooKeeperName() string

func (*Druid) GoverningServiceName added in v0.41.0

func (d *Druid) GoverningServiceName() string

func (*Druid) OffShootLabels added in v0.41.0

func (d *Druid) OffShootLabels() map[string]string

func (*Druid) OffShootName added in v0.41.0

func (d *Druid) OffShootName() string

func (*Druid) OffShootSelectors added in v0.41.0

func (d *Druid) OffShootSelectors(extraSelectors ...map[string]string) map[string]string

func (Druid) OffshootLabels added in v0.41.0

func (d Druid) OffshootLabels() map[string]string

func (*Druid) OffshootSelectors added in v0.41.0

func (d *Druid) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*Druid) OverlordsServiceName added in v0.41.0

func (d *Druid) OverlordsServiceName() string

func (*Druid) Owner added in v0.41.0

func (d *Druid) Owner() *meta.OwnerReference

func (*Druid) PVCName added in v0.41.0

func (d *Druid) PVCName(alias string) string

func (*Druid) PetSetName added in v0.44.0

func (d *Druid) PetSetName(nodeRole DruidNodeRoleType) string

func (*Druid) PodControllerLabels added in v0.41.0

func (d *Druid) PodControllerLabels(nodeType DruidNodeRoleType, extraLabels ...map[string]string) map[string]string

func (*Druid) PodLabels added in v0.41.0

func (d *Druid) PodLabels(nodeType DruidNodeRoleType, extraLabels ...map[string]string) map[string]string

func (*Druid) ReplicasAreReady added in v0.41.0

func (d *Druid) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*Druid) ResourceFQN added in v0.41.0

func (d *Druid) ResourceFQN() string

func (*Druid) ResourceKind added in v0.41.0

func (d *Druid) ResourceKind() string

func (*Druid) ResourcePlural added in v0.41.0

func (d *Druid) ResourcePlural() string

func (*Druid) ResourceSingular added in v0.41.0

func (d *Druid) ResourceSingular() string

func (*Druid) RoutersServiceName added in v0.41.0

func (d *Druid) RoutersServiceName() string

func (*Druid) ServiceAccountName added in v0.41.0

func (d *Druid) ServiceAccountName() string

func (*Druid) ServiceLabels added in v0.41.0

func (d *Druid) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Druid) ServiceName added in v0.41.0

func (d *Druid) ServiceName() string

func (*Druid) SetDefaults added in v0.41.0

func (d *Druid) SetDefaults()

func (*Druid) SetDefaultsToMetadataStorage added in v0.47.0

func (d *Druid) SetDefaultsToMetadataStorage()

func (*Druid) SetDefaultsToZooKeeperRef added in v0.47.0

func (d *Druid) SetDefaultsToZooKeeperRef()

func (*Druid) SetHealthCheckerDefaults added in v0.41.0

func (d *Druid) SetHealthCheckerDefaults()

func (*Druid) SetMetadataStorageObjectRef added in v0.47.0

func (d *Druid) SetMetadataStorageObjectRef()

func (*Druid) SetZooKeeperObjectRef added in v0.47.0

func (d *Druid) SetZooKeeperObjectRef()

func (*Druid) StatsService added in v0.44.0

func (d *Druid) StatsService() mona.StatsAccessor

func (*Druid) StatsServiceLabels added in v0.44.0

func (d *Druid) StatsServiceLabels() map[string]string

func (*Druid) ValidateCreate added in v0.41.0

func (d *Druid) ValidateCreate() (admission.Warnings, error)

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

func (*Druid) ValidateDelete added in v0.41.0

func (d *Druid) ValidateDelete() (admission.Warnings, error)

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

func (*Druid) ValidateUpdate added in v0.41.0

func (d *Druid) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type DruidApp added in v0.41.0

type DruidApp struct {
	*Druid
}

func (*DruidApp) DeepCopy added in v0.41.0

func (in *DruidApp) DeepCopy() *DruidApp

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

func (*DruidApp) DeepCopyInto added in v0.41.0

func (in *DruidApp) DeepCopyInto(out *DruidApp)

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

func (DruidApp) Name added in v0.41.0

func (d DruidApp) Name() string

func (DruidApp) Type added in v0.41.0

func (d DruidApp) Type() appcat.AppType

type DruidClusterTopology added in v0.41.0

type DruidClusterTopology struct {
	Coordinators *DruidNode `json:"coordinators,omitempty"`
	// +optional
	Overlords *DruidNode `json:"overlords,omitempty"`

	MiddleManagers *DruidDataNode `json:"middleManagers,omitempty"`

	Historicals *DruidDataNode `json:"historicals,omitempty"`

	Brokers *DruidNode `json:"brokers,omitempty"`
	// +optional
	Routers *DruidNode `json:"routers,omitempty"`
}

func (*DruidClusterTopology) DeepCopy added in v0.41.0

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

func (*DruidClusterTopology) DeepCopyInto added in v0.41.0

func (in *DruidClusterTopology) DeepCopyInto(out *DruidClusterTopology)

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

type DruidDataNode added in v0.46.0

type DruidDataNode struct {
	// DruidDataNode has all the characteristics of DruidNode
	DruidNode `json:",inline"`

	// StorageType specifies if the storage
	// of this node is durable (default) or ephemeral.
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// EphemeralStorage spec to specify the configuration of ephemeral storage type.
	EphemeralStorage *core.EmptyDirVolumeSource `json:"ephemeralStorage,omitempty"`
}

func (*DruidDataNode) DeepCopy added in v0.46.0

func (in *DruidDataNode) DeepCopy() *DruidDataNode

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

func (*DruidDataNode) DeepCopyInto added in v0.46.0

func (in *DruidDataNode) DeepCopyInto(out *DruidDataNode)

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

type DruidDeepStorageType added in v0.41.0

type DruidDeepStorageType string

+kubebuilder:validation:Enum=s3;google;azure;hdfs

const (
	DruidDeepStorageS3     DruidDeepStorageType = "s3"
	DruidDeepStorageGoogle DruidDeepStorageType = "google"
	DruidDeepStorageAzure  DruidDeepStorageType = "azure"
	DruidDeepStorageHDFS   DruidDeepStorageType = "hdfs"
)

type DruidList added in v0.41.0

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

DruidList contains a list of Druid

func (*DruidList) DeepCopy added in v0.41.0

func (in *DruidList) DeepCopy() *DruidList

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

func (*DruidList) DeepCopyInto added in v0.41.0

func (in *DruidList) DeepCopyInto(out *DruidList)

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

func (*DruidList) DeepCopyObject added in v0.41.0

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

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

type DruidMetadataStorageType added in v0.41.0

type DruidMetadataStorageType string

+kubebuilder:validation:Enum=MySQL;PostgreSQL

const (
	DruidMetadataStorageMySQL      DruidMetadataStorageType = "MySQL"
	DruidMetadataStoragePostgreSQL DruidMetadataStorageType = "PostgreSQL"
)

type DruidNode added in v0.41.0

type DruidNode struct {
	// Replicas represents number of replicas for the specific type of node
	// +kubebuilder:default=1
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Suffix to append with node name
	// +optional
	Suffix string `json:"suffix,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*DruidNode) DeepCopy added in v0.41.0

func (in *DruidNode) DeepCopy() *DruidNode

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

func (*DruidNode) DeepCopyInto added in v0.41.0

func (in *DruidNode) DeepCopyInto(out *DruidNode)

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

type DruidNodeRoleType added in v0.41.0

type DruidNodeRoleType string

+kubebuilder:validation:Enum=coordinators;overlords;brokers;routers;middleManagers;historicals

const (
	DruidNodeRoleCoordinators   DruidNodeRoleType = "coordinators"
	DruidNodeRoleOverlords      DruidNodeRoleType = "overlords"
	DruidNodeRoleBrokers        DruidNodeRoleType = "brokers"
	DruidNodeRoleRouters        DruidNodeRoleType = "routers"
	DruidNodeRoleMiddleManagers DruidNodeRoleType = "middleManagers"
	DruidNodeRoleHistoricals    DruidNodeRoleType = "historicals"
)

type DruidPhase added in v0.41.0

type DruidPhase string

+kubebuilder:validation:Enum=Provisioning;Ready;NotReady;Critical

const (
	DruidPhaseProvisioning DruidPhase = "Provisioning"
	DruidPhaseReady        DruidPhase = "Ready"
	DruidPhaseNotReady     DruidPhase = "NotReady"
	DruidPhaseCritical     DruidPhase = "Critical"
)

type DruidSpec added in v0.41.0

type DruidSpec struct {
	// Version of Druid to be deployed.
	Version string `json:"version"`

	// Druid topology for node specification
	// +optional
	Topology *DruidClusterTopology `json:"topology,omitempty"`

	// disable security. It disables authentication security of user.
	// If unset, default is false
	// +optional
	DisableSecurity *bool `json:"disableSecurity,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *core.LocalObjectReference `json:"authSecret,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e. config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// MetadataStorage contains information for Druid to connect to external dependency metadata storage
	// +optional
	MetadataStorage *MetadataStorage `json:"metadataStorage,omitempty"`

	// DeepStorage contains specification for druid to connect to the deep storage
	DeepStorage *DeepStorageSpec `json:"deepStorage"`

	// ZooKeeper contains information for Druid to connect to external dependency metadata storage
	// +optional
	ZookeeperRef *ZookeeperRef `json:"zookeeperRef,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 30, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

DruidSpec defines the desired state of Druid

func (*DruidSpec) DeepCopy added in v0.41.0

func (in *DruidSpec) DeepCopy() *DruidSpec

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

func (*DruidSpec) DeepCopyInto added in v0.41.0

func (in *DruidSpec) DeepCopyInto(out *DruidSpec)

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

type DruidStatsService added in v0.44.0

type DruidStatsService struct {
	*Druid
}

func (*DruidStatsService) DeepCopy added in v0.44.0

func (in *DruidStatsService) DeepCopy() *DruidStatsService

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

func (*DruidStatsService) DeepCopyInto added in v0.44.0

func (in *DruidStatsService) DeepCopyInto(out *DruidStatsService)

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

func (DruidStatsService) GetNamespace added in v0.44.0

func (ks DruidStatsService) GetNamespace() string

func (DruidStatsService) Path added in v0.44.0

func (ks DruidStatsService) Path() string

func (DruidStatsService) Scheme added in v0.44.0

func (ks DruidStatsService) Scheme() string

func (DruidStatsService) ServiceMonitorAdditionalLabels added in v0.44.0

func (ks DruidStatsService) ServiceMonitorAdditionalLabels() map[string]string

func (DruidStatsService) ServiceMonitorName added in v0.44.0

func (ks DruidStatsService) ServiceMonitorName() string

func (DruidStatsService) ServiceName added in v0.44.0

func (ks DruidStatsService) ServiceName() string

func (DruidStatsService) TLSConfig added in v0.44.0

func (ks DruidStatsService) TLSConfig() *promapi.TLSConfig

type DruidStatus added in v0.41.0

type DruidStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DruidPhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

DruidStatus defines the observed state of Druid

func (*DruidStatus) DeepCopy added in v0.41.0

func (in *DruidStatus) DeepCopy() *DruidStatus

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

func (*DruidStatus) DeepCopyInto added in v0.41.0

func (in *DruidStatus) DeepCopyInto(out *DruidStatus)

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

type Elasticsearch

type Elasticsearch struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ElasticsearchSpec   `json:"spec,omitempty"`
	Status            ElasticsearchStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=elasticsearches,singular=elasticsearch,shortName=es,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (Elasticsearch) AppBindingMeta

func (e Elasticsearch) AppBindingMeta() appcat.AppBindingMeta

func (*Elasticsearch) AsOwner added in v0.35.0

func (e *Elasticsearch) AsOwner() *metav1.OwnerReference

func (*Elasticsearch) CertSecretVolumeMountPath

func (e *Elasticsearch) CertSecretVolumeMountPath(configDir string, alias ElasticsearchCertificateAlias) string

returns the mountPath for certificate secrets. if configDir is "/usr/share/elasticsearch/config", mountPath will be, "/usr/share/elasticsearch/config/certs/<alias>".

func (*Elasticsearch) CertSecretVolumeName

func (e *Elasticsearch) CertSecretVolumeName(alias ElasticsearchCertificateAlias) string

returns the volume name for certificate secret. Values will be like: transport-certs, http-certs etc.

func (*Elasticsearch) CertificateName

func (e *Elasticsearch) CertificateName(alias ElasticsearchCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*Elasticsearch) ClientCertificateCN

func (e *Elasticsearch) ClientCertificateCN(alias ElasticsearchCertificateAlias) string

ClientCertificateCN returns the CN for a client certificate

func (*Elasticsearch) CombinedStatefulSetName added in v0.15.2

func (e *Elasticsearch) CombinedStatefulSetName() string

func (*Elasticsearch) ConfigSecretName

func (e *Elasticsearch) ConfigSecretName() string

returns the secret name for the default elasticsearch configuration

func (*Elasticsearch) ConvertFrom added in v0.47.0

func (dst *Elasticsearch) ConvertFrom(srcRaw rtconv.Hub) error

func (*Elasticsearch) ConvertTo added in v0.47.0

func (src *Elasticsearch) ConvertTo(dstRaw rtconv.Hub) error

func (*Elasticsearch) CoordinatingStatefulSetName added in v0.19.0

func (e *Elasticsearch) CoordinatingStatefulSetName() string

func (Elasticsearch) CustomResourceDefinition

func (_ Elasticsearch) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Elasticsearch) DataColdStatefulSetName added in v0.19.0

func (e *Elasticsearch) DataColdStatefulSetName() string

func (*Elasticsearch) DataContentStatefulSetName added in v0.19.0

func (e *Elasticsearch) DataContentStatefulSetName() string

func (*Elasticsearch) DataFrozenStatefulSetName added in v0.19.0

func (e *Elasticsearch) DataFrozenStatefulSetName() string

func (*Elasticsearch) DataHotStatefulSetName added in v0.19.0

func (e *Elasticsearch) DataHotStatefulSetName() string

func (Elasticsearch) DataSelectors added in v0.16.0

func (e Elasticsearch) DataSelectors() map[string]string

func (*Elasticsearch) DataStatefulSetName added in v0.15.2

func (e *Elasticsearch) DataStatefulSetName() string

func (*Elasticsearch) DataWarmStatefulSetName added in v0.19.0

func (e *Elasticsearch) DataWarmStatefulSetName() string

func (*Elasticsearch) DeepCopy

func (in *Elasticsearch) DeepCopy() *Elasticsearch

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

func (*Elasticsearch) DeepCopyInto

func (in *Elasticsearch) DeepCopyInto(out *Elasticsearch)

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

func (*Elasticsearch) DeepCopyObject

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

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

func (*Elasticsearch) DefaultUserCredSecretName added in v0.17.1

func (e *Elasticsearch) DefaultUserCredSecretName(userName string) string

returns the default secret name for the user credentials (ie. username, password) If username contains underscore (_), it will be replaced by hyphen (‐) for the Kubernetes naming convention.

func (Elasticsearch) GetAuthSecretName added in v0.29.0

func (e Elasticsearch) GetAuthSecretName() string

func (*Elasticsearch) GetCertSecretName added in v0.18.0

func (e *Elasticsearch) GetCertSecretName(alias ElasticsearchCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (*Elasticsearch) GetConnectionScheme

func (e *Elasticsearch) GetConnectionScheme() string

func (*Elasticsearch) GetConnectionURL

func (e *Elasticsearch) GetConnectionURL() string

func (*Elasticsearch) GetMatchExpressions

func (e *Elasticsearch) GetMatchExpressions() []metav1.LabelSelectorRequirement

func (*Elasticsearch) GetPersistentSecrets

func (e *Elasticsearch) GetPersistentSecrets() []string

func (*Elasticsearch) GetUserCredSecretName added in v0.17.1

func (e *Elasticsearch) GetUserCredSecretName(username string) (string, error)

Return the secret name for the given user. Return error, if the secret name is missing.

func (Elasticsearch) GoverningServiceName

func (e Elasticsearch) GoverningServiceName() string

func (Elasticsearch) IngestSelectors added in v0.16.0

func (e Elasticsearch) IngestSelectors() map[string]string

func (*Elasticsearch) IngestStatefulSetName added in v0.15.2

func (e *Elasticsearch) IngestStatefulSetName() string

func (*Elasticsearch) InitialMasterNodes added in v0.17.0

func (e *Elasticsearch) InitialMasterNodes() []string

func (*Elasticsearch) MLStatefulSetName added in v0.19.0

func (e *Elasticsearch) MLStatefulSetName() string

func (*Elasticsearch) MasterDiscoveryServiceName added in v0.15.0

func (e *Elasticsearch) MasterDiscoveryServiceName() string

func (Elasticsearch) MasterSelectors added in v0.16.0

func (e Elasticsearch) MasterSelectors() map[string]string

func (*Elasticsearch) MasterStatefulSetName added in v0.15.2

func (e *Elasticsearch) MasterStatefulSetName() string

func (Elasticsearch) NodeRoleSpecificLabelKey added in v0.19.0

func (e Elasticsearch) NodeRoleSpecificLabelKey(roleType ElasticsearchNodeRoleType) string

func (Elasticsearch) NodeRoleSpecificSelectors added in v0.19.0

func (e Elasticsearch) NodeRoleSpecificSelectors(roleType ElasticsearchNodeRoleType) map[string]string

func (Elasticsearch) OffshootLabels

func (e Elasticsearch) OffshootLabels() map[string]string

func (Elasticsearch) OffshootName

func (e Elasticsearch) OffshootName() string

func (Elasticsearch) OffshootSelectors

func (e Elasticsearch) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (Elasticsearch) PodControllerLabels added in v0.23.0

func (e Elasticsearch) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (Elasticsearch) PodLabels added in v0.23.0

func (e Elasticsearch) PodLabels(extraLabels ...map[string]string) map[string]string

func (*Elasticsearch) ReplicasAreReady

func (e *Elasticsearch) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (Elasticsearch) ResourceFQN added in v0.16.0

func (e Elasticsearch) ResourceFQN() string

func (Elasticsearch) ResourceKind

func (e Elasticsearch) ResourceKind() string

func (Elasticsearch) ResourcePlural

func (e Elasticsearch) ResourcePlural() string

func (Elasticsearch) ResourceShortCode

func (e Elasticsearch) ResourceShortCode() string

func (Elasticsearch) ResourceSingular

func (e Elasticsearch) ResourceSingular() string

func (Elasticsearch) ServiceLabels added in v0.23.0

func (e Elasticsearch) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (Elasticsearch) ServiceName

func (e Elasticsearch) ServiceName() string

func (*Elasticsearch) SetDefaults

func (e *Elasticsearch) SetDefaults(esVersion *catalog.ElasticsearchVersion, topology *core_util.Topology)

func (*Elasticsearch) SetHealthCheckerDefaults added in v0.28.0

func (e *Elasticsearch) SetHealthCheckerDefaults()

func (*Elasticsearch) SetMetricsExporterDefaults added in v0.38.0

func (e *Elasticsearch) SetMetricsExporterDefaults(esVersion *catalog.ElasticsearchVersion)

func (*Elasticsearch) SetTLSDefaults

func (e *Elasticsearch) SetTLSDefaults(esVersion *catalog.ElasticsearchVersion)

set default tls configuration (ie. alias, secretName)

func (Elasticsearch) StatsService

func (e Elasticsearch) StatsService() mona.StatsAccessor

func (Elasticsearch) StatsServiceLabels

func (e Elasticsearch) StatsServiceLabels() map[string]string

func (*Elasticsearch) TransformStatefulSetName added in v0.19.0

func (e *Elasticsearch) TransformStatefulSetName() string

type ElasticsearchCertificateAlias

type ElasticsearchCertificateAlias string

+kubebuilder:validation:Enum=ca;transport;http;admin;client;archiver;metrics-exporter

const (
	ElasticsearchCACert              ElasticsearchCertificateAlias = "ca"
	ElasticsearchTransportCert       ElasticsearchCertificateAlias = "transport"
	ElasticsearchHTTPCert            ElasticsearchCertificateAlias = "http"
	ElasticsearchAdminCert           ElasticsearchCertificateAlias = "admin"
	ElasticsearchClientCert          ElasticsearchCertificateAlias = "client"
	ElasticsearchArchiverCert        ElasticsearchCertificateAlias = "archiver"
	ElasticsearchMetricsExporterCert ElasticsearchCertificateAlias = "metrics-exporter"
)

type ElasticsearchClusterTopology

type ElasticsearchClusterTopology struct {
	Master       ElasticsearchNode  `json:"master"`
	Ingest       ElasticsearchNode  `json:"ingest"`
	Data         *ElasticsearchNode `json:"data,omitempty"`
	DataContent  *ElasticsearchNode `json:"dataContent,omitempty"`
	DataHot      *ElasticsearchNode `json:"dataHot,omitempty"`
	DataWarm     *ElasticsearchNode `json:"dataWarm,omitempty"`
	DataCold     *ElasticsearchNode `json:"dataCold,omitempty"`
	DataFrozen   *ElasticsearchNode `json:"dataFrozen,omitempty"`
	ML           *ElasticsearchNode `json:"ml,omitempty"`
	Transform    *ElasticsearchNode `json:"transform,omitempty"`
	Coordinating *ElasticsearchNode `json:"coordinating,omitempty"`
}

func (*ElasticsearchClusterTopology) DeepCopy

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

func (*ElasticsearchClusterTopology) DeepCopyInto

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

func (*ElasticsearchClusterTopology) ToMap added in v0.19.0

ToMap returns ClusterTopology in a Map

type ElasticsearchInternalUser

type ElasticsearchInternalUser string
const (
	ElasticsearchInternalUserElastic              ElasticsearchInternalUser = "elastic"
	ElasticsearchInternalUserAdmin                ElasticsearchInternalUser = "admin"
	ElasticsearchInternalUserKibanaserver         ElasticsearchInternalUser = "kibanaserver"
	ElasticsearchInternalUserKibanaSystem         ElasticsearchInternalUser = "kibana_system"
	ElasticsearchInternalUserLogstashSystem       ElasticsearchInternalUser = "logstash_system"
	ElasticsearchInternalUserBeatsSystem          ElasticsearchInternalUser = "beats_system"
	ElasticsearchInternalUserApmSystem            ElasticsearchInternalUser = "apm_system"
	ElasticsearchInternalUserRemoteMonitoringUser ElasticsearchInternalUser = "remote_monitoring_user"
	ElasticsearchInternalUserKibanaro             ElasticsearchInternalUser = "kibanaro"
	ElasticsearchInternalUserLogstash             ElasticsearchInternalUser = "logstash"
	ElasticsearchInternalUserReadall              ElasticsearchInternalUser = "readall"
	ElasticsearchInternalUserSnapshotrestore      ElasticsearchInternalUser = "snapshotrestore"
	ElasticsearchInternalUserMetricsExporter      ElasticsearchInternalUser = "metrics_exporter"
)

type ElasticsearchList

type ElasticsearchList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Elasticsearch CRD objects
	Items []Elasticsearch `json:"items,omitempty"`
}

func (*ElasticsearchList) DeepCopy

func (in *ElasticsearchList) DeepCopy() *ElasticsearchList

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

func (*ElasticsearchList) DeepCopyInto

func (in *ElasticsearchList) DeepCopyInto(out *ElasticsearchList)

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

func (*ElasticsearchList) DeepCopyObject

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

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

type ElasticsearchNode

type ElasticsearchNode struct {
	// Replicas represents number of replica for this specific type of node
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// +optional
	Suffix string `json:"suffix,omitempty"`
	// HeapSizePercentage specifies both the initial heap allocation (-Xms) percentage and the maximum heap allocation (-Xmx) percentage.
	// Node level values have higher precedence than global values.
	// +optional
	HeapSizePercentage *int32 `json:"heapSizePercentage,omitempty"`
	// Storage to specify how storage shall be used.
	// +optional
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`
	// Compute Resources required by the sidecar container.
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`
	// An eviction is allowed if at most "maxUnavailable" pods selected by
	// "selector" are unavailable after the eviction, i.e. even in absence of
	// the evicted pod. For example, one can prevent all voluntary evictions
	// by specifying 0. This is a mutually exclusive setting with "minAvailable".
	// +optional
	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`

	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
	// +optional
	// +mapType=atomic
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []core.Toleration `json:"tolerations,omitempty"`
}

func (*ElasticsearchNode) DeepCopy

func (in *ElasticsearchNode) DeepCopy() *ElasticsearchNode

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

func (*ElasticsearchNode) DeepCopyInto

func (in *ElasticsearchNode) DeepCopyInto(out *ElasticsearchNode)

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

type ElasticsearchNodeRoleType added in v0.19.0

type ElasticsearchNodeRoleType string
const (
	ElasticsearchNodeRoleTypeCombined            ElasticsearchNodeRoleType = "combined"
	ElasticsearchNodeRoleTypeMaster              ElasticsearchNodeRoleType = "master"
	ElasticsearchNodeRoleTypeData                ElasticsearchNodeRoleType = "data"
	ElasticsearchNodeRoleTypeDataContent         ElasticsearchNodeRoleType = "data-content"
	ElasticsearchNodeRoleTypeDataHot             ElasticsearchNodeRoleType = "data-hot"
	ElasticsearchNodeRoleTypeDataWarm            ElasticsearchNodeRoleType = "data-warm"
	ElasticsearchNodeRoleTypeDataCold            ElasticsearchNodeRoleType = "data-cold"
	ElasticsearchNodeRoleTypeDataFrozen          ElasticsearchNodeRoleType = "data-frozen"
	ElasticsearchNodeRoleTypeIngest              ElasticsearchNodeRoleType = "ingest"
	ElasticsearchNodeRoleTypeML                  ElasticsearchNodeRoleType = "ml"
	ElasticsearchNodeRoleTypeRemoteClusterClient ElasticsearchNodeRoleType = "remote-cluster-client"
	ElasticsearchNodeRoleTypeTransform           ElasticsearchNodeRoleType = "transform"
	ElasticsearchNodeRoleTypeCoordinating        ElasticsearchNodeRoleType = "coordinating"
)

type ElasticsearchRoleMapSpec

type ElasticsearchRoleMapSpec struct {
	// Specifies the reserved status.
	// Resources that have this set to true can’t be changed using the REST API or Kibana.
	// Default to "false".
	// +optional
	Reserved bool `json:"reserved,omitempty" yaml:"reserved,omitempty"`

	// Specifies the hidden status.
	// Resources that have this set to true are not returned by the REST API
	// and not visible in Kibana.
	// Default to "false".
	// +optional
	Hidden bool `json:"hidden,omitempty" yaml:"hidden,omitempty"`

	// Specifies a list of backend roles assigned to this role.
	// Backend roles can come from the internal user database,
	// LDAP groups, JSON web token claims or SAML assertions.
	// +optional
	BackendRoles []string `json:"backendRoles,omitempty" yaml:"backend_roles,omitempty"`

	// Specifies a list of hosts assigned to this role.
	// +optional
	Hosts []string `json:"hosts,omitempty" yaml:"hosts,omitempty"`

	// Specifies a list of users assigned to this role.
	// +optional
	Users []string `json:"users,omitempty" yaml:"users,omitempty"`

	// Specifies a list of backend roles (migrated from ES-version6) assigned to this role.
	AndBackendRoles []string `json:"andBackendRoles,omitempty" yaml:"and_backend_roles,omitempty"`
}

Specifies the role mapping structure. Both 'json' and 'yaml' tags are used in structure metadata. The `json` tags (camel case) are used while taking input from users. The `yaml` tags (snake case) are used by the operator to generate roles_mapping.yml file.

func (*ElasticsearchRoleMapSpec) DeepCopy

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

func (*ElasticsearchRoleMapSpec) DeepCopyInto

func (in *ElasticsearchRoleMapSpec) DeepCopyInto(out *ElasticsearchRoleMapSpec)

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

type ElasticsearchSpec

type ElasticsearchSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of Elasticsearch to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Elasticsearch database.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Elasticsearch topology for node specification
	// +optional
	Topology *ElasticsearchClusterTopology `json:"topology,omitempty"`

	// To enable ssl for http layer
	EnableSSL bool `json:"enableSSL,omitempty"`

	// disable security of authPlugin (ie, xpack or searchguard). It disables authentication security of user.
	// If unset, default is false
	// +optional
	DisableSecurity bool `json:"disableSecurity,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database.
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// SecureConfigSecret is an optional field to provide secure settings for database.
	//	- Ref: https://www.elastic.co/guide/en/elasticsearch/reference/7.14/secure-settings.html
	// Secure settings are store at "ES_CONFIG_DIR/elasticsearch.keystore" file (contents are encoded with password),
	// once the keystore created.
	// Expects a k8s secret name with data format:
	//	data:
	//		key: value
	//		password: KEYSTORE_PASSWORD
	//		s3.client.default.access_key: ACCESS_KEY
	//		s3.client.default.secret_key: SECRET_KEY
	// +optional
	SecureConfigSecret *core.LocalObjectReference `json:"secureConfigSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// An eviction is allowed if at most "maxUnavailable" pods selected by
	// "selector" are unavailable after the eviction, i.e. even in absence of
	// the evicted pod. For example, one can prevent all voluntary evictions
	// by specifying 0. This is a mutually exclusive setting with "minAvailable".
	// +optional
	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// InternalUsers contains internal user configurations.
	// Expected Input format:
	// internalUsers:
	//   <username1>:
	//		...
	//   <username2>:
	//		...
	// +optional
	InternalUsers map[string]ElasticsearchUserSpec `json:"internalUsers,omitempty"`

	// RolesMapping contains roles mapping configurations.
	// Expected Input format:
	// rolesMapping:
	//   <role1>:
	//		...
	//   <role2>:
	//		...
	// +optional
	RolesMapping map[string]ElasticsearchRoleMapSpec `json:"rolesMapping,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// KernelSettings contains the additional kernel settings.
	// +optional
	KernelSettings *KernelSettings `json:"kernelSettings,omitempty"`

	// HeapSizePercentage specifies both the initial heap allocation (xms) percentage and the maximum heap allocation (xmx) percentage.
	// Elasticsearch bootstrap fails, if -Xms and -Xmx are not equal.
	// Error: initial heap size [X] not equal to maximum heap size [Y]; this can cause resize pauses.
	// It will be applied to all nodes. If the node level `heapSizePercentage` is specified,  this global value will be overwritten.
	// It defaults to 50% of memory limit.
	// +optional
	// +kubebuilder:default=50
	HeapSizePercentage *int32 `json:"heapSizePercentage,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*ElasticsearchSpec) DeepCopy

func (in *ElasticsearchSpec) DeepCopy() *ElasticsearchSpec

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

func (*ElasticsearchSpec) DeepCopyInto

func (in *ElasticsearchSpec) DeepCopyInto(out *ElasticsearchSpec)

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

type ElasticsearchStatus

type ElasticsearchStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*ElasticsearchStatus) DeepCopy

func (in *ElasticsearchStatus) DeepCopy() *ElasticsearchStatus

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

func (*ElasticsearchStatus) DeepCopyInto

func (in *ElasticsearchStatus) DeepCopyInto(out *ElasticsearchStatus)

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

type ElasticsearchUserSpec

type ElasticsearchUserSpec struct {
	// Specifies the hash of the password.
	// +optional
	Hash string `json:"-" yaml:"hash,omitempty"`

	// Specifies The full name of the user
	// Only applicable for xpack authplugin
	FullName string `json:"full_name,omitempty" yaml:"-"`

	// Specifies Arbitrary metadata that you want to associate with the user
	// Only applicable for xpack authplugin
	Metadata map[string]string `json:"metadata,omitempty" yaml:"-"`

	// Specifies the email of the user.
	// Only applicable for xpack authplugin
	Email string `json:"email,omitempty" yaml:"-"`

	// A set of roles the user has. The roles determine the user’s access permissions.
	// To create a user without any roles, specify an empty list: []
	// Only applicable for xpack authplugin
	Roles []string `json:"roles,omitempty" yaml:"-"`

	// Specifies the k8s secret name that holds the user credentials.
	// Default to "<resource-name>-<username>-cred".
	// +optional
	SecretName string `json:"secretName,omitempty" yaml:"-"`

	// Specifies the reserved status.
	// Resources that have this set to true can’t be changed using the REST API or Kibana.
	// Default to "false".
	// +optional
	Reserved bool `json:"reserved,omitempty" yaml:"reserved,omitempty"`

	// Specifies the hidden status.
	// Resources that have this set to true are not returned by the REST API
	// and not visible in Kibana.
	// Default to "false".
	// +optional
	Hidden bool `json:"hidden,omitempty" yaml:"hidden,omitempty"`

	// Specifies a list of backend roles assigned to this user.
	// Backend roles can come from the internal user database,
	// LDAP groups, JSON web token claims or SAML assertions.
	// +optional
	BackendRoles []string `json:"backendRoles,omitempty" yaml:"backend_roles,omitempty"`

	// Specifies a list of searchguard security plugin roles assigned to this user.
	// +optional
	SearchGuardRoles []string `json:"searchGuardRoles,omitempty" yaml:"search_guard_roles,omitempty"`

	// Specifies a list of opendistro security plugin roles assigned to this user.
	// +optional
	OpendistroSecurityRoles []string `json:"opendistroSecurityRoles,omitempty" yaml:"opendistro_security_roles,omitempty"`

	// Specifies one or more custom attributes,
	// which can be used in index names and DLS queries.
	// +optional
	Attributes map[string]string `json:"attributes,omitempty" yaml:"attributes,omitempty"`

	// Specifies the description of the user
	// +optional
	Description string `json:"description,omitempty" yaml:"description,omitempty"`
}

ElasticsearchUserSpec specifies the security plugin internal user structure. Both 'json' and 'yaml' tags are used in structure metadata. The `json` tags (camel case) are used while taking input from users. The `yaml` tags (snake case) are used by the operator to generate internal_users.yml file. For Elastic-Stack built-in users, there is no yaml files, instead the operator is responsible for creating/syncing the users. For the fields that are only used by operator, the metadata yaml tag is kept empty ("-") so that they do not interrupt in other distributions YAML generation.

func (*ElasticsearchUserSpec) DeepCopy

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

func (*ElasticsearchUserSpec) DeepCopyInto

func (in *ElasticsearchUserSpec) DeepCopyInto(out *ElasticsearchUserSpec)

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

type ErrantTransactionRecoveryPolicy added in v0.27.0

type ErrantTransactionRecoveryPolicy string
const (
	ErrantTransactionRecoveryPolicyClone             ErrantTransactionRecoveryPolicy = "Clone"
	ErrantTransactionRecoveryPolicyPseudoTransaction ErrantTransactionRecoveryPolicy = "PseudoTransaction"
)

type Etcd

type Etcd struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              EtcdSpec   `json:"spec,omitempty"`
	Status            EtcdStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=etcds,singular=etcd,shortName=etc,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (Etcd) AppBindingMeta

func (r Etcd) AppBindingMeta() appcat.AppBindingMeta

func (*Etcd) AsOwner added in v0.35.0

func (e *Etcd) AsOwner() *metav1.OwnerReference

func (Etcd) ClientServiceName

func (e Etcd) ClientServiceName() string

func (Etcd) CustomResourceDefinition

func (_ Etcd) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Etcd) DeepCopy

func (in *Etcd) DeepCopy() *Etcd

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

func (*Etcd) DeepCopyInto

func (in *Etcd) DeepCopyInto(out *Etcd)

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

func (*Etcd) DeepCopyObject

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

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

func (Etcd) GetAuthSecretName added in v0.29.0

func (e Etcd) GetAuthSecretName() string

func (Etcd) OffshootLabels

func (e Etcd) OffshootLabels() map[string]string

func (Etcd) OffshootName

func (e Etcd) OffshootName() string

func (Etcd) OffshootSelectors

func (e Etcd) OffshootSelectors() map[string]string

func (Etcd) PeerServiceName

func (e Etcd) PeerServiceName() string

func (Etcd) PodControllerLabels added in v0.23.0

func (e Etcd) PodControllerLabels() map[string]string

func (Etcd) PodLabels added in v0.23.0

func (e Etcd) PodLabels() map[string]string

func (*Etcd) ReplicasAreReady

func (e *Etcd) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (Etcd) ResourceFQN added in v0.16.0

func (e Etcd) ResourceFQN() string

func (Etcd) ResourceKind

func (e Etcd) ResourceKind() string

func (Etcd) ResourcePlural

func (e Etcd) ResourcePlural() string

func (Etcd) ResourceShortCode

func (e Etcd) ResourceShortCode() string

func (Etcd) ResourceSingular

func (e Etcd) ResourceSingular() string

func (Etcd) ServiceLabels added in v0.23.0

func (e Etcd) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Etcd) SetDefaults

func (e *Etcd) SetDefaults()

func (Etcd) StatsService

func (e Etcd) StatsService() mona.StatsAccessor

func (Etcd) StatsServiceLabels

func (e Etcd) StatsServiceLabels() map[string]string

type EtcdList

type EtcdList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Etcd TPR objects
	Items []Etcd `json:"items,omitempty"`
}

func (*EtcdList) DeepCopy

func (in *EtcdList) DeepCopy() *EtcdList

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

func (*EtcdList) DeepCopyInto

func (in *EtcdList) DeepCopyInto(out *EtcdList)

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

func (*EtcdList) DeepCopyObject

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

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

type EtcdSpec

type EtcdSpec struct {
	// Version of Etcd to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Etcd database.
	Replicas *int32 `json:"replicas,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// etcd cluster TLS configuration
	TLS *TLSPolicy `json:"tls,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`
}

func (*EtcdSpec) DeepCopy

func (in *EtcdSpec) DeepCopy() *EtcdSpec

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

func (*EtcdSpec) DeepCopyInto

func (in *EtcdSpec) DeepCopyInto(out *EtcdSpec)

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

func (*EtcdSpec) GetPersistentSecrets

func (e *EtcdSpec) GetPersistentSecrets() []string

type EtcdStatus

type EtcdStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*EtcdStatus) DeepCopy

func (in *EtcdStatus) DeepCopy() *EtcdStatus

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

func (*EtcdStatus) DeepCopyInto

func (in *EtcdStatus) DeepCopyInto(out *EtcdStatus)

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

type FerretDB added in v0.41.0

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

	Spec   FerretDBSpec   `json:"spec,omitempty"`
	Status FerretDBStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=fr,scope=Namespaced +kubebuilder:printcolumn:name="Namespace",type="string",JSONPath=".metadata.namespace" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*FerretDB) AppBindingMeta added in v0.41.0

func (f *FerretDB) AppBindingMeta() appcat.AppBindingMeta

func (*FerretDB) AsOwner added in v0.41.0

func (f *FerretDB) AsOwner() *meta.OwnerReference

AsOwner returns owner reference to resources

func (*FerretDB) CertificateName added in v0.41.0

func (f *FerretDB) CertificateName(alias FerretDBCertificateAlias) string

func (*FerretDB) CustomResourceDefinition added in v0.41.0

func (f *FerretDB) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*FerretDB) DeepCopy added in v0.41.0

func (in *FerretDB) DeepCopy() *FerretDB

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

func (*FerretDB) DeepCopyInto added in v0.41.0

func (in *FerretDB) DeepCopyInto(out *FerretDB)

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

func (*FerretDB) DeepCopyObject added in v0.41.0

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

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

func (*FerretDB) Default added in v0.41.0

func (f *FerretDB) Default()

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

func (*FerretDB) GetAuthSecretName added in v0.41.0

func (f *FerretDB) GetAuthSecretName() string

func (*FerretDB) GetCertSecretName added in v0.41.0

func (f *FerretDB) GetCertSecretName(alias FerretDBCertificateAlias) string

func (*FerretDB) GetExternalBackendClientSecretName added in v0.47.0

func (f *FerretDB) GetExternalBackendClientSecretName() string

func (*FerretDB) GetPersistentSecrets added in v0.47.0

func (f *FerretDB) GetPersistentSecrets() []string

func (*FerretDB) GetSSLModeFromAppBinding added in v0.47.0

func (f *FerretDB) GetSSLModeFromAppBinding(apb *appcat.AppBinding) (PostgresSSLMode, error)

func (*FerretDB) GetSecretVolumeName added in v0.47.0

func (f *FerretDB) GetSecretVolumeName(secretName string) string

func (*FerretDB) OffshootLabels added in v0.41.0

func (f *FerretDB) OffshootLabels() map[string]string

func (*FerretDB) OffshootName added in v0.41.0

func (f *FerretDB) OffshootName() string

func (*FerretDB) OffshootSelectors added in v0.41.0

func (f *FerretDB) OffshootSelectors() map[string]string

func (*FerretDB) PetSetName added in v0.44.0

func (r *FerretDB) PetSetName() string

func (*FerretDB) PgBackendName added in v0.41.0

func (f *FerretDB) PgBackendName() string

func (*FerretDB) PodControllerLabels added in v0.41.0

func (f *FerretDB) PodControllerLabels(podControllerLabels map[string]string, extraLabels ...map[string]string) map[string]string

func (*FerretDB) PodLabels added in v0.41.0

func (f *FerretDB) PodLabels(podTemplateLabels map[string]string, extraLabels ...map[string]string) map[string]string

func (*FerretDB) ReplicasAreReady added in v0.41.0

func (f *FerretDB) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*FerretDB) ResourceFQN added in v0.41.0

func (f *FerretDB) ResourceFQN() string

func (*FerretDB) ResourceKind added in v0.41.0

func (f *FerretDB) ResourceKind() string

func (*FerretDB) ResourcePlural added in v0.41.0

func (f *FerretDB) ResourcePlural() string

func (*FerretDB) ServiceLabels added in v0.41.0

func (f *FerretDB) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*FerretDB) ServiceName added in v0.41.0

func (f *FerretDB) ServiceName() string

func (*FerretDB) SetDefaults added in v0.41.0

func (f *FerretDB) SetDefaults()

func (*FerretDB) SetHealthCheckerDefaults added in v0.41.0

func (f *FerretDB) SetHealthCheckerDefaults()

func (*FerretDB) SetTLSDefaults added in v0.41.0

func (f *FerretDB) SetTLSDefaults()

func (*FerretDB) SetupWebhookWithManager added in v0.41.0

func (f *FerretDB) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*FerretDB) StatsService added in v0.41.0

func (f *FerretDB) StatsService() mona.StatsAccessor

func (*FerretDB) StatsServiceLabels added in v0.41.0

func (f *FerretDB) StatsServiceLabels() map[string]string

func (*FerretDB) ValidateCreate added in v0.41.0

func (f *FerretDB) ValidateCreate() (admission.Warnings, error)

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

func (*FerretDB) ValidateCreateOrUpdate added in v0.41.0

func (f *FerretDB) ValidateCreateOrUpdate() field.ErrorList

func (*FerretDB) ValidateDelete added in v0.41.0

func (f *FerretDB) ValidateDelete() (admission.Warnings, error)

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

func (*FerretDB) ValidateUpdate added in v0.41.0

func (f *FerretDB) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type FerretDBApp added in v0.41.0

type FerretDBApp struct {
	*FerretDB
}

func (*FerretDBApp) DeepCopy added in v0.41.0

func (in *FerretDBApp) DeepCopy() *FerretDBApp

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

func (*FerretDBApp) DeepCopyInto added in v0.41.0

func (in *FerretDBApp) DeepCopyInto(out *FerretDBApp)

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

func (FerretDBApp) Name added in v0.41.0

func (f FerretDBApp) Name() string

func (FerretDBApp) Type added in v0.41.0

func (f FerretDBApp) Type() appcat.AppType

type FerretDBBackend added in v0.44.0

type FerretDBBackend struct {
	// PostgresRef refers to the AppBinding of the backend Postgres server
	// +optional
	PostgresRef *kmapi.ObjectReference `json:"postgresRef,omitempty"`
	// Which versions pg will be used as backend of ferretdb. default 13.13 when backend internally managed
	// +optional
	Version *string `json:"version,omitempty"`
	// A DB inside backend specifically made for ferretdb
	// +optional
	LinkedDB          string `json:"linkedDB,omitempty"`
	ExternallyManaged bool   `json:"externallyManaged"`
}

func (*FerretDBBackend) DeepCopy added in v0.44.0

func (in *FerretDBBackend) DeepCopy() *FerretDBBackend

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

func (*FerretDBBackend) DeepCopyInto added in v0.44.0

func (in *FerretDBBackend) DeepCopyInto(out *FerretDBBackend)

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

type FerretDBCertificateAlias added in v0.41.0

type FerretDBCertificateAlias string

+kubebuilder:validation:Enum=server;client

const (
	FerretDBServerCert FerretDBCertificateAlias = "server"
	FerretDBClientCert FerretDBCertificateAlias = "client"
)

type FerretDBList added in v0.41.0

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

func (*FerretDBList) DeepCopy added in v0.41.0

func (in *FerretDBList) DeepCopy() *FerretDBList

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

func (*FerretDBList) DeepCopyInto added in v0.41.0

func (in *FerretDBList) DeepCopyInto(out *FerretDBList)

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

func (*FerretDBList) DeepCopyObject added in v0.41.0

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

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

type FerretDBSpec added in v0.41.0

type FerretDBSpec struct {
	// Version of FerretDB to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a FerretDB database.
	Replicas *int32 `json:"replicas,omitempty"`

	// Database authentication secret.
	// Use this only when backend is internally managed.
	// For externally managed backend, we will get the authSecret from AppBinding
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// See more options: https://docs.ferretdb.io/security/tls-connections/
	// +optional
	SSLMode SSLMode `json:"sslMode,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// StorageType can be durable (default) or ephemeral for KubeDB Backend
	// +optional
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used for KubeDB Backend.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used monitor database instance and KubeDB Backend
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	Backend *FerretDBBackend `json:"backend"`
}

func (*FerretDBSpec) DeepCopy added in v0.41.0

func (in *FerretDBSpec) DeepCopy() *FerretDBSpec

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

func (*FerretDBSpec) DeepCopyInto added in v0.41.0

func (in *FerretDBSpec) DeepCopyInto(out *FerretDBSpec)

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

type FerretDBStatsService added in v0.41.0

type FerretDBStatsService struct {
	*FerretDB
}

func (*FerretDBStatsService) DeepCopy added in v0.41.0

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

func (*FerretDBStatsService) DeepCopyInto added in v0.41.0

func (in *FerretDBStatsService) DeepCopyInto(out *FerretDBStatsService)

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

func (FerretDBStatsService) Path added in v0.41.0

func (fs FerretDBStatsService) Path() string

func (FerretDBStatsService) Scheme added in v0.41.0

func (fs FerretDBStatsService) Scheme() string

func (FerretDBStatsService) ServiceMonitorAdditionalLabels added in v0.41.0

func (fs FerretDBStatsService) ServiceMonitorAdditionalLabels() map[string]string

func (FerretDBStatsService) ServiceMonitorName added in v0.41.0

func (fs FerretDBStatsService) ServiceMonitorName() string

func (FerretDBStatsService) ServiceName added in v0.41.0

func (fs FerretDBStatsService) ServiceName() string

func (FerretDBStatsService) TLSConfig added in v0.41.0

func (fs FerretDBStatsService) TLSConfig() *v1.TLSConfig

type FerretDBStatus added in v0.41.0

type FerretDBStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*FerretDBStatus) DeepCopy added in v0.41.0

func (in *FerretDBStatus) DeepCopy() *FerretDBStatus

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

func (*FerretDBStatus) DeepCopyInto added in v0.41.0

func (in *FerretDBStatus) DeepCopyInto(out *FerretDBStatus)

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

type FromNamespaces added in v0.25.0

type FromNamespaces string

FromNamespaces specifies namespace from which Consumers may be attached to a database instance.

+kubebuilder:validation:Enum=All;Selector;Same

const (
	// Consumers in all namespaces may be attached to the database instance.
	NamespacesFromAll FromNamespaces = "All"
	// Only Consumers in namespaces selected by the selector may be attached to the database instance.
	NamespacesFromSelector FromNamespaces = "Selector"
	// Only Consumers in the same namespace as the database instance may be attached to it.
	NamespacesFromSame FromNamespaces = "Same"
)

type GaleraWsrepSSTMethod added in v0.32.0

type GaleraWsrepSSTMethod string

+kubebuilder:validation:Enum=rsync;mariabackup

const (
	GaleraWsrepSSTMethodRsync       GaleraWsrepSSTMethod = "rsync"
	GaleraWsrepSSTMethodMariabackup GaleraWsrepSSTMethod = "mariabackup"
)

type GitRepo added in v0.35.0

type GitRepo struct {
	// https://github.com/kubernetes/git-sync/tree/master
	Args []string `json:"args"`
	// List of environment variables to set in the container.
	// Cannot be updated.
	// +optional
	Env []core.EnvVar `json:"env,omitempty"`
	// Security options the pod should run with.
	// More info: https://kubernetes.io/docs/concepts/policy/security-context/
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
	// +optional
	SecurityContext *core.SecurityContext `json:"securityContext,omitempty"`
	// Compute Resources required by the sidecar container.
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`
	// Authentication secret for git repository
	// +optional
	AuthSecret *core.LocalObjectReference `json:"authSecret,omitempty"`
}

func (*GitRepo) DeepCopy added in v0.35.0

func (in *GitRepo) DeepCopy() *GitRepo

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

func (*GitRepo) DeepCopyInto added in v0.35.0

func (in *GitRepo) DeepCopyInto(out *GitRepo)

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

type InitSpec

type InitSpec struct {
	// Initialized indicates that this database has been initialized.
	// This will be set by the operator when status.conditions["Provisioned"] is set to ensure
	// that database is not mistakenly reset when recovered using disaster recovery tools.
	Initialized bool `json:"initialized,omitempty"`
	// Wait for initial DataRestore condition
	WaitForInitialRestore bool              `json:"waitForInitialRestore,omitempty"`
	Script                *ScriptSourceSpec `json:"script,omitempty"`

	Archiver *ArchiverRecovery `json:"archiver,omitempty"`
}

func (*InitSpec) DeepCopy

func (in *InitSpec) DeepCopy() *InitSpec

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

func (*InitSpec) DeepCopyInto

func (in *InitSpec) DeepCopyInto(out *InitSpec)

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

type InternalAuthentication added in v0.45.0

type InternalAuthentication struct {
	// EndpointCert is used for endpoint authentication of MSSql Server
	EndpointCert *kmapi.TLSConfig `json:"endpointCert"`
}

InternalAuthentication provides different way of endpoint authentication

func (*InternalAuthentication) DeepCopy added in v0.45.0

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

func (*InternalAuthentication) DeepCopyInto added in v0.45.0

func (in *InternalAuthentication) DeepCopyInto(out *InternalAuthentication)

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

type Kafka added in v0.30.0

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

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

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=kf,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Kafka) AppBindingMeta added in v0.30.0

func (k *Kafka) AppBindingMeta() appcat.AppBindingMeta

func (*Kafka) AsOwner added in v0.35.0

func (k *Kafka) AsOwner() *meta.OwnerReference

func (*Kafka) BrokerNodeSelectors added in v0.30.0

func (k *Kafka) BrokerNodeSelectors() map[string]string

func (*Kafka) BrokerServiceLabels added in v0.30.0

func (k *Kafka) BrokerServiceLabels() map[string]string

func (*Kafka) BrokerStatefulSetName added in v0.30.0

func (k *Kafka) BrokerStatefulSetName() string

func (*Kafka) CertSecretVolumeMountPath added in v0.30.0

func (k *Kafka) CertSecretVolumeMountPath(configDir string, cert string) string

returns CertSecretVolumeMountPath if configDir is "/opt/kafka/config", mountPath will be, "/opt/kafka/config/<alias>".

func (*Kafka) CertSecretVolumeName added in v0.30.0

func (k *Kafka) CertSecretVolumeName(alias KafkaCertificateAlias) string

returns the CertSecretVolumeName Values will be like: client-certs, server-certs etc.

func (*Kafka) CertificateName added in v0.30.0

func (k *Kafka) CertificateName(alias KafkaCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*Kafka) ClientCertificateCN added in v0.30.0

func (k *Kafka) ClientCertificateCN(alias KafkaCertificateAlias) string

ClientCertificateCN returns the CN for a client certificate

func (*Kafka) CombinedStatefulSetName added in v0.30.0

func (k *Kafka) CombinedStatefulSetName() string

func (*Kafka) ConfigSecretName added in v0.30.0

func (k *Kafka) ConfigSecretName(role KafkaNodeRoleType) string

func (*Kafka) ControllerNodeSelectors added in v0.30.0

func (k *Kafka) ControllerNodeSelectors() map[string]string

func (*Kafka) ControllerServiceLabels added in v0.30.0

func (k *Kafka) ControllerServiceLabels() map[string]string

func (*Kafka) ControllerStatefulSetName added in v0.30.0

func (k *Kafka) ControllerStatefulSetName() string

func (*Kafka) ConvertFrom added in v0.47.0

func (dst *Kafka) ConvertFrom(srcRaw rtconv.Hub) error

func (*Kafka) ConvertTo added in v0.47.0

func (src *Kafka) ConvertTo(dstRaw rtconv.Hub) error

func (*Kafka) CruiseControlConfigSecretName added in v0.35.0

func (k *Kafka) CruiseControlConfigSecretName() string

func (*Kafka) CustomResourceDefinition added in v0.30.0

func (k *Kafka) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Kafka) DeepCopy added in v0.30.0

func (in *Kafka) DeepCopy() *Kafka

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

func (*Kafka) DeepCopyInto added in v0.30.0

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

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

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

func (*Kafka) Default added in v0.30.0

func (k *Kafka) Default()

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

func (*Kafka) DefaultKeystoreCredSecretName added in v0.30.0

func (k *Kafka) DefaultKeystoreCredSecretName() string

func (*Kafka) DefaultUserCredSecretName added in v0.30.0

func (k *Kafka) DefaultUserCredSecretName(username string) string

func (*Kafka) GetCertSecretName added in v0.30.0

func (k *Kafka) GetCertSecretName(alias KafkaCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (*Kafka) GetConnectionScheme added in v0.30.0

func (k *Kafka) GetConnectionScheme() string

func (*Kafka) GetCruiseControlClientID added in v0.35.0

func (k *Kafka) GetCruiseControlClientID() string

func (*Kafka) GetPersistentSecrets added in v0.41.0

func (k *Kafka) GetPersistentSecrets() []string

func (*Kafka) GoverningServiceName added in v0.30.0

func (k *Kafka) GoverningServiceName() string

func (*Kafka) GoverningServiceNameCruiseControl added in v0.35.0

func (k *Kafka) GoverningServiceNameCruiseControl() string

func (*Kafka) NodeRoleSpecificLabelKey added in v0.30.0

func (k *Kafka) NodeRoleSpecificLabelKey(role KafkaNodeRoleType) string

func (*Kafka) OffshootLabels added in v0.30.0

func (k *Kafka) OffshootLabels() map[string]string

func (*Kafka) OffshootName added in v0.30.0

func (k *Kafka) OffshootName() string

func (*Kafka) OffshootSelectors added in v0.30.0

func (k *Kafka) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*Kafka) Owner added in v0.30.0

func (k *Kafka) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*Kafka) PVCName added in v0.30.0

func (k *Kafka) PVCName(alias string) string

func (*Kafka) PodControllerLabels added in v0.30.0

func (k *Kafka) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*Kafka) PodLabels added in v0.30.0

func (k *Kafka) PodLabels(extraLabels ...map[string]string) map[string]string

func (*Kafka) ReplicasAreReady added in v0.41.0

func (k *Kafka) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (*Kafka) ResourceFQN added in v0.30.0

func (k *Kafka) ResourceFQN() string

func (*Kafka) ResourceKind added in v0.30.0

func (k *Kafka) ResourceKind() string

func (*Kafka) ResourcePlural added in v0.30.0

func (k *Kafka) ResourcePlural() string

func (*Kafka) ResourceShortCode added in v0.30.0

func (k *Kafka) ResourceShortCode() string

func (*Kafka) ResourceSingular added in v0.30.0

func (k *Kafka) ResourceSingular() string

func (*Kafka) ServiceLabels added in v0.30.0

func (k *Kafka) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Kafka) ServiceName added in v0.30.0

func (k *Kafka) ServiceName() string

func (*Kafka) SetDefaults added in v0.30.0

func (k *Kafka) SetDefaults()

func (*Kafka) SetHealthCheckerDefaults added in v0.30.0

func (k *Kafka) SetHealthCheckerDefaults()

func (*Kafka) SetTLSDefaults added in v0.30.0

func (k *Kafka) SetTLSDefaults()

func (*Kafka) SetupWebhookWithManager added in v0.30.0

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

func (*Kafka) StandbyServiceName added in v0.30.0

func (k *Kafka) StandbyServiceName() string

func (*Kafka) StatefulSetName added in v0.30.0

func (k *Kafka) StatefulSetName() string

func (*Kafka) StatsService added in v0.33.0

func (k *Kafka) StatsService() mona.StatsAccessor

func (*Kafka) StatsServiceLabels added in v0.33.0

func (k *Kafka) StatsServiceLabels() map[string]string

func (*Kafka) ValidateCreate added in v0.30.0

func (k *Kafka) ValidateCreate() (admission.Warnings, error)

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

func (*Kafka) ValidateCreateOrUpdate added in v0.30.0

func (k *Kafka) ValidateCreateOrUpdate() error

func (*Kafka) ValidateDelete added in v0.30.0

func (k *Kafka) ValidateDelete() (admission.Warnings, error)

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

func (*Kafka) ValidateUpdate added in v0.30.0

func (k *Kafka) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type KafkaApp added in v0.30.0

type KafkaApp struct {
	*Kafka
}

func (*KafkaApp) DeepCopy added in v0.30.0

func (in *KafkaApp) DeepCopy() *KafkaApp

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

func (*KafkaApp) DeepCopyInto added in v0.30.0

func (in *KafkaApp) DeepCopyInto(out *KafkaApp)

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

func (KafkaApp) Name added in v0.30.0

func (r KafkaApp) Name() string

func (KafkaApp) Type added in v0.30.0

func (r KafkaApp) Type() appcat.AppType

type KafkaBrokerCapacity added in v0.35.0

type KafkaBrokerCapacity struct {
	InBoundNetwork  string `json:"inBoundNetwork,omitempty"`
	OutBoundNetwork string `json:"outBoundNetwork,omitempty"`
}

func (*KafkaBrokerCapacity) DeepCopy added in v0.35.0

func (in *KafkaBrokerCapacity) DeepCopy() *KafkaBrokerCapacity

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

func (*KafkaBrokerCapacity) DeepCopyInto added in v0.35.0

func (in *KafkaBrokerCapacity) DeepCopyInto(out *KafkaBrokerCapacity)

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

type KafkaCertificateAlias added in v0.30.0

type KafkaCertificateAlias string

+kubebuilder:validation:Enum=ca;transport;http;client;server

const (
	KafkaCACert        KafkaCertificateAlias = "ca"
	KafkaTransportCert KafkaCertificateAlias = "transport"
	KafkaHTTPCert      KafkaCertificateAlias = "http"
	KafkaClientCert    KafkaCertificateAlias = "client"
	KafkaServerCert    KafkaCertificateAlias = "server"
)

type KafkaClusterTopology added in v0.30.0

type KafkaClusterTopology struct {
	Controller *KafkaNode `json:"controller,omitempty"`
	Broker     *KafkaNode `json:"broker,omitempty"`
}

KafkaClusterTopology defines kafka topology node specs for controller node and broker node dedicated controller nodes contains metadata for brokers and broker nodes contains data both nodes must be configured in topology mode

func (*KafkaClusterTopology) DeepCopy added in v0.30.0

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

func (*KafkaClusterTopology) DeepCopyInto added in v0.30.0

func (in *KafkaClusterTopology) DeepCopyInto(out *KafkaClusterTopology)

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

func (*KafkaClusterTopology) ToMap added in v0.30.0

func (kfTopology *KafkaClusterTopology) ToMap() map[KafkaNodeRoleType]KafkaNode

ToMap returns ClusterTopology in a Map

type KafkaCruiseControl added in v0.35.0

type KafkaCruiseControl struct {
	// Configuration for cruise-control
	// +optional
	ConfigSecret *SecretReference `json:"configSecret,omitempty"`

	// Replicas represents number of replica for this specific type of node
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Suffix to append with node name
	// +optional
	Suffix string `json:"suffix,omitempty"`

	// Compute Resources required by the sidecar container.
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	BrokerCapacity *KafkaBrokerCapacity `json:"brokerCapacity,omitempty"`
}

func (*KafkaCruiseControl) DeepCopy added in v0.35.0

func (in *KafkaCruiseControl) DeepCopy() *KafkaCruiseControl

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

func (*KafkaCruiseControl) DeepCopyInto added in v0.35.0

func (in *KafkaCruiseControl) DeepCopyInto(out *KafkaCruiseControl)

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

type KafkaList added in v0.30.0

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

func (in *KafkaList) DeepCopy() *KafkaList

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

func (*KafkaList) DeepCopyInto added in v0.30.0

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

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

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

type KafkaListenerType added in v0.30.0

type KafkaListenerType string

+kubebuilder:validation:Enum=BROKER;CONTROLLER;INTERNAL;CC

const (
	KafkaListenerBroker     KafkaListenerType = "BROKER"
	KafkaListenerController KafkaListenerType = "CONTROLLER"
	KafkaListenerLocal      KafkaListenerType = "LOCAL"
	KafkaListenerCC         KafkaListenerType = "CC"
)

type KafkaNode added in v0.30.0

type KafkaNode struct {
	// Replicas represents number of replica for this specific type of node
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// suffix to append with node name
	// +optional
	Suffix string `json:"suffix,omitempty"`

	// Storage to specify how storage shall be used.
	// +optional
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Compute Resources required by the sidecar container.
	// +optional
	Resources core.ResourceRequirements `json:"resources,omitempty"`

	// NodeSelector is a selector which must be true for the pod to fit on a node.
	// Selector which must match a node's labels for the pod to be scheduled on that node.
	// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
	// +optional
	// +mapType=atomic
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []core.Toleration `json:"tolerations,omitempty"`
}

func (*KafkaNode) DeepCopy added in v0.30.0

func (in *KafkaNode) DeepCopy() *KafkaNode

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

func (*KafkaNode) DeepCopyInto added in v0.30.0

func (in *KafkaNode) DeepCopyInto(out *KafkaNode)

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

type KafkaNodeRoleType added in v0.30.0

type KafkaNodeRoleType string

+kubebuilder:validation:Enum=controller;broker;combined

const (
	KafkaNodeRoleController KafkaNodeRoleType = "controller"
	KafkaNodeRoleBroker     KafkaNodeRoleType = "broker"
	KafkaNodeRoleCombined   KafkaNodeRoleType = "combined"
)

type KafkaPhase added in v0.30.0

type KafkaPhase string

+kubebuilder:validation:Enum=Provisioning;Ready;NotReady;Critical

const (
	KafkaPhaseProvisioning KafkaPhase = "Provisioning"
	KafkaPhaseReady        KafkaPhase = "Ready"
	KafkaPhaseNotReady     KafkaPhase = "NotReady"
	KafkaPhaseCritical     KafkaPhase = "Critical"
)

type KafkaSpec added in v0.30.0

type KafkaSpec struct {
	// Version of Kafka to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Kafka database.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Kafka topology for node specification
	// +optional
	Topology *KafkaClusterTopology `json:"topology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// To enable ssl for http layer
	EnableSSL bool `json:"enableSSL,omitempty"`

	// disable security. It disables authentication security of user.
	// If unset, default is false
	// +optional
	DisableSecurity bool `json:"disableSecurity,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// Keystore encryption secret
	// +optional
	KeystoreCredSecret *SecretReference `json:"keystoreCredSecret,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// CruiseControl is used to re-balance Kafka cluster
	// +optional
	CruiseControl *KafkaCruiseControl `json:"cruiseControl,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`
}

KafkaSpec defines the desired state of Kafka

func (*KafkaSpec) DeepCopy added in v0.30.0

func (in *KafkaSpec) DeepCopy() *KafkaSpec

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

func (*KafkaSpec) DeepCopyInto added in v0.30.0

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

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

type KafkaStatus added in v0.30.0

type KafkaStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase KafkaPhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

KafkaStatus defines the observed state of Kafka

func (*KafkaStatus) DeepCopy added in v0.30.0

func (in *KafkaStatus) DeepCopy() *KafkaStatus

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

func (*KafkaStatus) DeepCopyInto added in v0.30.0

func (in *KafkaStatus) DeepCopyInto(out *KafkaStatus)

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

type KernelSettings added in v0.16.0

type KernelSettings struct {
	// DisableDefaults can be set to false to avoid defaulting via mutator
	DisableDefaults bool `json:"disableDefaults,omitempty"`
	// Privileged specifies the status whether the init container
	// requires privileged access to perform the following commands.
	// +optional
	Privileged bool `json:"privileged,omitempty"`
	// Sysctls hold a list of sysctls commands needs to apply to kernel.
	// +optional
	Sysctls []core.Sysctl `json:"sysctls,omitempty"`
}

func (*KernelSettings) DeepCopy added in v0.16.0

func (in *KernelSettings) DeepCopy() *KernelSettings

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

func (*KernelSettings) DeepCopyInto added in v0.16.0

func (in *KernelSettings) DeepCopyInto(out *KernelSettings)

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

type LoadBalanceMode

type LoadBalanceMode string

+kubebuilder:validation:Enum=Galera;GroupReplication

const (
	LoadBalanceModeGalera           LoadBalanceMode = "Galera"
	LoadBalanceModeGroupReplication LoadBalanceMode = "GroupReplication"
)

type MSSQLServer added in v0.45.0

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

	Spec   MSSQLServerSpec   `json:"spec,omitempty"`
	Status MSSQLServerStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mssqlservers,singular=mssqlserver,shortName=ms,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*MSSQLServer) AppBindingMeta added in v0.45.0

func (m *MSSQLServer) AppBindingMeta() appcat.AppBindingMeta

func (*MSSQLServer) AvailabilityGroupName added in v0.46.0

func (m *MSSQLServer) AvailabilityGroupName() string

func (*MSSQLServer) CAProviderClassName added in v0.46.0

func (m *MSSQLServer) CAProviderClassName() string

func (*MSSQLServer) CertificateName added in v0.46.0

func (m *MSSQLServer) CertificateName(alias MSSQLServerCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*MSSQLServer) ConfigSecretName added in v0.45.0

func (m *MSSQLServer) ConfigSecretName() string

func (*MSSQLServer) CustomResourceDefinition added in v0.45.0

func (m *MSSQLServer) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MSSQLServer) DbmLoginSecretName added in v0.46.0

func (m *MSSQLServer) DbmLoginSecretName() string

func (*MSSQLServer) DeepCopy added in v0.45.0

func (in *MSSQLServer) DeepCopy() *MSSQLServer

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

func (*MSSQLServer) DeepCopyInto added in v0.45.0

func (in *MSSQLServer) DeepCopyInto(out *MSSQLServer)

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

func (*MSSQLServer) DeepCopyObject added in v0.45.0

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

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

func (*MSSQLServer) Default added in v0.45.0

func (m *MSSQLServer) Default()

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

func (*MSSQLServer) DefaultUserCredSecretName added in v0.45.0

func (m *MSSQLServer) DefaultUserCredSecretName(username string) string

func (*MSSQLServer) EndpointCertSecretName added in v0.46.0

func (m *MSSQLServer) EndpointCertSecretName() string

func (MSSQLServer) GetAuthSecretName added in v0.45.0

func (m MSSQLServer) GetAuthSecretName() string

func (*MSSQLServer) GetCertSecretName added in v0.46.0

func (m *MSSQLServer) GetCertSecretName(alias MSSQLServerCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any otherwise returns default certificate secret name for the given alias.

func (*MSSQLServer) GetNameSpacedName added in v0.45.0

func (m *MSSQLServer) GetNameSpacedName() string

func (*MSSQLServer) GetPersistentSecrets added in v0.45.0

func (m *MSSQLServer) GetPersistentSecrets() []string

func (*MSSQLServer) GoverningServiceName added in v0.45.0

func (m *MSSQLServer) GoverningServiceName() string

func (*MSSQLServer) IsAvailabilityGroup added in v0.45.0

func (m *MSSQLServer) IsAvailabilityGroup() bool

func (*MSSQLServer) IsStandalone added in v0.45.0

func (m *MSSQLServer) IsStandalone() bool

func (*MSSQLServer) MasterKeySecretName added in v0.46.0

func (m *MSSQLServer) MasterKeySecretName() string

func (*MSSQLServer) OffshootLabels added in v0.45.0

func (m *MSSQLServer) OffshootLabels() map[string]string

func (*MSSQLServer) OffshootName added in v0.45.0

func (m *MSSQLServer) OffshootName() string

func (*MSSQLServer) OffshootSelectors added in v0.45.0

func (m *MSSQLServer) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*MSSQLServer) Owner added in v0.45.0

func (m *MSSQLServer) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*MSSQLServer) PVCName added in v0.45.0

func (m *MSSQLServer) PVCName(alias string) string

func (*MSSQLServer) PetSetName added in v0.45.0

func (m *MSSQLServer) PetSetName() string

func (*MSSQLServer) PodControllerLabel added in v0.45.0

func (m *MSSQLServer) PodControllerLabel(podTemplate *ofst.PodTemplateSpec) map[string]string

func (*MSSQLServer) PodControllerLabels added in v0.45.0

func (m *MSSQLServer) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*MSSQLServer) PodLabel added in v0.45.0

func (m *MSSQLServer) PodLabel(podTemplate *ofst.PodTemplateSpec) map[string]string

func (*MSSQLServer) PodLabels added in v0.45.0

func (m *MSSQLServer) PodLabels(extraLabels ...map[string]string) map[string]string

func (*MSSQLServer) PrimaryServiceDNS added in v0.45.0

func (m *MSSQLServer) PrimaryServiceDNS() string

func (*MSSQLServer) ReplicasAreReady added in v0.46.0

func (m *MSSQLServer) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*MSSQLServer) ResourceFQN added in v0.45.0

func (m *MSSQLServer) ResourceFQN() string

func (*MSSQLServer) ResourceKind added in v0.45.0

func (m *MSSQLServer) ResourceKind() string

func (*MSSQLServer) ResourcePlural added in v0.45.0

func (m *MSSQLServer) ResourcePlural() string

func (*MSSQLServer) SecondaryServiceName added in v0.45.0

func (m *MSSQLServer) SecondaryServiceName() string

func (*MSSQLServer) SecretName added in v0.46.0

func (m *MSSQLServer) SecretName(alias MSSQLServerCertificateAlias) string

func (*MSSQLServer) ServiceAccountName added in v0.45.0

func (m *MSSQLServer) ServiceAccountName() string

func (*MSSQLServer) ServiceLabels added in v0.45.0

func (m *MSSQLServer) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*MSSQLServer) ServiceName added in v0.45.0

func (m *MSSQLServer) ServiceName() string

func (*MSSQLServer) SetDefaults added in v0.45.0

func (m *MSSQLServer) SetDefaults()

func (MSSQLServer) SetHealthCheckerDefaults added in v0.45.0

func (m MSSQLServer) SetHealthCheckerDefaults()

func (*MSSQLServer) SetTLSDefaults added in v0.46.0

func (m *MSSQLServer) SetTLSDefaults()

func (*MSSQLServer) SetTLSDefaultsForInternalAuth added in v0.46.0

func (m *MSSQLServer) SetTLSDefaultsForInternalAuth()

func (*MSSQLServer) SetupWebhookWithManager added in v0.45.0

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

SetupWebhookWithManager will setup the manager to manage the webhooks

func (MSSQLServer) StatsService added in v0.47.0

func (m MSSQLServer) StatsService() mona.StatsAccessor

func (MSSQLServer) StatsServiceLabels added in v0.47.0

func (m MSSQLServer) StatsServiceLabels() map[string]string

func (*MSSQLServer) ValidateCreate added in v0.45.0

func (m *MSSQLServer) ValidateCreate() (admission.Warnings, error)

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

func (*MSSQLServer) ValidateCreateOrUpdate added in v0.45.0

func (m *MSSQLServer) ValidateCreateOrUpdate() field.ErrorList

func (*MSSQLServer) ValidateDelete added in v0.45.0

func (m *MSSQLServer) ValidateDelete() (admission.Warnings, error)

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

func (*MSSQLServer) ValidateUpdate added in v0.45.0

func (m *MSSQLServer) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type MSSQLServerApp added in v0.45.0

type MSSQLServerApp struct {
	*MSSQLServer
}

func (*MSSQLServerApp) DeepCopy added in v0.45.0

func (in *MSSQLServerApp) DeepCopy() *MSSQLServerApp

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

func (*MSSQLServerApp) DeepCopyInto added in v0.45.0

func (in *MSSQLServerApp) DeepCopyInto(out *MSSQLServerApp)

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

func (MSSQLServerApp) Name added in v0.45.0

func (m MSSQLServerApp) Name() string

func (MSSQLServerApp) Type added in v0.45.0

func (m MSSQLServerApp) Type() appcat.AppType

type MSSQLServerAvailabilityGroupSpec added in v0.46.0

type MSSQLServerAvailabilityGroupSpec struct {
	// AvailabilityDatabases is an array of databases to be included in the availability group
	// +optional
	Databases []string `json:"databases"`
}

MSSQLServerAvailabilityGroupSpec defines the availability group spec for MSSQLServer

func (*MSSQLServerAvailabilityGroupSpec) DeepCopy added in v0.46.0

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

func (*MSSQLServerAvailabilityGroupSpec) DeepCopyInto added in v0.46.0

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

type MSSQLServerCertificateAlias added in v0.46.0

type MSSQLServerCertificateAlias string

+kubebuilder:validation:Enum=server;client;endpoint

const (
	MSSQLServerServerCert   MSSQLServerCertificateAlias = "server"
	MSSQLServerClientCert   MSSQLServerCertificateAlias = "client"
	MSSQLServerEndpointCert MSSQLServerCertificateAlias = "endpoint"
)

type MSSQLServerLeaderElectionConfig added in v0.46.0

type MSSQLServerLeaderElectionConfig struct {
	// Period between Node.Tick invocations
	// +kubebuilder:default="100ms"
	// +optional
	Period metav1.Duration `json:"period,omitempty"`

	// ElectionTick is the number of Node.Tick invocations that must pass between
	//	elections. That is, if a follower does not receive any message from the
	//  leader of current term before ElectionTick has elapsed, it will become
	//	candidate and start an election. ElectionTick must be greater than
	//  HeartbeatTick. We suggest ElectionTick = 10 * HeartbeatTick to avoid
	//  unnecessary leader switching. default value is 10.
	// +default=10
	// +kubebuilder:default=10
	// +optional
	ElectionTick int32 `json:"electionTick,omitempty"`

	// HeartbeatTick is the number of Node.Tick invocations that must pass between
	// heartbeats. That is, a leader sends heartbeat messages to maintain its
	// leadership every HeartbeatTick ticks. default value is 1.
	// +default=1
	// +kubebuilder:default=1
	// +optional
	HeartbeatTick int32 `json:"heartbeatTick,omitempty"`

	// TransferLeadershipInterval retry interval for transfer leadership
	// to the healthiest node
	// +kubebuilder:default="1s"
	// +optional
	TransferLeadershipInterval *metav1.Duration `json:"transferLeadershipInterval,omitempty"`

	// TransferLeadershipTimeout retry timeout for transfer leadership
	// to the healthiest node
	// +kubebuilder:default="60s"
	// +optional
	TransferLeadershipTimeout *metav1.Duration `json:"transferLeadershipTimeout,omitempty"`
}

MSSQLServerLeaderElectionConfig contains essential attributes of leader election.

func (*MSSQLServerLeaderElectionConfig) DeepCopy added in v0.46.0

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

func (*MSSQLServerLeaderElectionConfig) DeepCopyInto added in v0.46.0

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

type MSSQLServerList added in v0.45.0

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

MSSQLServerList contains a list of MSSQLServer

func (*MSSQLServerList) DeepCopy added in v0.45.0

func (in *MSSQLServerList) DeepCopy() *MSSQLServerList

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

func (*MSSQLServerList) DeepCopyInto added in v0.45.0

func (in *MSSQLServerList) DeepCopyInto(out *MSSQLServerList)

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

func (*MSSQLServerList) DeepCopyObject added in v0.45.0

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

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

type MSSQLServerMode added in v0.46.0

type MSSQLServerMode string

+kubebuilder:validation:Enum=AvailabilityGroup;RemoteReplica

const (
	MSSQLServerModeAvailabilityGroup MSSQLServerMode = "AvailabilityGroup"
	MSSQLServerModeRemoteReplica     MSSQLServerMode = "RemoteReplica"
)

type MSSQLServerSpec added in v0.45.0

type MSSQLServerSpec struct {
	// Version of MSSQLServer to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a MSSQLServer database. In case of MSSQLServer Availability Group.
	Replicas *int32 `json:"replicas,omitempty"`

	// MSSQLServer cluster topology
	// +optional
	Topology *MSSQLServerTopology `json:"topology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// InternalAuth is used to authenticate endpoint
	// +optional
	// +nullable
	InternalAuth *InternalAuthentication `json:"internalAuth,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// TLS contains tls configurations for client and server.
	TLS *SQLServerTLSConfig `json:"tls,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// Leader election configuration
	// +optional
	LeaderElection *MSSQLServerLeaderElectionConfig `json:"leaderElection,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// Archiver controls database backup using Archiver CR
	// +optional
	Archiver *Archiver `json:"archiver,omitempty"`
}

MSSQLServerSpec defines the desired state of MSSQLServer

func (*MSSQLServerSpec) DeepCopy added in v0.45.0

func (in *MSSQLServerSpec) DeepCopy() *MSSQLServerSpec

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

func (*MSSQLServerSpec) DeepCopyInto added in v0.45.0

func (in *MSSQLServerSpec) DeepCopyInto(out *MSSQLServerSpec)

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

type MSSQLServerStatus added in v0.45.0

type MSSQLServerStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

MSSQLServerStatus defines the observed state of MSSQLServer

func (*MSSQLServerStatus) DeepCopy added in v0.45.0

func (in *MSSQLServerStatus) DeepCopy() *MSSQLServerStatus

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

func (*MSSQLServerStatus) DeepCopyInto added in v0.45.0

func (in *MSSQLServerStatus) DeepCopyInto(out *MSSQLServerStatus)

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

type MSSQLServerTopology added in v0.46.0

type MSSQLServerTopology struct {
	// If set to -
	// "AvailabilityGroup", MSSQLAvailabilityGroupSpec is required and MSSQLServer servers will start an Availability Group
	Mode *MSSQLServerMode `json:"mode,omitempty"`

	// AvailabilityGroup info for MSSQLServer
	// +optional
	AvailabilityGroup *MSSQLServerAvailabilityGroupSpec `json:"availabilityGroup,omitempty"`
}

func (*MSSQLServerTopology) DeepCopy added in v0.46.0

func (in *MSSQLServerTopology) DeepCopy() *MSSQLServerTopology

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

func (*MSSQLServerTopology) DeepCopyInto added in v0.46.0

func (in *MSSQLServerTopology) DeepCopyInto(out *MSSQLServerTopology)

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

type MariaDB

type MariaDB struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MariaDBSpec   `json:"spec,omitempty"`
	Status            MariaDBStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mariadbs,singular=mariadb,shortName=md,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MariaDB) AppBindingMeta

func (m MariaDB) AppBindingMeta() appcat.AppBindingMeta

func (*MariaDB) AsOwner added in v0.35.0

func (m *MariaDB) AsOwner() *metav1.OwnerReference

func (*MariaDB) CertFilePath added in v0.28.0

func (m *MariaDB) CertFilePath(certAlias MariaDBCertificateAlias, certFileName string) string

func (*MariaDB) CertMountPath added in v0.28.0

func (m *MariaDB) CertMountPath(alias MariaDBCertificateAlias) string

func (*MariaDB) CertificateName added in v0.17.0

func (m *MariaDB) CertificateName(alias MariaDBCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (MariaDB) ClusterName added in v0.15.1

func (m MariaDB) ClusterName() string

func (*MariaDB) ConvertFrom added in v0.47.0

func (dst *MariaDB) ConvertFrom(srcRaw rtconv.Hub) error

func (*MariaDB) ConvertTo added in v0.47.0

func (src *MariaDB) ConvertTo(dstRaw rtconv.Hub) error

func (MariaDB) CustomResourceDefinition

func (_ MariaDB) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MariaDB) DeepCopy

func (in *MariaDB) DeepCopy() *MariaDB

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

func (*MariaDB) DeepCopyInto

func (in *MariaDB) DeepCopyInto(out *MariaDB)

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

func (*MariaDB) DeepCopyObject

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

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

func (MariaDB) GetAuthSecretName added in v0.15.1

func (m MariaDB) GetAuthSecretName() string

func (*MariaDB) GetCertSecretName added in v0.18.0

func (m *MariaDB) GetCertSecretName(alias MariaDBCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (MariaDB) GoverningServiceName

func (m MariaDB) GoverningServiceName() string

func (*MariaDB) InlineConfigSecretName added in v0.19.0

func (m *MariaDB) InlineConfigSecretName() string

func (MariaDB) IsCluster added in v0.15.1

func (m MariaDB) IsCluster() bool

func (MariaDB) OffshootLabels

func (m MariaDB) OffshootLabels() map[string]string

func (MariaDB) OffshootName

func (m MariaDB) OffshootName() string

func (MariaDB) OffshootSelectors

func (m MariaDB) OffshootSelectors() map[string]string

func (MariaDB) PeerName added in v0.15.1

func (m MariaDB) PeerName(idx int) string

func (MariaDB) PodControllerLabels added in v0.23.0

func (m MariaDB) PodControllerLabels() map[string]string

func (MariaDB) PodLabels added in v0.23.0

func (m MariaDB) PodLabels() map[string]string

func (MariaDB) PrimaryServiceDNS added in v0.17.0

func (m MariaDB) PrimaryServiceDNS() string

func (*MariaDB) ReplicasAreReady

func (m *MariaDB) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (MariaDB) ResourceFQN added in v0.16.0

func (m MariaDB) ResourceFQN() string

func (MariaDB) ResourceKind

func (m MariaDB) ResourceKind() string

func (MariaDB) ResourcePlural

func (m MariaDB) ResourcePlural() string

func (MariaDB) ResourceShortCode

func (m MariaDB) ResourceShortCode() string

func (MariaDB) ResourceSingular

func (m MariaDB) ResourceSingular() string

func (MariaDB) ServiceLabels added in v0.23.0

func (m MariaDB) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (MariaDB) ServiceName

func (m MariaDB) ServiceName() string

func (*MariaDB) SetDefaults

func (m *MariaDB) SetDefaults(mdVersion *v1alpha1.MariaDBVersion, topology *core_util.Topology)

func (*MariaDB) SetHealthCheckerDefaults added in v0.28.0

func (m *MariaDB) SetHealthCheckerDefaults()

func (*MariaDB) SetTLSDefaults added in v0.17.0

func (m *MariaDB) SetTLSDefaults()

func (MariaDB) StatsService

func (m MariaDB) StatsService() mona.StatsAccessor

func (MariaDB) StatsServiceLabels

func (m MariaDB) StatsServiceLabels() map[string]string

type MariaDBCertificateAlias

type MariaDBCertificateAlias string

+kubebuilder:validation:Enum=server;archiver;metrics-exporter

const (
	MariaDBServerCert   MariaDBCertificateAlias = "server"
	MariaDBClientCert   MariaDBCertificateAlias = "client"
	MariaDBExporterCert MariaDBCertificateAlias = "metrics-exporter"
)

type MariaDBList

type MariaDBList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MariaDB TPR objects
	Items []MariaDB `json:"items,omitempty"`
}

func (*MariaDBList) DeepCopy

func (in *MariaDBList) DeepCopy() *MariaDBList

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

func (*MariaDBList) DeepCopyInto

func (in *MariaDBList) DeepCopyInto(out *MariaDBList)

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

func (*MariaDBList) DeepCopyObject

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

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

type MariaDBSpec

type MariaDBSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of MariaDB to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a MariaDB database.
	Replicas *int32 `json:"replicas,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// WsrepSSTMethod is used to define the STATE-SNAPSHOT-TRANSFER method to be used in the Galera cluster
	// default value : rsync
	// +kubebuilder:default:=rsync
	// +optional
	WsrepSSTMethod GaleraWsrepSSTMethod `json:"wsrepSSTMethod,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used to monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e custom-mysql.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL bool `json:"requireSSL,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// AllowedSchemas defines the types of database schemas that MAY refer to
	// a database instance and the trusted namespaces where those schema resources MAY be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Archiver controls database backup using Archiver CR
	// +optional
	Archiver *Archiver `json:"archiver,omitempty"`
}

func (*MariaDBSpec) DeepCopy

func (in *MariaDBSpec) DeepCopy() *MariaDBSpec

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

func (*MariaDBSpec) DeepCopyInto

func (in *MariaDBSpec) DeepCopyInto(out *MariaDBSpec)

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

func (*MariaDBSpec) GetPersistentSecrets

func (m *MariaDBSpec) GetPersistentSecrets() []string

type MariaDBStatus

type MariaDBStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*MariaDBStatus) DeepCopy

func (in *MariaDBStatus) DeepCopy() *MariaDBStatus

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

func (*MariaDBStatus) DeepCopyInto

func (in *MariaDBStatus) DeepCopyInto(out *MariaDBStatus)

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

type MemberSecret

type MemberSecret struct {
	// PeerSecret is the secret containing TLS certs used by each etcd member pod
	// for the communication between etcd peers.
	PeerSecret string `json:"peerSecret,omitempty"`
	// ServerSecret is the secret containing TLS certs used by each etcd member pod
	// for the communication between etcd server and its clients.
	ServerSecret string `json:"serverSecret,omitempty"`
}

func (*MemberSecret) DeepCopy

func (in *MemberSecret) DeepCopy() *MemberSecret

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

func (*MemberSecret) DeepCopyInto

func (in *MemberSecret) DeepCopyInto(out *MemberSecret)

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

type Memcached

type Memcached struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MemcachedSpec   `json:"spec,omitempty"`
	Status            MemcachedStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=memcacheds,singular=memcached,shortName=mc,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (Memcached) Address added in v0.45.0

func (m Memcached) Address() string

func (Memcached) AppBindingMeta

func (m Memcached) AppBindingMeta() appcat.AppBindingMeta

func (*Memcached) AsOwner added in v0.35.0

func (m *Memcached) AsOwner() *metav1.OwnerReference

func (Memcached) ConfigSecretName added in v0.46.0

func (m Memcached) ConfigSecretName() string

func (*Memcached) ConvertFrom added in v0.47.0

func (dst *Memcached) ConvertFrom(srcRaw rtconv.Hub) error

func (*Memcached) ConvertTo added in v0.47.0

func (src *Memcached) ConvertTo(dstRaw rtconv.Hub) error

func (Memcached) CustomConfigSecretName added in v0.46.0

func (m Memcached) CustomConfigSecretName() string

func (Memcached) CustomResourceDefinition

func (_ Memcached) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Memcached) DeepCopy

func (in *Memcached) DeepCopy() *Memcached

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

func (*Memcached) DeepCopyInto

func (in *Memcached) DeepCopyInto(out *Memcached)

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

func (*Memcached) DeepCopyObject

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

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

func (Memcached) GoverningServiceName

func (m Memcached) GoverningServiceName() string

func (Memcached) OffshootLabels

func (m Memcached) OffshootLabels() map[string]string

func (Memcached) OffshootName

func (m Memcached) OffshootName() string

func (Memcached) OffshootSelectors

func (m Memcached) OffshootSelectors() map[string]string

func (Memcached) PodControllerLabels added in v0.23.0

func (m Memcached) PodControllerLabels() map[string]string

func (Memcached) PodLabels added in v0.23.0

func (m Memcached) PodLabels() map[string]string

func (*Memcached) ReplicasAreReady

func (m *Memcached) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (Memcached) ResourceFQN added in v0.16.0

func (m Memcached) ResourceFQN() string

func (Memcached) ResourceKind

func (m Memcached) ResourceKind() string

func (Memcached) ResourcePlural

func (m Memcached) ResourcePlural() string

func (Memcached) ResourceShortCode

func (m Memcached) ResourceShortCode() string

func (Memcached) ResourceSingular

func (m Memcached) ResourceSingular() string

func (Memcached) ServiceLabels added in v0.23.0

func (m Memcached) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (Memcached) ServiceName

func (m Memcached) ServiceName() string

func (*Memcached) SetDefaults

func (m *Memcached) SetDefaults(mcVersion *catalog.MemcachedVersion)

func (*Memcached) SetHealthCheckerDefaults added in v0.45.0

func (m *Memcached) SetHealthCheckerDefaults()

func (Memcached) StatsService

func (m Memcached) StatsService() mona.StatsAccessor

func (Memcached) StatsServiceLabels

func (m Memcached) StatsServiceLabels() map[string]string

type MemcachedCertificateAlias

type MemcachedCertificateAlias string

+kubebuilder:validation:Enum=server;metrics-exporter

const (
	MemcachedServerCert          MemcachedCertificateAlias = "server"
	MemcachedMetricsExporterCert MemcachedCertificateAlias = "metrics-exporter"
)

type MemcachedList

type MemcachedList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Memcached TPR objects
	Items []Memcached `json:"items,omitempty"`
}

func (*MemcachedList) DeepCopy

func (in *MemcachedList) DeepCopy() *MemcachedList

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

func (*MemcachedList) DeepCopyInto

func (in *MemcachedList) DeepCopyInto(out *MemcachedList)

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

func (*MemcachedList) DeepCopyObject

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

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

type MemcachedSpec

type MemcachedSpec struct {
	// Version of Memcached to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Memcached database.
	Replicas *int32 `json:"replicas,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database.
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// DataVolume is an optional field to add one volume to each
	// memcached pod.  The volume will be made available under
	// /data and owned by the memcached user.
	//
	// While not mandated by the API and not configured
	// automatically, the intended purpose is to use that volume
	// for memcached's persistent memory support
	// (https://memcached.org/blog/persistent-memory/) by adding
	// the memory-file and memory-limit options to the config
	// (https://github.com/memcached/memcached/wiki/WarmRestart).
	//
	// For that purpose, a CSI inline volume provided by PMEM-CSI
	// can be used, in which case each pod will get its own, empty
	// volume. Warm restarts are not supported.
	//
	// For testing, an empty dir can be used instead.
	DataVolume *core.VolumeSource `json:"dataVolume,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*MemcachedSpec) DeepCopy

func (in *MemcachedSpec) DeepCopy() *MemcachedSpec

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

func (*MemcachedSpec) DeepCopyInto

func (in *MemcachedSpec) DeepCopyInto(out *MemcachedSpec)

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

func (*MemcachedSpec) GetPersistentSecrets

func (m *MemcachedSpec) GetPersistentSecrets() []string

type MemcachedStatus

type MemcachedStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*MemcachedStatus) DeepCopy

func (in *MemcachedStatus) DeepCopy() *MemcachedStatus

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

func (*MemcachedStatus) DeepCopyInto

func (in *MemcachedStatus) DeepCopyInto(out *MemcachedStatus)

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

type MetadataStorage added in v0.41.0

type MetadataStorage struct {
	// Name and namespace of the appbinding of metadata storage
	// +optional
	*kmapi.ObjectReference `json:",omitempty"`

	// If not KubeDB managed, then specify type of the metadata storage
	// +optional
	Type DruidMetadataStorageType `json:"type,omitempty"`

	// If Druid has the permission to create new tables
	// +optional
	CreateTables *bool `json:"createTables,omitempty"`

	// +optional
	LinkedDB string `json:"linkedDB,omitempty"`

	// +optional
	ExternallyManaged bool `json:"externallyManaged,omitempty"`

	// Version of the MySQL/PG used
	// +optional
	Version *string `json:"version,omitempty"`
}

func (*MetadataStorage) DeepCopy added in v0.41.0

func (in *MetadataStorage) DeepCopy() *MetadataStorage

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

func (*MetadataStorage) DeepCopyInto added in v0.41.0

func (in *MetadataStorage) DeepCopyInto(out *MetadataStorage)

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

type MongoArbiterNode added in v0.27.0

type MongoArbiterNode struct {
	// ConfigSecret is an optional field to provide custom configuration file for database (i.e mongod.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*MongoArbiterNode) DeepCopy added in v0.27.0

func (in *MongoArbiterNode) DeepCopy() *MongoArbiterNode

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

func (*MongoArbiterNode) DeepCopyInto added in v0.27.0

func (in *MongoArbiterNode) DeepCopyInto(out *MongoArbiterNode)

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

type MongoDB

type MongoDB struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MongoDBSpec   `json:"spec,omitempty"`
	Status            MongoDBStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mongodbs,singular=mongodb,shortName=mg,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MongoDB) AppBindingMeta

func (m MongoDB) AppBindingMeta() appcat.AppBindingMeta

func (MongoDB) ArbiterLabels added in v0.27.0

func (m MongoDB) ArbiterLabels() map[string]string

func (MongoDB) ArbiterNodeName added in v0.27.0

func (m MongoDB) ArbiterNodeName() string

func (MongoDB) ArbiterSelectors added in v0.27.0

func (m MongoDB) ArbiterSelectors() map[string]string

func (MongoDB) ArbiterShardLabels added in v0.27.0

func (m MongoDB) ArbiterShardLabels(nodeNum int32) map[string]string

func (MongoDB) ArbiterShardNodeName added in v0.27.0

func (m MongoDB) ArbiterShardNodeName(nodeNum int32) string

func (MongoDB) ArbiterShardSelectors added in v0.27.0

func (m MongoDB) ArbiterShardSelectors(nodeNum int32) map[string]string

func (*MongoDB) AsOwner added in v0.35.0

func (m *MongoDB) AsOwner() *metav1.OwnerReference

func (*MongoDB) CertificateName

func (m *MongoDB) CertificateName(alias MongoDBCertificateAlias, stsName string) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*MongoDB) ConfigSecretName added in v0.16.0

func (m *MongoDB) ConfigSecretName(nodeType string) string

ConfigSecretName returns the secret name for different nodetype

func (MongoDB) ConfigSvrDSN

func (m MongoDB) ConfigSvrDSN() string

ConfigSvrDSN = <configSvrReplName>/<host1:port>,<host2:port>,<host3:port> Here, host1 = <pod-name>.<governing-serviceName>.svc

func (MongoDB) ConfigSvrHosts

func (m MongoDB) ConfigSvrHosts() []string

func (MongoDB) ConfigSvrLabels

func (m MongoDB) ConfigSvrLabels() map[string]string

func (MongoDB) ConfigSvrNodeName

func (m MongoDB) ConfigSvrNodeName() string

func (MongoDB) ConfigSvrRepSetName

func (m MongoDB) ConfigSvrRepSetName() string

func (MongoDB) ConfigSvrSelectors

func (m MongoDB) ConfigSvrSelectors() map[string]string

func (*MongoDB) ConvertFrom added in v0.47.0

func (dst *MongoDB) ConvertFrom(srcRaw rtconv.Hub) error

func (*MongoDB) ConvertTo added in v0.47.0

func (src *MongoDB) ConvertTo(dstRaw rtconv.Hub) error

func (MongoDB) CustomResourceDefinition

func (_ MongoDB) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MongoDB) DeepCopy

func (in *MongoDB) DeepCopy() *MongoDB

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

func (*MongoDB) DeepCopyInto

func (in *MongoDB) DeepCopyInto(out *MongoDB)

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

func (*MongoDB) DeepCopyObject

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

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

func (MongoDB) GetAuthSecretName added in v0.29.0

func (m MongoDB) GetAuthSecretName() string

func (*MongoDB) GetCertSecretName added in v0.18.0

func (m *MongoDB) GetCertSecretName(alias MongoDBCertificateAlias, stsName string) string

GetCertSecretName returns the secret name for a certificate alias

func (MongoDB) GetCorrespondingArbiterStsName added in v0.27.0

func (m MongoDB) GetCorrespondingArbiterStsName(replStsName string) string

func (MongoDB) GetCorrespondingHiddenStsName added in v0.29.0

func (m MongoDB) GetCorrespondingHiddenStsName(replStsName string) string

func (MongoDB) GetCorrespondingReplicaStsName added in v0.27.0

func (m MongoDB) GetCorrespondingReplicaStsName(arbStsName string) string

func (MongoDB) GetCorrespondingReplicaStsNameFromHidden added in v0.29.0

func (m MongoDB) GetCorrespondingReplicaStsNameFromHidden(hiddenStsName string) string

func (*MongoDB) GetDefaultLivenessProbeSpec

func (m *MongoDB) GetDefaultLivenessProbeSpec(mgVersion *v1alpha1.MongoDBVersion, isArbiter ...bool) *core.Probe

func (*MongoDB) GetDefaultReadinessProbeSpec

func (m *MongoDB) GetDefaultReadinessProbeSpec(mgVersion *v1alpha1.MongoDBVersion, isArbiter ...bool) *core.Probe

func (*MongoDB) GetEntryCommand added in v0.33.0

func (m *MongoDB) GetEntryCommand(mgVersion *v1alpha1.MongoDBVersion) string

func (MongoDB) GetShardNumber added in v0.27.0

func (m MongoDB) GetShardNumber(shardName string) int

func (*MongoDB) GetURL added in v0.28.0

func (m *MongoDB) GetURL(stsName string) string

func (MongoDB) GoverningServiceName

func (m MongoDB) GoverningServiceName(name string) string

Governing Service Name. Here, name parameter is either OffshootName, ShardNodeName, ConfigSvrNodeName , ArbiterNodeName or HiddenNodeName

func (MongoDB) HiddenNodeLabels added in v0.29.0

func (m MongoDB) HiddenNodeLabels() map[string]string

func (MongoDB) HiddenNodeName added in v0.29.0

func (m MongoDB) HiddenNodeName() string

func (MongoDB) HiddenNodeSelectors added in v0.29.0

func (m MongoDB) HiddenNodeSelectors() map[string]string

func (MongoDB) HiddenNodeShardLabels added in v0.29.0

func (m MongoDB) HiddenNodeShardLabels(nodeNum int32) map[string]string

func (MongoDB) HiddenNodeShardSelectors added in v0.29.0

func (m MongoDB) HiddenNodeShardSelectors(nodeNum int32) map[string]string

func (MongoDB) HiddenShardNodeName added in v0.29.0

func (m MongoDB) HiddenShardNodeName(nodeNum int32) string

func (MongoDB) HostAddress

func (m MongoDB) HostAddress() string

HostAddress returns serviceName for standalone mongodb. and, for replica set = <replName>/<host1>,<host2>,<host3> Here, host1 = <pod-name>.<governing-serviceName> Governing service name is used for replica host because, we used governing service name as part of host while adding members to replicaset.

func (MongoDB) HostAddressOnlyCoreMembers added in v0.29.0

func (m MongoDB) HostAddressOnlyCoreMembers() string

func (MongoDB) Hosts

func (m MongoDB) Hosts() []string

func (MongoDB) HostsOnlyCoreMembers added in v0.29.0

func (m MongoDB) HostsOnlyCoreMembers() []string

func (*MongoDB) KeyFileRequired

func (m *MongoDB) KeyFileRequired() bool

func (MongoDB) MongosHosts

func (m MongoDB) MongosHosts() []string

func (MongoDB) MongosLabels

func (m MongoDB) MongosLabels() map[string]string

func (MongoDB) MongosNodeName

func (m MongoDB) MongosNodeName() string

func (MongoDB) MongosSelectors

func (m MongoDB) MongosSelectors() map[string]string

func (MongoDB) OffshootLabels

func (m MongoDB) OffshootLabels() map[string]string

func (MongoDB) OffshootLabelsWhenOthers added in v0.29.0

func (m MongoDB) OffshootLabelsWhenOthers() map[string]string

func (MongoDB) OffshootName

func (m MongoDB) OffshootName() string

func (MongoDB) OffshootSelectors

func (m MongoDB) OffshootSelectors() map[string]string

func (MongoDB) OffshootSelectorsWhenOthers added in v0.29.0

func (m MongoDB) OffshootSelectorsWhenOthers() map[string]string

func (MongoDB) PodControllerLabels added in v0.23.0

func (m MongoDB) PodControllerLabels(podControllerLabels map[string]string, extraLabels ...map[string]string) map[string]string

func (MongoDB) PodLabels added in v0.23.0

func (m MongoDB) PodLabels(podTemplateLabels map[string]string, extraLabels ...map[string]string) map[string]string

func (MongoDB) RepSetName

func (m MongoDB) RepSetName() string

RepSetName returns Replicaset name only for spec.replicaset

func (*MongoDB) ReplicasAreReady

func (m *MongoDB) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (MongoDB) ResourceFQN added in v0.16.0

func (m MongoDB) ResourceFQN() string

func (MongoDB) ResourceKind

func (m MongoDB) ResourceKind() string

func (MongoDB) ResourcePlural

func (m MongoDB) ResourcePlural() string

func (MongoDB) ResourceShortCode

func (m MongoDB) ResourceShortCode() string

func (MongoDB) ResourceSingular

func (m MongoDB) ResourceSingular() string

func (MongoDB) ServiceLabels added in v0.23.0

func (m MongoDB) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (MongoDB) ServiceName

func (m MongoDB) ServiceName() string

func (*MongoDB) SetDefaults

func (m *MongoDB) SetDefaults(mgVersion *v1alpha1.MongoDBVersion, topology *core_util.Topology)

func (*MongoDB) SetHealthCheckerDefaults added in v0.28.0

func (m *MongoDB) SetHealthCheckerDefaults()

func (*MongoDB) SetTLSDefaults

func (m *MongoDB) SetTLSDefaults()

func (MongoDB) ShardCommonNodeName

func (m MongoDB) ShardCommonNodeName() string

func (MongoDB) ShardDSN

func (m MongoDB) ShardDSN(nodeNum int32) string

ShardDSN = <shardReplName>/<host1:port>,<host2:port>,<host3:port> Here, host1 = <pod-name>.<governing-serviceName>.svc

func (MongoDB) ShardDSNOnlyCoreMembers added in v0.29.0

func (m MongoDB) ShardDSNOnlyCoreMembers(nodeNum int32) string

func (MongoDB) ShardHosts

func (m MongoDB) ShardHosts(nodeNum int32) []string

func (MongoDB) ShardHostsOnlyCoreMembers added in v0.29.0

func (m MongoDB) ShardHostsOnlyCoreMembers(nodeNum int32) []string

func (MongoDB) ShardLabels

func (m MongoDB) ShardLabels(nodeNum int32) map[string]string

func (MongoDB) ShardLabelsWhenOthers added in v0.29.0

func (m MongoDB) ShardLabelsWhenOthers(nodeNum int32) map[string]string

func (MongoDB) ShardNodeName

func (m MongoDB) ShardNodeName(nodeNum int32) string

func (MongoDB) ShardNodeTemplate

func (m MongoDB) ShardNodeTemplate() string

func (MongoDB) ShardRepSetName

func (m MongoDB) ShardRepSetName(nodeNum int32) string

func (MongoDB) ShardSelectors

func (m MongoDB) ShardSelectors(nodeNum int32) map[string]string

func (MongoDB) ShardSelectorsWhenOthers added in v0.29.0

func (m MongoDB) ShardSelectorsWhenOthers(nodeNum int32) map[string]string

func (MongoDB) StatsService

func (m MongoDB) StatsService() mona.StatsAccessor

func (MongoDB) StatsServiceLabels

func (m MongoDB) StatsServiceLabels() map[string]string

type MongoDBCertificateAlias

type MongoDBCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	MongoDBServerCert          MongoDBCertificateAlias = "server"
	MongoDBClientCert          MongoDBCertificateAlias = "client"
	MongoDBMetricsExporterCert MongoDBCertificateAlias = "metrics-exporter"
)

type MongoDBConfigNode

type MongoDBConfigNode struct {
	// MongoDB config server node configs
	MongoDBNode `json:",inline"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// EphemeralStorage spec to specify the configuration of ephemeral storage type.
	EphemeralStorage *core.EmptyDirVolumeSource `json:"ephemeralStorage,omitempty"`
}

func (*MongoDBConfigNode) DeepCopy

func (in *MongoDBConfigNode) DeepCopy() *MongoDBConfigNode

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

func (*MongoDBConfigNode) DeepCopyInto

func (in *MongoDBConfigNode) DeepCopyInto(out *MongoDBConfigNode)

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

type MongoDBList

type MongoDBList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MongoDB TPR objects
	Items []MongoDB `json:"items,omitempty"`
}

func (*MongoDBList) DeepCopy

func (in *MongoDBList) DeepCopy() *MongoDBList

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

func (*MongoDBList) DeepCopyInto

func (in *MongoDBList) DeepCopyInto(out *MongoDBList)

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

func (*MongoDBList) DeepCopyObject

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

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

type MongoDBMongosNode

type MongoDBMongosNode struct {
	// MongoDB mongos node configs
	MongoDBNode `json:",inline"`
}

func (*MongoDBMongosNode) DeepCopy

func (in *MongoDBMongosNode) DeepCopy() *MongoDBMongosNode

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

func (*MongoDBMongosNode) DeepCopyInto

func (in *MongoDBMongosNode) DeepCopyInto(out *MongoDBMongosNode)

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

type MongoDBNode

type MongoDBNode struct {
	// Replicas represents number of replicas of this specific node.
	// If current node has replicaset enabled, then replicas is the amount of replicaset nodes.
	Replicas int32 `json:"replicas"`

	// Prefix is the name prefix of this node.
	Prefix string `json:"prefix,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e mongod.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*MongoDBNode) DeepCopy

func (in *MongoDBNode) DeepCopy() *MongoDBNode

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

func (*MongoDBNode) DeepCopyInto

func (in *MongoDBNode) DeepCopyInto(out *MongoDBNode)

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

type MongoDBReplicaSet

type MongoDBReplicaSet struct {
	// Name of replicaset
	Name string `json:"name"`
}

func (*MongoDBReplicaSet) DeepCopy

func (in *MongoDBReplicaSet) DeepCopy() *MongoDBReplicaSet

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

func (*MongoDBReplicaSet) DeepCopyInto

func (in *MongoDBReplicaSet) DeepCopyInto(out *MongoDBReplicaSet)

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

type MongoDBShardNode

type MongoDBShardNode struct {
	// Shards represents number of shards for shard type of node
	// More info: https://docs.mongodb.com/manual/core/sharded-cluster-shards/
	Shards int32 `json:"shards"`

	// MongoDB sharding node configs
	MongoDBNode `json:",inline"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// EphemeralStorage spec to specify the configuration of ephemeral storage type.
	EphemeralStorage *core.EmptyDirVolumeSource `json:"ephemeralStorage,omitempty"`
}

func (*MongoDBShardNode) DeepCopy

func (in *MongoDBShardNode) DeepCopy() *MongoDBShardNode

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

func (*MongoDBShardNode) DeepCopyInto

func (in *MongoDBShardNode) DeepCopyInto(out *MongoDBShardNode)

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

type MongoDBShardingTopology

type MongoDBShardingTopology struct {
	// Shard component of mongodb.
	// More info: https://docs.mongodb.com/manual/core/sharded-cluster-shards/
	Shard MongoDBShardNode `json:"shard"`

	// Config Server (metadata) component of mongodb.
	// More info: https://docs.mongodb.com/manual/core/sharded-cluster-config-servers/
	ConfigServer MongoDBConfigNode `json:"configServer"`

	// Mongos (router) component of mongodb.
	// More info: https://docs.mongodb.com/manual/core/sharded-cluster-query-router/
	Mongos MongoDBMongosNode `json:"mongos"`
}

func (*MongoDBShardingTopology) DeepCopy

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

func (*MongoDBShardingTopology) DeepCopyInto

func (in *MongoDBShardingTopology) DeepCopyInto(out *MongoDBShardingTopology)

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

type MongoDBSpec

type MongoDBSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of MongoDB to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a MongoDB database.
	Replicas *int32 `json:"replicas,omitempty"`

	// MongoDB replica set
	ReplicaSet *MongoDBReplicaSet `json:"replicaSet,omitempty"`

	// MongoDB sharding topology.
	ShardTopology *MongoDBShardingTopology `json:"shardTopology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// EphemeralStorage spec to specify the configuration of ephemeral storage type.
	EphemeralStorage *core.EmptyDirVolumeSource `json:"ephemeralStorage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ClusterAuthMode for replicaset or sharding. (default will be x509 if sslmode is not `disabled`.)
	// See available ClusterAuthMode: https://docs.mongodb.com/manual/reference/program/mongod/#cmdoption-mongod-clusterauthmode
	ClusterAuthMode ClusterAuthMode `json:"clusterAuthMode,omitempty"`

	// SSLMode for both standalone and clusters. (default, disabled.)
	// See more options: https://docs.mongodb.com/manual/reference/program/mongod/#cmdoption-mongod-sslmode
	SSLMode SSLMode `json:"sslMode,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e mongod.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Secret for KeyFileSecret. Contains keyfile `key.txt` if spec.clusterAuthMode == keyFile || sendKeyFile
	KeyFileSecret *core.LocalObjectReference `json:"keyFileSecret,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// StorageEngine can be wiredTiger (default) or inMemory
	// See available StorageEngine: https://docs.mongodb.com/manual/core/storage-engines/
	StorageEngine StorageEngine `json:"storageEngine,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// AllowedSchemas defines the types of database schemas that MAY refer to
	// a database instance and the trusted namespaces where those schema resources MAY be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// Mongo Arbiter component of mongodb.
	// More info: https://docs.mongodb.com/manual/core/replica-set-arbiter/
	// +optional
	// +nullable
	Arbiter *MongoArbiterNode `json:"arbiter,omitempty"`

	// Hidden component of mongodb which is invisible to client applications
	// More info: https://www.mongodb.com/docs/manual/core/replica-set-hidden-member/
	// +optional
	// +nullable
	Hidden *MongoHiddenNode `json:"hidden,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Archiver controls database backup using Archiver CR
	// +optional
	Archiver *Archiver `json:"archiver,omitempty"`
}

func (*MongoDBSpec) DeepCopy

func (in *MongoDBSpec) DeepCopy() *MongoDBSpec

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

func (*MongoDBSpec) DeepCopyInto

func (in *MongoDBSpec) DeepCopyInto(out *MongoDBSpec)

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

func (*MongoDBSpec) GetPersistentSecrets

func (m *MongoDBSpec) GetPersistentSecrets() []string

type MongoDBStatus

type MongoDBStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*MongoDBStatus) DeepCopy

func (in *MongoDBStatus) DeepCopy() *MongoDBStatus

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

func (*MongoDBStatus) DeepCopyInto

func (in *MongoDBStatus) DeepCopyInto(out *MongoDBStatus)

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

type MongoHiddenNode added in v0.29.0

type MongoHiddenNode struct {
	// ConfigSecret is an optional field to provide custom configuration file for database (i.e mongod.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// Replicas represents number of replicas of this specific node.
	// If current node has replicaset enabled, then replicas is the amount of replicaset nodes.
	Replicas int32 `json:"replicas"`

	// Storage to specify how storage shall be used.
	Storage core.PersistentVolumeClaimSpec `json:"storage"`
}

func (*MongoHiddenNode) DeepCopy added in v0.29.0

func (in *MongoHiddenNode) DeepCopy() *MongoHiddenNode

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

func (*MongoHiddenNode) DeepCopyInto added in v0.29.0

func (in *MongoHiddenNode) DeepCopyInto(out *MongoHiddenNode)

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

type MongoShellScriptName added in v0.27.0

type MongoShellScriptName string
const (
	ScriptNameCommon     MongoShellScriptName = "common.sh"
	ScriptNameInstall    MongoShellScriptName = "install.sh"
	ScriptNameMongos     MongoShellScriptName = "mongos.sh"
	ScriptNameShard      MongoShellScriptName = "sharding.sh"
	ScriptNameConfig     MongoShellScriptName = "configdb.sh"
	ScriptNameReplicaset MongoShellScriptName = "replicaset.sh"
	ScriptNameArbiter    MongoShellScriptName = "arbiter.sh"
	ScriptNameHidden     MongoShellScriptName = "hidden.sh"
)

type MySQL

type MySQL struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              MySQLSpec   `json:"spec,omitempty"`
	Status            MySQLStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=mysqls,singular=mysql,shortName=my,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (MySQL) AppBindingMeta

func (m MySQL) AppBindingMeta() appcat.AppBindingMeta

func (*MySQL) AsOwner added in v0.35.0

func (m *MySQL) AsOwner() *metav1.OwnerReference

func (*MySQL) CertificateName

func (m *MySQL) CertificateName(alias MySQLCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*MySQL) ConvertFrom added in v0.47.0

func (dst *MySQL) ConvertFrom(srcRaw rtconv.Hub) error

func (*MySQL) ConvertTo added in v0.47.0

func (src *MySQL) ConvertTo(dstRaw rtconv.Hub) error

func (MySQL) CustomResourceDefinition

func (_ MySQL) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*MySQL) DeepCopy

func (in *MySQL) DeepCopy() *MySQL

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

func (*MySQL) DeepCopyInto

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

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

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

func (MySQL) GetAuthSecretName

func (m MySQL) GetAuthSecretName() string

func (*MySQL) GetCertSecretName added in v0.28.0

func (m *MySQL) GetCertSecretName(alias MySQLCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any otherwise returns default certificate secret name for the given alias.

func (MySQL) GetNameSpacedName added in v0.25.0

func (m MySQL) GetNameSpacedName() string

func (*MySQL) GetRouterName added in v0.23.0

func (m *MySQL) GetRouterName() string

func (MySQL) GoverningServiceName

func (m MySQL) GoverningServiceName() string

func (MySQL) Hosts added in v0.16.0

func (m MySQL) Hosts() []string

func (*MySQL) IsInnoDBCluster added in v0.23.0

func (m *MySQL) IsInnoDBCluster() bool

func (*MySQL) IsRemoteReplica added in v0.36.0

func (m *MySQL) IsRemoteReplica() bool

func (*MySQL) IsSemiSync added in v0.27.0

func (m *MySQL) IsSemiSync() bool

func (*MySQL) MySQLTLSArgs added in v0.16.0

func (m *MySQL) MySQLTLSArgs() []string

func (MySQL) OffshootLabels

func (m MySQL) OffshootLabels() map[string]string

func (MySQL) OffshootName

func (m MySQL) OffshootName() string

func (MySQL) OffshootSelectors

func (m MySQL) OffshootSelectors() map[string]string

func (MySQL) PeerName

func (m MySQL) PeerName(idx int) string

func (MySQL) PodControllerLabels added in v0.23.0

func (m MySQL) PodControllerLabels() map[string]string

func (MySQL) PodLabels added in v0.23.0

func (m MySQL) PodLabels() map[string]string

func (MySQL) PrimaryServiceDNS added in v0.16.0

func (m MySQL) PrimaryServiceDNS() string

func (*MySQL) ReplicasAreReady

func (m *MySQL) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (MySQL) ResourceFQN added in v0.16.0

func (m MySQL) ResourceFQN() string

func (MySQL) ResourceKind

func (m MySQL) ResourceKind() string

func (MySQL) ResourcePlural

func (m MySQL) ResourcePlural() string

func (MySQL) ResourceShortCode

func (m MySQL) ResourceShortCode() string

func (MySQL) ResourceSingular

func (m MySQL) ResourceSingular() string

func (MySQL) RouterOffshootLabels added in v0.23.0

func (m MySQL) RouterOffshootLabels() map[string]string

func (MySQL) RouterOffshootSelectors added in v0.23.0

func (m MySQL) RouterOffshootSelectors() map[string]string

func (MySQL) RouterPodControllerLabels added in v0.23.0

func (m MySQL) RouterPodControllerLabels() map[string]string

func (MySQL) RouterPodLabels added in v0.23.0

func (m MySQL) RouterPodLabels() map[string]string

func (MySQL) ServiceLabels added in v0.23.0

func (m MySQL) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (MySQL) ServiceName

func (m MySQL) ServiceName() string

func (*MySQL) SetDefaults

func (m *MySQL) SetDefaults(myVersion *v1alpha1.MySQLVersion, topology *core_util.Topology)

func (*MySQL) SetHealthCheckerDefaults added in v0.28.0

func (m *MySQL) SetHealthCheckerDefaults()

func (*MySQL) SetTLSDefaults

func (m *MySQL) SetTLSDefaults()

func (MySQL) StandbyServiceDNS added in v0.25.0

func (m MySQL) StandbyServiceDNS() string

func (MySQL) StandbyServiceName

func (m MySQL) StandbyServiceName() string

func (MySQL) StatsService

func (m MySQL) StatsService() mona.StatsAccessor

func (MySQL) StatsServiceLabels

func (m MySQL) StatsServiceLabels() map[string]string

func (*MySQL) UsesGroupReplication

func (m *MySQL) UsesGroupReplication() bool

type MySQLCertificateAlias

type MySQLCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	MySQLServerCert          MySQLCertificateAlias = "server"
	MySQLClientCert          MySQLCertificateAlias = "client"
	MySQLMetricsExporterCert MySQLCertificateAlias = "metrics-exporter"
	MySQLRouterCert          MySQLCertificateAlias = "router"
)

type MySQLGroupMode

type MySQLGroupMode string

+kubebuilder:validation:Enum=Single-Primary

const (
	MySQLGroupModeSinglePrimary MySQLGroupMode = "Single-Primary"
)

type MySQLGroupSpec

type MySQLGroupSpec struct {
	// TODO: "Multi-Primary" needs to be implemented
	// Group Replication can be deployed in either "Single-Primary" or "Multi-Primary" mode
	// +kubebuilder:default=Single-Primary
	Mode *MySQLGroupMode `json:"mode,omitempty"`

	// Group name is a version 4 UUID
	// ref: https://dev.mysql.com/doc/refman/5.7/en/group-replication-options.html#sysvar_group_replication_group_name
	Name string `json:"name,omitempty"`
}

func (*MySQLGroupSpec) DeepCopy

func (in *MySQLGroupSpec) DeepCopy() *MySQLGroupSpec

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

func (*MySQLGroupSpec) DeepCopyInto

func (in *MySQLGroupSpec) DeepCopyInto(out *MySQLGroupSpec)

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

type MySQLInnoDBClusterSpec added in v0.23.0

type MySQLInnoDBClusterSpec struct {
	// +kubebuilder:default=Single-Primary
	// +optional
	Mode *MySQLGroupMode `json:"mode,omitempty"`

	Router MySQLRouterSpec `json:"router,omitempty"`
}

func (*MySQLInnoDBClusterSpec) DeepCopy added in v0.23.0

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

func (*MySQLInnoDBClusterSpec) DeepCopyInto added in v0.23.0

func (in *MySQLInnoDBClusterSpec) DeepCopyInto(out *MySQLInnoDBClusterSpec)

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

type MySQLList

type MySQLList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of MySQL TPR objects
	Items []MySQL `json:"items,omitempty"`
}

func (*MySQLList) DeepCopy

func (in *MySQLList) DeepCopy() *MySQLList

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

func (*MySQLList) DeepCopyInto

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

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

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

type MySQLMode added in v0.25.0

type MySQLMode string

+kubebuilder:validation:Enum=GroupReplication;InnoDBCluster;RemoteReplica;SemiSync

const (
	MySQLModeGroupReplication MySQLMode = "GroupReplication"
	MySQLModeInnoDBCluster    MySQLMode = "InnoDBCluster"
	MySQLModeRemoteReplica    MySQLMode = "RemoteReplica"
	MySQLModeSemiSync         MySQLMode = "SemiSync"
)

type MySQLRouterSpec added in v0.23.0

type MySQLRouterSpec struct {
	// +optional
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum:=1
	Replicas *int32 `json:"replicas,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose MySQL router
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*MySQLRouterSpec) DeepCopy added in v0.23.0

func (in *MySQLRouterSpec) DeepCopy() *MySQLRouterSpec

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

func (*MySQLRouterSpec) DeepCopyInto added in v0.23.0

func (in *MySQLRouterSpec) DeepCopyInto(out *MySQLRouterSpec)

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

type MySQLSpec

type MySQLSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of MySQL to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a MySQL database. In case of MySQL group
	// replication, max allowed value is 9 (default 3).
	// (see ref: https://dev.mysql.com/doc/refman/5.7/en/group-replication-frequently-asked-questions.html)
	Replicas *int32 `json:"replicas,omitempty"`

	// MySQL cluster topology
	Topology *MySQLTopology `json:"topology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e custom-mysql.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL bool `json:"requireSSL,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// Indicated whether to use DNS or IP address to address pods in a db cluster.
	// If IP address is used, HostNetwork will be used. Defaults to DNS.
	// +kubebuilder:default=DNS
	// +optional
	// +default="DNS"
	UseAddressType AddressType `json:"useAddressType,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// AllowedSchemas defines the types of database schemas that may refer to
	// a database instance and the trusted namespaces where those schema resources may be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// AllowedReadReplicas defines the types of read replicas that MAY be attached to a
	// MySQL instance and the trusted namespaces where those Read Replica resources MAY be
	// present.
	//
	// Support: Core
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedReadReplicas *AllowedConsumers `json:"allowedReadReplicas,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Archiver controls database backup using Archiver CR
	// +optional
	Archiver *Archiver `json:"archiver,omitempty"`
}

func (*MySQLSpec) DeepCopy

func (in *MySQLSpec) DeepCopy() *MySQLSpec

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

func (*MySQLSpec) DeepCopyInto

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

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

func (*MySQLSpec) GetPersistentSecrets

func (m *MySQLSpec) GetPersistentSecrets() []string

type MySQLStatus

type MySQLStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*MySQLStatus) DeepCopy

func (in *MySQLStatus) DeepCopy() *MySQLStatus

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

func (*MySQLStatus) DeepCopyInto

func (in *MySQLStatus) DeepCopyInto(out *MySQLStatus)

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

type MySQLTopology added in v0.25.0

type MySQLTopology struct {
	// If set to -
	// "GroupReplication", GroupSpec is required and MySQL servers will start  a replication group
	Mode *MySQLMode `json:"mode,omitempty"`

	// Group replication info for MySQL
	// +optional
	Group *MySQLGroupSpec `json:"group,omitempty"`

	// InnoDBCluster replication info for MySQL InnodbCluster
	// +optional
	InnoDBCluster *MySQLInnoDBClusterSpec `json:"innoDBCluster,omitempty"`

	// RemoteReplica implies that the instance will be a MySQL Read Only Replica
	// and it will take reference of  appbinding of the source
	// +optional
	RemoteReplica *RemoteReplicaSpec `json:"remoteReplica,omitempty"`
	// +optional
	SemiSync *SemiSyncSpec `json:"semiSync,omitempty"`
}

func (*MySQLTopology) DeepCopy added in v0.25.0

func (in *MySQLTopology) DeepCopy() *MySQLTopology

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

func (*MySQLTopology) DeepCopyInto added in v0.25.0

func (in *MySQLTopology) DeepCopyInto(out *MySQLTopology)

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

type MySQLUser added in v0.28.0

type MySQLUser struct {
	Username string `json:"username"`

	// +optional
	Active *int `json:"active,omitempty"`

	// +optional
	UseSSL int `json:"use_ssl,omitempty"`

	// +optional
	DefaultHostgroup int `json:"default_hostgroup,omitempty"`

	// +optional
	DefaultSchema string `json:"default_schema,omitempty"`

	// +optional
	SchemaLocked int `json:"schema_locked,omitempty"`

	// +optional
	TransactionPersistent *int `json:"transaction_persistent,omitempty"`

	// +optional
	FastForward int `json:"fast_forward,omitempty"`

	// +optional
	Backend *int `json:"backend,omitempty"`

	// +optional
	Frontend *int `json:"frontend,omitempty"`

	// +optional
	MaxConnections *int32 `json:"max_connections,omitempty"`

	// +optional
	Attributes string `json:"attributes,omitempty"`

	// +optional
	Comment string `json:"comment,omitempty"`
}

func (*MySQLUser) DeepCopy added in v0.28.0

func (in *MySQLUser) DeepCopy() *MySQLUser

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

func (*MySQLUser) DeepCopyInto added in v0.28.0

func (in *MySQLUser) DeepCopyInto(out *MySQLUser)

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

type NamedServiceTemplateSpec added in v0.15.0

type NamedServiceTemplateSpec struct {
	// Alias represents the identifier of the service.
	Alias ServiceAlias `json:"alias"`

	// ServiceTemplate is an optional configuration for a service used to expose database
	// +optional
	ofst.ServiceTemplateSpec `json:",inline,omitempty"`
}

func (*NamedServiceTemplateSpec) DeepCopy added in v0.15.0

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

func (*NamedServiceTemplateSpec) DeepCopyInto added in v0.15.0

func (in *NamedServiceTemplateSpec) DeepCopyInto(out *NamedServiceTemplateSpec)

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

type PerconaXtraDB

type PerconaXtraDB struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PerconaXtraDBSpec   `json:"spec,omitempty"`
	Status            PerconaXtraDBStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=perconaxtradbs,singular=perconaxtradb,shortName=px,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (PerconaXtraDB) AppBindingMeta

func (p PerconaXtraDB) AppBindingMeta() appcat.AppBindingMeta

func (*PerconaXtraDB) AsOwner added in v0.35.0

func (p *PerconaXtraDB) AsOwner() *metav1.OwnerReference

func (*PerconaXtraDB) CertFilePath added in v0.28.0

func (p *PerconaXtraDB) CertFilePath(certAlias PerconaXtraDBCertificateAlias, certFileName string) string

func (*PerconaXtraDB) CertMountPath added in v0.28.0

func (p *PerconaXtraDB) CertMountPath(alias PerconaXtraDBCertificateAlias) string

func (*PerconaXtraDB) CertificateName added in v0.28.0

func (p *PerconaXtraDB) CertificateName(alias PerconaXtraDBCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (PerconaXtraDB) ClusterName

func (p PerconaXtraDB) ClusterName() string

func (*PerconaXtraDB) ConvertFrom added in v0.47.0

func (dst *PerconaXtraDB) ConvertFrom(srcRaw rtconv.Hub) error

func (*PerconaXtraDB) ConvertTo added in v0.47.0

func (src *PerconaXtraDB) ConvertTo(dstRaw rtconv.Hub) error

func (PerconaXtraDB) CustomResourceDefinition

func (_ PerconaXtraDB) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PerconaXtraDB) DeepCopy

func (in *PerconaXtraDB) DeepCopy() *PerconaXtraDB

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

func (*PerconaXtraDB) DeepCopyInto

func (in *PerconaXtraDB) DeepCopyInto(out *PerconaXtraDB)

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

func (*PerconaXtraDB) DeepCopyObject

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

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

func (PerconaXtraDB) GetAuthSecretName

func (p PerconaXtraDB) GetAuthSecretName() string

func (*PerconaXtraDB) GetCertSecretName added in v0.28.0

func (p *PerconaXtraDB) GetCertSecretName(alias PerconaXtraDBCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (PerconaXtraDB) GetMonitorSecretName added in v0.29.0

func (p PerconaXtraDB) GetMonitorSecretName() string

func (PerconaXtraDB) GetReplicationSecretName added in v0.29.0

func (p PerconaXtraDB) GetReplicationSecretName() string

func (PerconaXtraDB) GoverningServiceName

func (p PerconaXtraDB) GoverningServiceName() string

func (PerconaXtraDB) OffshootLabels

func (p PerconaXtraDB) OffshootLabels() map[string]string

func (PerconaXtraDB) OffshootName

func (p PerconaXtraDB) OffshootName() string

func (PerconaXtraDB) OffshootSelectors

func (p PerconaXtraDB) OffshootSelectors() map[string]string

func (PerconaXtraDB) PeerName

func (p PerconaXtraDB) PeerName(idx int) string

func (PerconaXtraDB) PodControllerLabels added in v0.23.0

func (p PerconaXtraDB) PodControllerLabels() map[string]string

func (PerconaXtraDB) PodLabels added in v0.23.0

func (p PerconaXtraDB) PodLabels() map[string]string

func (PerconaXtraDB) PrimaryServiceDNS added in v0.28.0

func (p PerconaXtraDB) PrimaryServiceDNS() string

func (*PerconaXtraDB) ReplicasAreReady

func (p *PerconaXtraDB) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (PerconaXtraDB) ResourceFQN added in v0.16.0

func (p PerconaXtraDB) ResourceFQN() string

func (PerconaXtraDB) ResourceKind

func (p PerconaXtraDB) ResourceKind() string

func (PerconaXtraDB) ResourcePlural

func (p PerconaXtraDB) ResourcePlural() string

func (PerconaXtraDB) ResourceShortCode

func (p PerconaXtraDB) ResourceShortCode() string

func (PerconaXtraDB) ResourceSingular

func (p PerconaXtraDB) ResourceSingular() string

func (PerconaXtraDB) ServiceLabels added in v0.23.0

func (p PerconaXtraDB) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (PerconaXtraDB) ServiceName

func (p PerconaXtraDB) ServiceName() string

func (*PerconaXtraDB) SetDefaults

func (p *PerconaXtraDB) SetDefaults(pVersion *v1alpha1.PerconaXtraDBVersion, topology *core_util.Topology)

func (*PerconaXtraDB) SetHealthCheckerDefaults added in v0.28.0

func (p *PerconaXtraDB) SetHealthCheckerDefaults()

func (*PerconaXtraDB) SetTLSDefaults added in v0.28.0

func (p *PerconaXtraDB) SetTLSDefaults()

func (PerconaXtraDB) StatsService

func (p PerconaXtraDB) StatsService() mona.StatsAccessor

func (PerconaXtraDB) StatsServiceLabels

func (p PerconaXtraDB) StatsServiceLabels() map[string]string

type PerconaXtraDBCertificateAlias

type PerconaXtraDBCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	PerconaXtraDBServerCert   PerconaXtraDBCertificateAlias = "server"
	PerconaXtraDBClientCert   PerconaXtraDBCertificateAlias = "client"
	PerconaXtraDBExporterCert PerconaXtraDBCertificateAlias = "metrics-exporter"
)

type PerconaXtraDBList

type PerconaXtraDBList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PerconaXtraDB TPR objects
	Items []PerconaXtraDB `json:"items,omitempty"`
}

func (*PerconaXtraDBList) DeepCopy

func (in *PerconaXtraDBList) DeepCopy() *PerconaXtraDBList

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

func (*PerconaXtraDBList) DeepCopyInto

func (in *PerconaXtraDBList) DeepCopyInto(out *PerconaXtraDBList)

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

func (*PerconaXtraDBList) DeepCopyObject

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

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

type PerconaXtraDBSpec

type PerconaXtraDBSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of PerconaXtraDB to be deployed.
	Version string `json:"version"`

	// Replicas defines the number of instances to deploy for PerconaXtraDB.
	Replicas *int32 `json:"replicas,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e custom-mysql.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database server need to be encrypted connections(ssl)
	// +optional
	RequireSSL bool `json:"requireSSL,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// AllowedSchemas defines the types of database schemas that MAY refer to
	// a database instance and the trusted namespaces where those schema resources MAY be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// SystemUserSecrets contains the system user credentials
	// +optional
	SystemUserSecrets *SystemUserSecretsSpec `json:"systemUserSecrets,omitempty"`
}

func (*PerconaXtraDBSpec) DeepCopy

func (in *PerconaXtraDBSpec) DeepCopy() *PerconaXtraDBSpec

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

func (*PerconaXtraDBSpec) DeepCopyInto

func (in *PerconaXtraDBSpec) DeepCopyInto(out *PerconaXtraDBSpec)

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

func (*PerconaXtraDBSpec) GetPersistentSecrets

func (p *PerconaXtraDBSpec) GetPersistentSecrets() []string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

type PerconaXtraDBStatus

type PerconaXtraDBStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*PerconaXtraDBStatus) DeepCopy

func (in *PerconaXtraDBStatus) DeepCopy() *PerconaXtraDBStatus

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

func (*PerconaXtraDBStatus) DeepCopyInto

func (in *PerconaXtraDBStatus) DeepCopyInto(out *PerconaXtraDBStatus)

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

type PgBouncer

type PgBouncer struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PgBouncerSpec   `json:"spec,omitempty"`
	Status            PgBouncerStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=pgbouncers,singular=pgbouncer,shortName=pb,categories={proxy,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (PgBouncer) AppBindingMeta

func (p PgBouncer) AppBindingMeta() appcat.AppBindingMeta

func (*PgBouncer) AsOwner added in v0.35.0

func (p *PgBouncer) AsOwner() *metav1.OwnerReference

func (*PgBouncer) CertificateName

func (p *PgBouncer) CertificateName(alias PgBouncerCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (PgBouncer) ConfigSecretName

func (p PgBouncer) ConfigSecretName() string

func (*PgBouncer) ConvertFrom added in v0.47.0

func (dst *PgBouncer) ConvertFrom(srcRaw rtconv.Hub) error

func (*PgBouncer) ConvertTo added in v0.47.0

func (src *PgBouncer) ConvertTo(dstRaw rtconv.Hub) error

func (PgBouncer) CustomResourceDefinition

func (p PgBouncer) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PgBouncer) DeepCopy

func (in *PgBouncer) DeepCopy() *PgBouncer

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

func (*PgBouncer) DeepCopyInto

func (in *PgBouncer) DeepCopyInto(out *PgBouncer)

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

func (*PgBouncer) DeepCopyObject

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

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

func (PgBouncer) GetAuthSecretName added in v0.29.0

func (p PgBouncer) GetAuthSecretName() string

func (PgBouncer) GetBackendSecretName added in v0.30.0

func (p PgBouncer) GetBackendSecretName() string

func (*PgBouncer) GetCertSecretName added in v0.27.0

func (p *PgBouncer) GetCertSecretName(alias PgBouncerCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any provide, otherwise returns default certificate secret name for the given alias.

func (*PgBouncer) GetPersistentSecrets added in v0.27.0

func (p *PgBouncer) GetPersistentSecrets() []string

GetPersistentSecrets returns auth secret and config secret of a pgbouncer object

func (PgBouncer) GoverningServiceName

func (p PgBouncer) GoverningServiceName() string

func (PgBouncer) OffshootLabels

func (p PgBouncer) OffshootLabels() map[string]string

func (PgBouncer) OffshootName

func (p PgBouncer) OffshootName() string

func (PgBouncer) OffshootSelectors

func (p PgBouncer) OffshootSelectors() map[string]string

func (PgBouncer) PodControllerLabels added in v0.23.0

func (p PgBouncer) PodControllerLabels() map[string]string

func (PgBouncer) PodLabels added in v0.23.0

func (p PgBouncer) PodLabels(backendSecretRV string) map[string]string

func (*PgBouncer) ReplicasAreReady

func (p *PgBouncer) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (PgBouncer) ReplicasServiceName

func (p PgBouncer) ReplicasServiceName() string

func (PgBouncer) ResourceFQN added in v0.16.0

func (p PgBouncer) ResourceFQN() string

func (PgBouncer) ResourceKind

func (p PgBouncer) ResourceKind() string

func (PgBouncer) ResourcePlural

func (p PgBouncer) ResourcePlural() string

func (PgBouncer) ResourceShortCode

func (p PgBouncer) ResourceShortCode() string

func (PgBouncer) ResourceSingular

func (p PgBouncer) ResourceSingular() string

func (PgBouncer) ServiceLabels added in v0.23.0

func (p PgBouncer) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (PgBouncer) ServiceName

func (p PgBouncer) ServiceName() string

func (*PgBouncer) SetDefaults

func (p *PgBouncer) SetDefaults(pgBouncerVersion *catalog.PgBouncerVersion, usesAcme bool)

func (*PgBouncer) SetHealthCheckerDefaults added in v0.28.0

func (p *PgBouncer) SetHealthCheckerDefaults()

func (*PgBouncer) SetSecurityContext added in v0.32.0

func (p *PgBouncer) SetSecurityContext(pgBouncerVersion *catalog.PgBouncerVersion)

func (*PgBouncer) SetTLSDefaults

func (p *PgBouncer) SetTLSDefaults(usesAcme bool)

func (PgBouncer) StatsService

func (p PgBouncer) StatsService() mona.StatsAccessor

func (PgBouncer) StatsServiceLabels

func (p PgBouncer) StatsServiceLabels() map[string]string

type PgBouncerCertificateAlias

type PgBouncerCertificateAlias string

+kubebuilder:validation:Enum=server;archiver;metrics-exporter

const (
	PgBouncerServerCert          PgBouncerCertificateAlias = "server"
	PgBouncerClientCert          PgBouncerCertificateAlias = "client"
	PgBouncerMetricsExporterCert PgBouncerCertificateAlias = "metrics-exporter"
)

type PgBouncerClientAuthMode added in v0.27.0

type PgBouncerClientAuthMode string

PgBouncerClientAuthMode represents the ClientAuthMode of PgBouncer clusters ( replicaset ) We are allowing md5, scram-sha-256, cert as ClientAuthMode +kubebuilder:validation:Enum=md5;scram-sha-256;cert;

const (
	// ClientAuthModeMD5 uses a custom less secure challenge-response mechanism.
	// It prevents password sniffing and avoids storing passwords on the server in plain text but provides no protection
	// if an attacker manages to steal the password hash from the server.
	// Also, the MD5 hash algorithm is nowadays no longer considered secure against determined attacks
	PgBouncerClientAuthModeMD5 PgBouncerClientAuthMode = "md5"

	// ClientAuthModeScram performs SCRAM-SHA-256 authentication, as described in RFC 7677.
	// It is a challenge-response scheme that prevents password sniffing on untrusted connections
	// and supports storing passwords on the server in a cryptographically hashed form that is thought to be secure.
	// This is the most secure of the currently provided methods, but it is not supported by older client libraries.
	PgBouncerClientAuthModeScram PgBouncerClientAuthMode = "scram-sha-256"

	// ClientAuthModeCert represents `cert clientcert=1` auth mode where client need to provide cert and private key for authentication.
	// When server is config with this auth method. Client can't connect with pgbouncer server with password. They need
	// to Send the client cert and client key certificate for authentication.
	PgBouncerClientAuthModeCert PgBouncerClientAuthMode = "cert"
)

type PgBouncerList

type PgBouncerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PgBouncer CRD objects.
	Items []PgBouncer `json:"items,omitempty"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PgBouncerList) DeepCopy

func (in *PgBouncerList) DeepCopy() *PgBouncerList

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

func (*PgBouncerList) DeepCopyInto

func (in *PgBouncerList) DeepCopyInto(out *PgBouncerList)

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

func (*PgBouncerList) DeepCopyObject

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

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

type PgBouncerSSLMode added in v0.27.0

type PgBouncerSSLMode string

+kubebuilder:validation:Enum=disable;allow;prefer;require;verify-ca;verify-full

const (
	// PgBouncerSSLModeDisable represents `disable` sslMode. It ensures that the server does not use TLS/SSL.
	PgBouncerSSLModeDisable PgBouncerSSLMode = "disable"

	// PgBouncerSSLModeAllow represents `allow` sslMode. 	I don't care about security,
	// but I will pay the overhead of encryption if the server insists on it.
	PgBouncerSSLModeAllow PgBouncerSSLMode = "allow"

	// PgBouncerSSLModePrefer represents `preferSSL` sslMode.
	// I don't care about encryption, but I wish to pay the overhead of encryption if the server supports it.
	PgBouncerSSLModePrefer PgBouncerSSLMode = "prefer"

	// PgBouncerSSLModeRequire represents `requiteSSL` sslmode. I want my data to be encrypted, and I accept the overhead.
	// I trust that the network will make sure I always connect to the server I want.
	PgBouncerSSLModeRequire PgBouncerSSLMode = "require"

	// PgBouncerSSLModeVerifyCA represents `verify-ca` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server that I trust.
	PgBouncerSSLModeVerifyCA PgBouncerSSLMode = "verify-ca"

	// PgBouncerSSLModeVerifyFull represents `verify-full` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server I trust, and that it's the one I specify.
	PgBouncerSSLModeVerifyFull PgBouncerSSLMode = "verify-full"
)

type PgBouncerSpec

type PgBouncerSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of PgBouncer to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a PgBouncer instance.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// PodTemplate is an optional configuration for pods.
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// Database to proxy by connection pooling.
	Database Database `json:"database,omitempty"`

	// ConnectionPoolConfig defines Connection pool configuration.
	// +optional
	ConnectionPool *ConnectionPoolConfig `json:"connectionPool,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e mongod.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// Monitor is used monitor database instance.
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// SSLMode for both standalone and clusters. [disable;allow;prefer;require;verify-ca;verify-full]
	SSLMode PgBouncerSSLMode `json:"sslMode,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy PgBouncerTerminationPolicy `json:"terminationPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*PgBouncerSpec) DeepCopy

func (in *PgBouncerSpec) DeepCopy() *PgBouncerSpec

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

func (*PgBouncerSpec) DeepCopyInto

func (in *PgBouncerSpec) DeepCopyInto(out *PgBouncerSpec)

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

type PgBouncerStatus

type PgBouncerStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*PgBouncerStatus) DeepCopy

func (in *PgBouncerStatus) DeepCopy() *PgBouncerStatus

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

func (*PgBouncerStatus) DeepCopyInto

func (in *PgBouncerStatus) DeepCopyInto(out *PgBouncerStatus)

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

type PgBouncerTerminationPolicy added in v0.27.0

type PgBouncerTerminationPolicy string

+kubebuilder:validation:Enum=Delete;WipeOut;DoNotTerminate

const (
	// Deletes database pods, service, pvcs but leave the stash backup data intact.
	PgBouncerTerminationPolicyDelete PgBouncerTerminationPolicy = "Delete"
	// Deletes database pods, service, pvcs and stash backup data.
	PgBouncerTerminationPolicyWipeOut PgBouncerTerminationPolicy = "WipeOut"
	// Rejects attempt to delete database using ValidationWebhook.
	PgBouncerTerminationPolicyDoNotTerminate PgBouncerTerminationPolicy = "DoNotTerminate"
)

type Pgpool added in v0.41.0

type Pgpool struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`
	Spec            PgpoolSpec   `json:"spec,omitempty"`
	Status          PgpoolStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:path=pgpools,singular=pgpool,shortName=pp,categories={datastore,kubedb,appscode,all} +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Pgpool) AppBindingMeta added in v0.46.0

func (p *Pgpool) AppBindingMeta() appcat.AppBindingMeta

func (*Pgpool) CertificateName added in v0.45.0

func (p *Pgpool) CertificateName(alias PgpoolCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*Pgpool) ConfigSecretName added in v0.41.0

func (p *Pgpool) ConfigSecretName() string

func (*Pgpool) CustomResourceDefinition added in v0.41.0

func (p *Pgpool) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Pgpool) DeepCopy added in v0.41.0

func (in *Pgpool) DeepCopy() *Pgpool

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

func (*Pgpool) DeepCopyInto added in v0.41.0

func (in *Pgpool) DeepCopyInto(out *Pgpool)

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

func (*Pgpool) DeepCopyObject added in v0.41.0

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

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

func (*Pgpool) Default added in v0.41.0

func (p *Pgpool) Default()

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

func (*Pgpool) GetAuthSecretName added in v0.41.0

func (p *Pgpool) GetAuthSecretName() string

func (*Pgpool) GetCertSecretName added in v0.45.0

func (p *Pgpool) GetCertSecretName(alias PgpoolCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any provide, otherwise returns default certificate secret name for the given alias.

func (*Pgpool) GetNameSpacedName added in v0.41.0

func (p *Pgpool) GetNameSpacedName() string

func (*Pgpool) GetPersistentSecrets added in v0.41.0

func (p *Pgpool) GetPersistentSecrets() []string

func (*Pgpool) GetSSLMODE added in v0.45.0

func (p *Pgpool) GetSSLMODE(appBinding *appcat.AppBinding) (PgpoolSSLMode, error)

func (*Pgpool) GoverningServiceName added in v0.41.0

func (p *Pgpool) GoverningServiceName() string

func (*Pgpool) IsBackendTLSEnabled added in v0.45.0

func (p *Pgpool) IsBackendTLSEnabled() (bool, error)

func (*Pgpool) OffshootLabels added in v0.41.0

func (p *Pgpool) OffshootLabels() map[string]string

func (*Pgpool) OffshootName added in v0.41.0

func (p *Pgpool) OffshootName() string

func (*Pgpool) OffshootSelectors added in v0.41.0

func (p *Pgpool) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*Pgpool) Owner added in v0.41.0

func (p *Pgpool) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*Pgpool) PetSetName added in v0.44.0

func (p *Pgpool) PetSetName() string

func (*Pgpool) PodControllerLabels added in v0.41.0

func (p *Pgpool) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*Pgpool) PodLabels added in v0.41.0

func (p *Pgpool) PodLabels(extraLabels ...map[string]string) map[string]string

func (*Pgpool) PrimaryServiceDNS added in v0.41.0

func (p *Pgpool) PrimaryServiceDNS() string

PrimaryServiceDNS make primary host dns with require template

func (*Pgpool) ReplicasAreReady added in v0.41.0

func (p *Pgpool) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*Pgpool) ResourceFQN added in v0.41.0

func (p *Pgpool) ResourceFQN() string

func (*Pgpool) ResourceKind added in v0.41.0

func (p *Pgpool) ResourceKind() string

func (*Pgpool) ResourcePlural added in v0.41.0

func (p *Pgpool) ResourcePlural() string

func (*Pgpool) ResourceShortCode added in v0.41.0

func (p *Pgpool) ResourceShortCode() string

func (*Pgpool) ResourceSingular added in v0.41.0

func (p *Pgpool) ResourceSingular() string

func (*Pgpool) ServiceAccountName added in v0.41.0

func (p *Pgpool) ServiceAccountName() string

func (*Pgpool) ServiceLabels added in v0.44.0

func (p *Pgpool) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Pgpool) ServiceName added in v0.41.0

func (p *Pgpool) ServiceName() string

func (*Pgpool) SetDefaults added in v0.41.0

func (p *Pgpool) SetDefaults()

func (*Pgpool) SetHealthCheckerDefaults added in v0.41.0

func (p *Pgpool) SetHealthCheckerDefaults()

func (*Pgpool) SetSecurityContext added in v0.41.0

func (p *Pgpool) SetSecurityContext(ppVersion *catalog.PgpoolVersion, podTemplate *ofst.PodTemplateSpec)

func (*Pgpool) SetTLSDefaults added in v0.45.0

func (p *Pgpool) SetTLSDefaults()

func (*Pgpool) SetupWebhookWithManager added in v0.41.0

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

func (Pgpool) StatsService added in v0.44.0

func (p Pgpool) StatsService() mona.StatsAccessor

func (Pgpool) StatsServiceLabels added in v0.44.0

func (p Pgpool) StatsServiceLabels() map[string]string

func (*Pgpool) TLSSecretName added in v0.45.0

func (p *Pgpool) TLSSecretName() string

func (*Pgpool) ValidateCreate added in v0.41.0

func (p *Pgpool) ValidateCreate() (admission.Warnings, error)

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

func (*Pgpool) ValidateCreateOrUpdate added in v0.41.0

func (p *Pgpool) ValidateCreateOrUpdate() field.ErrorList

func (*Pgpool) ValidateDelete added in v0.41.0

func (p *Pgpool) ValidateDelete() (admission.Warnings, error)

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

func (*Pgpool) ValidateEnvVar added in v0.41.0

func (p *Pgpool) ValidateEnvVar(envs []core.EnvVar, forbiddenEnvs []string, resourceType string) error

func (*Pgpool) ValidateHealth added in v0.41.0

func (p *Pgpool) ValidateHealth(health *kmapi.HealthCheckSpec) error

func (*Pgpool) ValidateUpdate added in v0.41.0

func (p *Pgpool) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type PgpoolCertificateAlias added in v0.45.0

type PgpoolCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	PgpoolServerCert          PgpoolCertificateAlias = "server"
	PgpoolClientCert          PgpoolCertificateAlias = "client"
	PgpoolMetricsExporterCert PgpoolCertificateAlias = "metrics-exporter"
)

type PgpoolClientAuthMode added in v0.45.0

type PgpoolClientAuthMode string

PgpoolClientAuthMode represents the ClientAuthMode of Pgpool clusters ( replicaset ) ref: https://www.postgresql.org/docs/12/auth-methods.html +kubebuilder:validation:Enum=md5;scram;cert

const (
	// PgpoolClientAuthModeMD5 uses a custom less secure challenge-response mechanism.
	// It prevents password sniffing and avoids storing passwords on the server in plain text but provides no protection
	// if an attacker manages to steal the password hash from the server.
	// Also, the MD5 hash algorithm is nowadays no longer considered secure against determined attacks
	PgpoolClientAuthModeMD5 PgpoolClientAuthMode = "md5"

	// PgpoolClientAuthModeScram performs SCRAM-SHA-256 authentication, as described in RFC 7677.
	// It is a challenge-response scheme that prevents password sniffing on untrusted connections
	// and supports storing passwords on the server in a cryptographically hashed form that is thought to be secure.
	// This is the most secure of the currently provided methods, but it is not supported by older client libraries.
	PgpoolClientAuthModeScram PgpoolClientAuthMode = "scram"

	// PgpoolClientAuthModeCert represents `cert clientcert=1` auth mode where client need to provide cert and private key for authentication.
	// When server is config with this auth method. Client can't connect with pgpool server with password. They need
	// to Send the client cert and client key certificate for authentication.
	PgpoolClientAuthModeCert PgpoolClientAuthMode = "cert"
)

type PgpoolConfiguration added in v0.41.0

type PgpoolConfiguration struct {
	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	PgpoolConfig *runtime.RawExtension `json:"pgpoolConfig,omitempty"`
}

func (*PgpoolConfiguration) DeepCopy added in v0.41.0

func (in *PgpoolConfiguration) DeepCopy() *PgpoolConfiguration

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

func (*PgpoolConfiguration) DeepCopyInto added in v0.41.0

func (in *PgpoolConfiguration) DeepCopyInto(out *PgpoolConfiguration)

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

type PgpoolList added in v0.41.0

type PgpoolList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []Pgpool `json:"items"`
}

PgpoolList contains a list of Pgpool

func (*PgpoolList) DeepCopy added in v0.41.0

func (in *PgpoolList) DeepCopy() *PgpoolList

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

func (*PgpoolList) DeepCopyInto added in v0.41.0

func (in *PgpoolList) DeepCopyInto(out *PgpoolList)

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

func (*PgpoolList) DeepCopyObject added in v0.41.0

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

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

type PgpoolSSLMode added in v0.45.0

type PgpoolSSLMode string

ref: https://www.postgresql.org/docs/13/libpq-ssl.html +kubebuilder:validation:Enum=disable;allow;prefer;require;verify-ca;verify-full

const (
	// PgpoolSSLModeDisable represents `disable` sslMode. It ensures that the server does not use TLS/SSL.
	PgpoolSSLModeDisable PgpoolSSLMode = "disable"

	// PgpoolSSLModeAllow represents `allow` sslMode. 	I don't care about security,
	// but I will pay the overhead of encryption if the server insists on it.
	PgpoolSSLModeAllow PgpoolSSLMode = "allow"

	// PgpoolSSLModePrefer represents `preferSSL` sslMode.
	// I don't care about encryption, but I wish to pay the overhead of encryption if the server supports it.
	PgpoolSSLModePrefer PgpoolSSLMode = "prefer"

	// PgpoolSSLModeRequire represents `requiteSSL` sslmode. I want my data to be encrypted, and I accept the overhead.
	// I trust that the network will make sure I always connect to the server I want.
	PgpoolSSLModeRequire PgpoolSSLMode = "require"

	// PgpoolSSLModeVerifyCA represents `verify-ca` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server that I trust.
	PgpoolSSLModeVerifyCA PgpoolSSLMode = "verify-ca"

	// PgpoolSSLModeVerifyFull represents `verify-full` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server I trust, and that it's the one I specify.
	PgpoolSSLModeVerifyFull PgpoolSSLMode = "verify-full"
)

type PgpoolSpec added in v0.41.0

type PgpoolSpec struct {
	// SyncUsers is a boolean type and when enabled, operator fetches all users created in the backend server to the
	// Pgpool server . Password changes are also synced in pgpool when it is enabled.
	// +optional
	SyncUsers bool `json:"syncUsers,omitempty"`

	// Version of Pgpool to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Pgpool instance.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// PostgresRef refers to the AppBinding of the backend PostgreSQL server
	PostgresRef *kmapi.ObjectReference `json:"postgresRef"`

	// Pgpool secret containing username and password for pgpool pcp user
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ConfigSecret is a configuration secret which will be created with default and InitConfiguration
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose Pgpool
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// InitConfiguration contains information with which the Pgpool will bootstrap
	// +optional
	InitConfiguration *PgpoolConfiguration `json:"initConfig,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose Pgpool
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used to monitor Pgpool instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// SSLMode for both standalone and clusters. [disable;allow;prefer;require;verify-ca;verify-full]
	SSLMode PgpoolSSLMode `json:"sslMode,omitempty"`

	// ClientAuthMode for sidecar or sharding. (default will be md5. [md5;scram;cert])
	// +kubebuilder:default=md5
	ClientAuthMode PgpoolClientAuthMode `json:"clientAuthMode,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`
}

PgpoolSpec defines the desired state of Pgpool

func (*PgpoolSpec) DeepCopy added in v0.41.0

func (in *PgpoolSpec) DeepCopy() *PgpoolSpec

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

func (*PgpoolSpec) DeepCopyInto added in v0.41.0

func (in *PgpoolSpec) DeepCopyInto(out *PgpoolSpec)

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

type PgpoolStatsService added in v0.44.0

type PgpoolStatsService struct {
	*Pgpool
}

func (*PgpoolStatsService) DeepCopy added in v0.44.0

func (in *PgpoolStatsService) DeepCopy() *PgpoolStatsService

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

func (*PgpoolStatsService) DeepCopyInto added in v0.44.0

func (in *PgpoolStatsService) DeepCopyInto(out *PgpoolStatsService)

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

func (PgpoolStatsService) GetNamespace added in v0.44.0

func (p PgpoolStatsService) GetNamespace() string

func (PgpoolStatsService) Path added in v0.44.0

func (p PgpoolStatsService) Path() string

func (PgpoolStatsService) Scheme added in v0.44.0

func (p PgpoolStatsService) Scheme() string

func (PgpoolStatsService) ServiceMonitorAdditionalLabels added in v0.44.0

func (p PgpoolStatsService) ServiceMonitorAdditionalLabels() map[string]string

func (PgpoolStatsService) ServiceMonitorName added in v0.44.0

func (p PgpoolStatsService) ServiceMonitorName() string

func (PgpoolStatsService) ServiceName added in v0.44.0

func (p PgpoolStatsService) ServiceName() string

func (PgpoolStatsService) TLSConfig added in v0.44.0

func (p PgpoolStatsService) TLSConfig() *promapi.TLSConfig

type PgpoolStatus added in v0.41.0

type PgpoolStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`

	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

PgpoolStatus defines the observed state of Pgpool

func (*PgpoolStatus) DeepCopy added in v0.41.0

func (in *PgpoolStatus) DeepCopy() *PgpoolStatus

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

func (*PgpoolStatus) DeepCopyInto added in v0.41.0

func (in *PgpoolStatus) DeepCopyInto(out *PgpoolStatus)

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

type PostgreLeaderElectionConfig added in v0.17.0

type PostgreLeaderElectionConfig struct {
	// LeaseDuration is the duration in second that non-leader candidates will
	// wait to force acquire leadership. This is measured against time of
	// last observed ack. Default 15
	// Deprecated
	LeaseDurationSeconds int32 `json:"leaseDurationSeconds,omitempty"`
	// RenewDeadline is the duration in second that the acting master will retry
	// refreshing leadership before giving up. Normally, LeaseDuration * 2 / 3.
	// Default 10
	// Deprecated
	RenewDeadlineSeconds int32 `json:"renewDeadlineSeconds,omitempty"`
	// RetryPeriod is the duration in second the LeaderElector clients should wait
	// between tries of actions. Normally, LeaseDuration / 3.
	// Default 2
	// Deprecated
	RetryPeriodSeconds int32 `json:"retryPeriodSeconds,omitempty"`

	// MaximumLagBeforeFailover is used as maximum lag tolerance for the cluster.
	// when ever a replica is lagging more than MaximumLagBeforeFailover
	// this node need to sync manually with the primary node. default value is 32MB
	// +default=33554432
	// +kubebuilder:default=33554432
	// +optional
	MaximumLagBeforeFailover uint64 `json:"maximumLagBeforeFailover,omitempty"`

	// Period between Node.Tick invocations
	// +kubebuilder:default="100ms"
	// +optional
	Period metav1.Duration `json:"period,omitempty"`

	// ElectionTick is the number of Node.Tick invocations that must pass between
	//	elections. That is, if a follower does not receive any message from the
	//  leader of current term before ElectionTick has elapsed, it will become
	//	candidate and start an election. ElectionTick must be greater than
	//  HeartbeatTick. We suggest ElectionTick = 10 * HeartbeatTick to avoid
	//  unnecessary leader switching. default value is 10.
	// +default=10
	// +kubebuilder:default=10
	// +optional
	ElectionTick int32 `json:"electionTick,omitempty"`

	// HeartbeatTick is the number of Node.Tick invocations that must pass between
	// heartbeats. That is, a leader sends heartbeat messages to maintain its
	// leadership every HeartbeatTick ticks. default value is 1.
	// +default=1
	// +kubebuilder:default=1
	// +optional
	HeartbeatTick int32 `json:"heartbeatTick,omitempty"`

	// TransferLeadershipInterval retry interval for transfer leadership
	// to the healthiest node
	// +kubebuilder:default="1s"
	// +optional
	TransferLeadershipInterval *metav1.Duration `json:"transferLeadershipInterval,omitempty"`

	// TransferLeadershipTimeout retry timeout for transfer leadership
	// to the healthiest node
	// +kubebuilder:default="60s"
	// +optional
	TransferLeadershipTimeout *metav1.Duration `json:"transferLeadershipTimeout,omitempty"`
}

PostgreLeaderElectionConfig contains essential attributes of leader election.

func (*PostgreLeaderElectionConfig) DeepCopy added in v0.17.0

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

func (*PostgreLeaderElectionConfig) DeepCopyInto added in v0.17.0

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

type PostgreSQLMode added in v0.36.0

type PostgreSQLMode string
const (
	PostgreSQLModeStandAlone    PostgreSQLMode = "Standalone"
	PostgreSQLModeRemoteReplica PostgreSQLMode = "RemoteReplica"
	PostgreSQLModeCluster       PostgreSQLMode = "Cluster"
)

type Postgres

type Postgres struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PostgresSpec   `json:"spec,omitempty"`
	Status            PostgresStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=postgreses,singular=postgres,shortName=pg,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (Postgres) AppBindingMeta

func (p Postgres) AppBindingMeta() appcat.AppBindingMeta

func (*Postgres) AsOwner added in v0.35.0

func (p *Postgres) AsOwner() *metav1.OwnerReference

func (*Postgres) CertificateName added in v0.17.0

func (p *Postgres) CertificateName(alias PostgresCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*Postgres) ConvertFrom added in v0.47.0

func (dst *Postgres) ConvertFrom(srcRaw rtconv.Hub) error

func (*Postgres) ConvertTo added in v0.47.0

func (src *Postgres) ConvertTo(dstRaw rtconv.Hub) error

func (Postgres) CustomResourceDefinition

func (_ Postgres) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Postgres) DeepCopy

func (in *Postgres) DeepCopy() *Postgres

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

func (*Postgres) DeepCopyInto

func (in *Postgres) DeepCopyInto(out *Postgres)

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

func (*Postgres) DeepCopyObject

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

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

func (Postgres) GetAuthSecretName added in v0.29.0

func (p Postgres) GetAuthSecretName() string

func (*Postgres) GetCertSecretName added in v0.18.0

func (p *Postgres) GetCertSecretName(alias PostgresCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any provide, otherwise returns default certificate secret name for the given alias.

func (Postgres) GoverningServiceName

func (p Postgres) GoverningServiceName() string

func (*Postgres) IsRemoteReplica added in v0.36.0

func (m *Postgres) IsRemoteReplica() bool

func (Postgres) OffshootLabels

func (p Postgres) OffshootLabels() map[string]string

func (Postgres) OffshootName

func (p Postgres) OffshootName() string

func (Postgres) OffshootSelectors

func (p Postgres) OffshootSelectors() map[string]string

func (Postgres) PodControllerLabels added in v0.23.0

func (p Postgres) PodControllerLabels() map[string]string

func (Postgres) PodLabels added in v0.23.0

func (p Postgres) PodLabels() map[string]string

func (*Postgres) ReplicasAreReady

func (p *Postgres) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (Postgres) ResourceFQN added in v0.16.0

func (p Postgres) ResourceFQN() string

func (Postgres) ResourceKind

func (p Postgres) ResourceKind() string

func (Postgres) ResourcePlural

func (p Postgres) ResourcePlural() string

func (Postgres) ResourceShortCode

func (p Postgres) ResourceShortCode() string

func (Postgres) ResourceSingular

func (p Postgres) ResourceSingular() string

func (Postgres) ServiceLabels added in v0.23.0

func (p Postgres) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (Postgres) ServiceName

func (p Postgres) ServiceName() string

func (*Postgres) SetArbiterDefault added in v0.38.0

func (p *Postgres) SetArbiterDefault()

func (*Postgres) SetDefaultReplicationMode added in v0.44.0

func (p *Postgres) SetDefaultReplicationMode(postgresVersion *catalog.PostgresVersion)

SetDefaultReplicationMode set the default replication mode. Replication slot will be prioritized if no WalLimitPolicy is mentioned

func (*Postgres) SetDefaults

func (p *Postgres) SetDefaults(postgresVersion *catalog.PostgresVersion, topology *core_util.Topology)

func (*Postgres) SetHealthCheckerDefaults added in v0.28.0

func (m *Postgres) SetHealthCheckerDefaults()

func (*Postgres) SetTLSDefaults added in v0.17.0

func (p *Postgres) SetTLSDefaults()

func (Postgres) StandbyServiceName

func (p Postgres) StandbyServiceName() string

func (Postgres) StatsService

func (p Postgres) StatsService() mona.StatsAccessor

func (Postgres) StatsServiceLabels

func (p Postgres) StatsServiceLabels() map[string]string

type PostgresCertificateAlias

type PostgresCertificateAlias string

+kubebuilder:validation:Enum=server;archiver;metrics-exporter

const (
	PostgresServerCert          PostgresCertificateAlias = "server"
	PostgresClientCert          PostgresCertificateAlias = "client"
	PostgresArchiverCert        PostgresCertificateAlias = "archiver"
	PostgresMetricsExporterCert PostgresCertificateAlias = "metrics-exporter"
)

type PostgresClientAuthMode added in v0.17.0

type PostgresClientAuthMode string

PostgresClientAuthMode represents the ClientAuthMode of PostgreSQL clusters ( replicaset ) ref: https://www.postgresql.org/docs/12/auth-methods.html +kubebuilder:validation:Enum=md5;scram;cert

const (
	// ClientAuthModeMD5 uses a custom less secure challenge-response mechanism.
	// It prevents password sniffing and avoids storing passwords on the server in plain text but provides no protection
	// if an attacker manages to steal the password hash from the server.
	// Also, the MD5 hash algorithm is nowadays no longer considered secure against determined attacks
	ClientAuthModeMD5 PostgresClientAuthMode = "md5"

	// ClientAuthModeScram performs SCRAM-SHA-256 authentication, as described in RFC 7677.
	// It is a challenge-response scheme that prevents password sniffing on untrusted connections
	// and supports storing passwords on the server in a cryptographically hashed form that is thought to be secure.
	// This is the most secure of the currently provided methods, but it is not supported by older client libraries.
	ClientAuthModeScram PostgresClientAuthMode = "scram"

	// ClientAuthModeCert represents `cert clientcert=1` auth mode where client need to provide cert and private key for authentication.
	// When server is config with this auth method. Client can't connect with postgreSQL server with password. They need
	// to Send the client cert and client key certificate for authentication.
	ClientAuthModeCert PostgresClientAuthMode = "cert"
)

type PostgresList

type PostgresList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Postgres CRD objects
	Items []Postgres `json:"items,omitempty"`
}

func (*PostgresList) DeepCopy

func (in *PostgresList) DeepCopy() *PostgresList

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

func (*PostgresList) DeepCopyInto

func (in *PostgresList) DeepCopyInto(out *PostgresList)

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

func (*PostgresList) DeepCopyObject

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

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

type PostgresReplication added in v0.44.0

type PostgresReplication struct {
	WALLimitPolicy WALLimitPolicy `json:"walLimitPolicy"`

	// +optional
	WalKeepSizeInMegaBytes *int32 `json:"walKeepSize,omitempty"`
	// +optional
	WalKeepSegment *int32 `json:"walKeepSegment,omitempty"`
	// +optional
	MaxSlotWALKeepSizeInMegaBytes *int32 `json:"maxSlotWALKeepSize,omitempty"`
}

func (*PostgresReplication) DeepCopy added in v0.44.0

func (in *PostgresReplication) DeepCopy() *PostgresReplication

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

func (*PostgresReplication) DeepCopyInto added in v0.44.0

func (in *PostgresReplication) DeepCopyInto(out *PostgresReplication)

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

type PostgresSSLMode added in v0.17.0

type PostgresSSLMode string

ref: https://www.postgresql.org/docs/13/libpq-ssl.html +kubebuilder:validation:Enum=disable;allow;prefer;require;verify-ca;verify-full

const (
	// PostgresSSLModeDisable represents `disable` sslMode. It ensures that the server does not use TLS/SSL.
	PostgresSSLModeDisable PostgresSSLMode = "disable"

	// PostgresSSLModeAllow represents `allow` sslMode. 	I don't care about security,
	// but I will pay the overhead of encryption if the server insists on it.
	PostgresSSLModeAllow PostgresSSLMode = "allow"

	// PostgresSSLModePrefer represents `preferSSL` sslMode.
	// I don't care about encryption, but I wish to pay the overhead of encryption if the server supports it.
	PostgresSSLModePrefer PostgresSSLMode = "prefer"

	// PostgresSSLModeRequire represents `requiteSSL` sslmode. I want my data to be encrypted, and I accept the overhead.
	// I trust that the network will make sure I always connect to the server I want.
	PostgresSSLModeRequire PostgresSSLMode = "require"

	// PostgresSSLModeVerifyCA represents `verify-ca` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server that I trust.
	PostgresSSLModeVerifyCA PostgresSSLMode = "verify-ca"

	// PostgresSSLModeVerifyFull represents `verify-full` sslmode. I want my data encrypted, and I accept the overhead.
	// I want to be sure that I connect to a server I trust, and that it's the one I specify.
	PostgresSSLModeVerifyFull PostgresSSLMode = "verify-full"
)

type PostgresSpec

type PostgresSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of Postgres to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Postgres database.
	Replicas *int32 `json:"replicas,omitempty"`

	// Standby mode
	StandbyMode *PostgresStandbyMode `json:"standbyMode,omitempty"`

	// Streaming mode
	StreamingMode *PostgresStreamingMode `json:"streamingMode,omitempty"`

	// + optional
	Mode *PostgreSQLMode `json:"mode,omitempty"`
	// RemoteReplica implies that the instance will be a MySQL Read Only Replica,
	// and it will take reference of  appbinding of the source
	// +optional
	RemoteReplica *RemoteReplicaSpec `json:"remoteReplica,omitempty"`

	// Leader election configuration
	// +optional
	LeaderElection *PostgreLeaderElectionConfig `json:"leaderElection,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// ClientAuthMode for sidecar or sharding. (default will be md5. [md5;scram;cert])
	ClientAuthMode PostgresClientAuthMode `json:"clientAuthMode,omitempty"`

	// SSLMode for both standalone and clusters. [disable;allow;prefer;require;verify-ca;verify-full]
	SSLMode PostgresSSLMode `json:"sslMode,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e postgresql.conf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// EnforceFsGroup Is Used when the storageClass's CSI Driver doesn't support FsGroup properties properly.
	// If It's true then The Init Container will run as RootUser and
	// the init-container will set user's permission for the mounted pvc volume with which coordinator and postgres containers are going to run.
	// In postgres it is /var/pv
	// +optional
	EnforceFsGroup bool `json:"enforceFsGroup,omitempty"`

	// AllowedSchemas defines the types of database schemas that MAY refer to
	// a database instance and the trusted namespaces where those schema resources MAY be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Archiver controls database backup using Archiver CR
	// +optional
	Archiver *Archiver `json:"archiver,omitempty"`

	// Arbiter controls spec for arbiter pods
	// +optional
	Arbiter *ArbiterSpec `json:"arbiter,omitempty"`

	// +optional
	Replication *PostgresReplication `json:"replication,omitempty"`
}

func (*PostgresSpec) DeepCopy

func (in *PostgresSpec) DeepCopy() *PostgresSpec

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

func (*PostgresSpec) DeepCopyInto

func (in *PostgresSpec) DeepCopyInto(out *PostgresSpec)

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

func (*PostgresSpec) GetPersistentSecrets

func (p *PostgresSpec) GetPersistentSecrets() []string

type PostgresStandbyMode

type PostgresStandbyMode string

+kubebuilder:validation:Enum=Hot;Warm

const (
	HotPostgresStandbyMode  PostgresStandbyMode = "Hot"
	WarmPostgresStandbyMode PostgresStandbyMode = "Warm"
)

type PostgresStatus

type PostgresStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*PostgresStatus) DeepCopy

func (in *PostgresStatus) DeepCopy() *PostgresStatus

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

func (*PostgresStatus) DeepCopyInto

func (in *PostgresStatus) DeepCopyInto(out *PostgresStatus)

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

type PostgresStreamingMode

type PostgresStreamingMode string

+kubebuilder:validation:Enum=Synchronous;Asynchronous

const (
	SynchronousPostgresStreamingMode  PostgresStreamingMode = "Synchronous"
	AsynchronousPostgresStreamingMode PostgresStreamingMode = "Asynchronous"
)

type ProxySQL

type ProxySQL struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProxySQLSpec   `json:"spec,omitempty"`
	Status            ProxySQLStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=proxysqls,singular=proxysql,shortName=prx,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (ProxySQL) AppBindingMeta

func (p ProxySQL) AppBindingMeta() appcat.AppBindingMeta

func (*ProxySQL) AsOwner added in v0.35.0

func (p *ProxySQL) AsOwner() *metav1.OwnerReference

func (*ProxySQL) CertificateName added in v0.27.0

func (m *ProxySQL) CertificateName(alias ProxySQLCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*ProxySQL) ConvertFrom added in v0.47.0

func (dst *ProxySQL) ConvertFrom(srcRaw rtconv.Hub) error

func (*ProxySQL) ConvertTo added in v0.47.0

func (src *ProxySQL) ConvertTo(dstRaw rtconv.Hub) error

func (ProxySQL) CustomResourceDefinition

func (_ ProxySQL) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ProxySQL) DeepCopy

func (in *ProxySQL) DeepCopy() *ProxySQL

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

func (*ProxySQL) DeepCopyInto

func (in *ProxySQL) DeepCopyInto(out *ProxySQL)

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

func (*ProxySQL) DeepCopyObject

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

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

func (ProxySQL) GetAuthSecretName added in v0.29.0

func (p ProxySQL) GetAuthSecretName() string

func (*ProxySQL) GetCertSecretName added in v0.27.0

func (m *ProxySQL) GetCertSecretName(alias ProxySQLCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (ProxySQL) GoverningServiceName

func (p ProxySQL) GoverningServiceName() string

func (*ProxySQL) IsCluster added in v0.27.0

func (m *ProxySQL) IsCluster() bool

IsCluster returns boolean true if the proxysql is in cluster mode, otherwise false

func (ProxySQL) OffshootLabels

func (p ProxySQL) OffshootLabels() map[string]string

func (ProxySQL) OffshootName

func (p ProxySQL) OffshootName() string

func (ProxySQL) OffshootSelectors

func (p ProxySQL) OffshootSelectors() map[string]string

func (ProxySQL) PodControllerLabels added in v0.23.0

func (p ProxySQL) PodControllerLabels() map[string]string

func (ProxySQL) PodLabels added in v0.23.0

func (p ProxySQL) PodLabels() map[string]string

func (*ProxySQL) ReplicasAreReady

func (p *ProxySQL) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (ProxySQL) ResourceFQN added in v0.16.0

func (p ProxySQL) ResourceFQN() string

func (ProxySQL) ResourceKind

func (p ProxySQL) ResourceKind() string

func (ProxySQL) ResourcePlural

func (p ProxySQL) ResourcePlural() string

func (ProxySQL) ResourceShortCode

func (p ProxySQL) ResourceShortCode() string

func (ProxySQL) ResourceSingular

func (p ProxySQL) ResourceSingular() string

func (ProxySQL) ServiceLabels added in v0.23.0

func (p ProxySQL) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (ProxySQL) ServiceName

func (p ProxySQL) ServiceName() string

func (*ProxySQL) SetDefaults

func (p *ProxySQL) SetDefaults(usesAcme bool)

func (*ProxySQL) SetHealthCheckerDefaults added in v0.28.0

func (p *ProxySQL) SetHealthCheckerDefaults()

func (*ProxySQL) SetTLSDefaults added in v0.27.0

func (m *ProxySQL) SetTLSDefaults(usesAcme bool)

func (ProxySQL) StatsService

func (p ProxySQL) StatsService() mona.StatsAccessor

func (ProxySQL) StatsServiceLabels

func (p ProxySQL) StatsServiceLabels() map[string]string

type ProxySQLCertificateAlias

type ProxySQLCertificateAlias string

+kubebuilder:validation:Enum=server;archiver;metrics-exporter

const (
	ProxySQLServerCert          ProxySQLCertificateAlias = "server"
	ProxySQLClientCert          ProxySQLCertificateAlias = "client"
	ProxySQLMetricsExporterCert ProxySQLCertificateAlias = "metrics-exporter"
)

type ProxySQLConfiguration added in v0.28.0

type ProxySQLConfiguration struct {
	// +optional
	MySQLUsers []MySQLUser `json:"mysqlUsers,omitempty"`

	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	MySQLQueryRules []*runtime.RawExtension `json:"mysqlQueryRules,omitempty"`

	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	MySQLVariables *runtime.RawExtension `json:"mysqlVariables,omitempty"`

	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	AdminVariables *runtime.RawExtension `json:"adminVariables,omitempty"`
}

func (*ProxySQLConfiguration) DeepCopy added in v0.28.0

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

func (*ProxySQLConfiguration) DeepCopyInto added in v0.28.0

func (in *ProxySQLConfiguration) DeepCopyInto(out *ProxySQLConfiguration)

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

type ProxySQLList

type ProxySQLList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ProxySQL TPR objects
	Items []ProxySQL `json:"items,omitempty"`
}

func (*ProxySQLList) DeepCopy

func (in *ProxySQLList) DeepCopy() *ProxySQLList

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

func (*ProxySQLList) DeepCopyInto

func (in *ProxySQLList) DeepCopyInto(out *ProxySQLList)

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

func (*ProxySQLList) DeepCopyObject

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

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

type ProxySQLSpec

type ProxySQLSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// +optional
	// SyncUsers is a boolean type and when enabled, operator fetches all users created in the backend server to the
	// ProxySQL server . Password changes are also synced in proxysql when it is enabled.
	SyncUsers bool `json:"syncUsers,omitempty"`

	// +optional
	// InitConfiguration contains information with which the proxysql will bootstrap (only 4 tables are configurable)
	InitConfiguration *ProxySQLConfiguration `json:"initConfig,omitempty"`

	// Version of ProxySQL to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for ProxySQL. Currently we support only replicas = 1.
	// TODO: If replicas > 1, proxysql will be clustered
	Replicas *int32 `json:"replicas,omitempty"`

	// Backend refers to the AppBinding of the backend MySQL/MariaDB/Percona-XtraDB server
	Backend *core.LocalObjectReference `json:"backend,omitempty"`

	// ProxySQL secret containing username and password for root user and proxysql user
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// Monitor is used monitor proxysql instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for proxysql (i.e custom-proxysql.cnf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose proxysql
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*ProxySQLSpec) DeepCopy

func (in *ProxySQLSpec) DeepCopy() *ProxySQLSpec

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

func (*ProxySQLSpec) DeepCopyInto

func (in *ProxySQLSpec) DeepCopyInto(out *ProxySQLSpec)

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

func (*ProxySQLSpec) GetPersistentSecrets

func (p *ProxySQLSpec) GetPersistentSecrets() []string

type ProxySQLStatus

type ProxySQLStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*ProxySQLStatus) DeepCopy

func (in *ProxySQLStatus) DeepCopy() *ProxySQLStatus

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

func (*ProxySQLStatus) DeepCopyInto

func (in *ProxySQLStatus) DeepCopyInto(out *ProxySQLStatus)

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

type RabbitMQ added in v0.41.0

type RabbitMQ struct {
	meta.TypeMeta   `json:",inline"`
	meta.ObjectMeta `json:"metadata,omitempty"`

	Spec   RabbitMQSpec   `json:"spec,omitempty"`
	Status RabbitMQStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=rm,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*RabbitMQ) AppBindingMeta added in v0.41.0

func (r *RabbitMQ) AppBindingMeta() appcat.AppBindingMeta

func (*RabbitMQ) AsOwner added in v0.41.0

func (r *RabbitMQ) AsOwner() *meta.OwnerReference

func (*RabbitMQ) CertSecretVolumeMountPath added in v0.41.0

func (r *RabbitMQ) CertSecretVolumeMountPath(configDir string, cert string) string

returns CertSecretVolumeMountPath if configDir is "/opt/kafka/config", mountPath will be, "/opt/kafka/config/<alias>".

func (*RabbitMQ) CertSecretVolumeName added in v0.41.0

func (r *RabbitMQ) CertSecretVolumeName(alias RabbitMQCertificateAlias) string

returns the CertSecretVolumeName Values will be like: client-certs, server-certs etc.

func (*RabbitMQ) CertificateName added in v0.41.0

func (r *RabbitMQ) CertificateName(alias RabbitMQCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*RabbitMQ) ClientCertificateCN added in v0.41.0

func (r *RabbitMQ) ClientCertificateCN(alias RabbitMQCertificateAlias) string

ClientCertificateCN returns the CN for a client certificate

func (*RabbitMQ) ConfigSecretName added in v0.41.0

func (r *RabbitMQ) ConfigSecretName() string

func (*RabbitMQ) CustomResourceDefinition added in v0.41.0

func (r *RabbitMQ) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*RabbitMQ) DeepCopy added in v0.41.0

func (in *RabbitMQ) DeepCopy() *RabbitMQ

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

func (*RabbitMQ) DeepCopyInto added in v0.41.0

func (in *RabbitMQ) DeepCopyInto(out *RabbitMQ)

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

func (*RabbitMQ) DeepCopyObject added in v0.41.0

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

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

func (*RabbitMQ) Default added in v0.41.0

func (r *RabbitMQ) Default()

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

func (*RabbitMQ) DefaultErlangCookieSecretName added in v0.41.0

func (r *RabbitMQ) DefaultErlangCookieSecretName() string

func (*RabbitMQ) DefaultPodRoleBindingName added in v0.41.0

func (r *RabbitMQ) DefaultPodRoleBindingName() string

func (*RabbitMQ) DefaultPodRoleName added in v0.41.0

func (r *RabbitMQ) DefaultPodRoleName() string

func (*RabbitMQ) DefaultUserCredSecretName added in v0.41.0

func (r *RabbitMQ) DefaultUserCredSecretName(username string) string

func (*RabbitMQ) Finalizer added in v0.41.0

func (r *RabbitMQ) Finalizer() string

func (*RabbitMQ) GetAuthSecretName added in v0.41.0

func (r *RabbitMQ) GetAuthSecretName() string

func (*RabbitMQ) GetCertSecretName added in v0.41.0

func (r *RabbitMQ) GetCertSecretName(alias RabbitMQCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any, otherwise returns default certificate secret name for the given alias.

func (*RabbitMQ) GetConnectionScheme added in v0.41.0

func (r *RabbitMQ) GetConnectionScheme() string

func (*RabbitMQ) GetPersistentSecrets added in v0.41.0

func (r *RabbitMQ) GetPersistentSecrets() []string

func (*RabbitMQ) GoverningServiceName added in v0.41.0

func (r *RabbitMQ) GoverningServiceName() string

func (*RabbitMQ) OffshootLabels added in v0.41.0

func (r *RabbitMQ) OffshootLabels() map[string]string

func (*RabbitMQ) OffshootName added in v0.41.0

func (r *RabbitMQ) OffshootName() string

func (*RabbitMQ) OffshootSelectors added in v0.41.0

func (r *RabbitMQ) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*RabbitMQ) Owner added in v0.41.0

func (r *RabbitMQ) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*RabbitMQ) PVCName added in v0.41.0

func (r *RabbitMQ) PVCName(alias string) string

func (*RabbitMQ) PetSetName added in v0.44.0

func (r *RabbitMQ) PetSetName() string

func (*RabbitMQ) PodControllerLabels added in v0.41.0

func (r *RabbitMQ) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*RabbitMQ) PodLabels added in v0.41.0

func (r *RabbitMQ) PodLabels(extraLabels ...map[string]string) map[string]string

func (*RabbitMQ) ReplicasAreReady added in v0.41.0

func (r *RabbitMQ) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*RabbitMQ) ResourceFQN added in v0.41.0

func (r *RabbitMQ) ResourceFQN() string

func (*RabbitMQ) ResourceKind added in v0.41.0

func (r *RabbitMQ) ResourceKind() string

func (*RabbitMQ) ResourcePlural added in v0.41.0

func (r *RabbitMQ) ResourcePlural() string

func (*RabbitMQ) ResourceShortCode added in v0.41.0

func (r *RabbitMQ) ResourceShortCode() string

func (*RabbitMQ) ResourceSingular added in v0.41.0

func (r *RabbitMQ) ResourceSingular() string

func (*RabbitMQ) ServiceAccountName added in v0.41.0

func (r *RabbitMQ) ServiceAccountName() string

func (*RabbitMQ) ServiceLabels added in v0.41.0

func (r *RabbitMQ) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*RabbitMQ) ServiceName added in v0.41.0

func (r *RabbitMQ) ServiceName() string

func (*RabbitMQ) SetDefaults added in v0.41.0

func (r *RabbitMQ) SetDefaults()

func (*RabbitMQ) SetHealthCheckerDefaults added in v0.41.0

func (r *RabbitMQ) SetHealthCheckerDefaults()

func (*RabbitMQ) SetTLSDefaults added in v0.41.0

func (r *RabbitMQ) SetTLSDefaults()

func (*RabbitMQ) StandbyServiceName added in v0.41.0

func (r *RabbitMQ) StandbyServiceName() string

func (*RabbitMQ) StatsService added in v0.41.0

func (r *RabbitMQ) StatsService() mona.StatsAccessor

func (*RabbitMQ) StatsServiceLabels added in v0.41.0

func (r *RabbitMQ) StatsServiceLabels() map[string]string

func (*RabbitMQ) ValidateCreate added in v0.41.0

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

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

func (*RabbitMQ) ValidateCreateOrUpdate added in v0.41.0

func (r *RabbitMQ) ValidateCreateOrUpdate() error

func (*RabbitMQ) ValidateDelete added in v0.41.0

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

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

func (*RabbitMQ) ValidateUpdate added in v0.41.0

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

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

func (*RabbitMQ) ValidateVersion added in v0.41.0

func (r *RabbitMQ) ValidateVersion(db *RabbitMQ) error

type RabbitMQCertificateAlias added in v0.41.0

type RabbitMQCertificateAlias string

+kubebuilder:validation:Enum=ca;client;server

const (
	RabbitmqCACert     RabbitMQCertificateAlias = "ca"
	RabbitmqClientCert RabbitMQCertificateAlias = "client"
	RabbitmqServerCert RabbitMQCertificateAlias = "server"
)

type RabbitMQList added in v0.41.0

type RabbitMQList struct {
	meta.TypeMeta `json:",inline"`
	meta.ListMeta `json:"metadata,omitempty"`
	Items         []RabbitMQ `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*RabbitMQList) DeepCopy added in v0.41.0

func (in *RabbitMQList) DeepCopy() *RabbitMQList

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

func (*RabbitMQList) DeepCopyInto added in v0.41.0

func (in *RabbitMQList) DeepCopyInto(out *RabbitMQList)

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

func (*RabbitMQList) DeepCopyObject added in v0.41.0

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

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

type RabbitMQPhase added in v0.41.0

type RabbitMQPhase string

+kubebuilder:validation:Enum=Provisioning;Ready;NotReady;Critical

const (
	RabbitmqProvisioning RabbitMQPhase = "Provisioning"
	RabbitmqReady        RabbitMQPhase = "Ready"
	RabbitmqNotReady     RabbitMQPhase = "NotReady"
	RabbitmqCritical     RabbitMQPhase = "Critical"
)

type RabbitMQSpec added in v0.41.0

type RabbitMQSpec struct {
	// Version of RabbitMQ to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a RabbitMQ database.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// To enable ssl for http layer
	EnableSSL bool `json:"enableSSL,omitempty"`

	// disable security. It disables authentication security of user.
	// If unset, default is false
	// +optional
	DisableSecurity bool `json:"disableSecurity,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// TLS contains tls configurations
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

RabbitMQSpec defines the desired state of RabbitMQ

func (*RabbitMQSpec) DeepCopy added in v0.41.0

func (in *RabbitMQSpec) DeepCopy() *RabbitMQSpec

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

func (*RabbitMQSpec) DeepCopyInto added in v0.41.0

func (in *RabbitMQSpec) DeepCopyInto(out *RabbitMQSpec)

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

type RabbitMQStatus added in v0.41.0

type RabbitMQStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase RabbitMQPhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

RabbitMQStatus defines the observed state of RabbitMQ

func (*RabbitMQStatus) DeepCopy added in v0.41.0

func (in *RabbitMQStatus) DeepCopy() *RabbitMQStatus

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

func (*RabbitMQStatus) DeepCopyInto added in v0.41.0

func (in *RabbitMQStatus) DeepCopyInto(out *RabbitMQStatus)

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

type RabbitmqApp added in v0.41.0

type RabbitmqApp struct {
	*RabbitMQ
}

func (*RabbitmqApp) DeepCopy added in v0.41.0

func (in *RabbitmqApp) DeepCopy() *RabbitmqApp

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

func (*RabbitmqApp) DeepCopyInto added in v0.41.0

func (in *RabbitmqApp) DeepCopyInto(out *RabbitmqApp)

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

func (RabbitmqApp) Name added in v0.41.0

func (r RabbitmqApp) Name() string

func (RabbitmqApp) Type added in v0.41.0

func (r RabbitmqApp) Type() appcat.AppType

type RabbitmqStatsService added in v0.41.0

type RabbitmqStatsService struct {
	*RabbitMQ
}

func (*RabbitmqStatsService) DeepCopy added in v0.41.0

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

func (*RabbitmqStatsService) DeepCopyInto added in v0.41.0

func (in *RabbitmqStatsService) DeepCopyInto(out *RabbitmqStatsService)

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

func (RabbitmqStatsService) GetNamespace added in v0.41.0

func (ks RabbitmqStatsService) GetNamespace() string

func (RabbitmqStatsService) Path added in v0.41.0

func (ks RabbitmqStatsService) Path() string

func (RabbitmqStatsService) Scheme added in v0.41.0

func (ks RabbitmqStatsService) Scheme() string

func (RabbitmqStatsService) ServiceMonitorAdditionalLabels added in v0.41.0

func (ks RabbitmqStatsService) ServiceMonitorAdditionalLabels() map[string]string

func (RabbitmqStatsService) ServiceMonitorName added in v0.41.0

func (ks RabbitmqStatsService) ServiceMonitorName() string

func (RabbitmqStatsService) ServiceName added in v0.41.0

func (ks RabbitmqStatsService) ServiceName() string

func (RabbitmqStatsService) TLSConfig added in v0.41.0

func (ks RabbitmqStatsService) TLSConfig() *promapi.TLSConfig

type RecoveryTarget

type RecoveryTarget struct {
	// TargetTime specifies the time stamp up to which recovery will proceed.
	TargetTime string `json:"targetTime,omitempty"`
	// TargetTimeline specifies recovering into a particular timeline.
	// The default is to recover along the same timeline that was current when the base backup was taken.
	TargetTimeline string `json:"targetTimeline,omitempty"`
	// TargetXID specifies the transaction ID up to which recovery will proceed.
	TargetXID string `json:"targetXID,omitempty"`
	// TargetInclusive specifies whether to include ongoing transaction in given target point.
	TargetInclusive *bool `json:"targetInclusive,omitempty"`
}

func (*RecoveryTarget) DeepCopy

func (in *RecoveryTarget) DeepCopy() *RecoveryTarget

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

func (*RecoveryTarget) DeepCopyInto

func (in *RecoveryTarget) DeepCopyInto(out *RecoveryTarget)

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

type Redis

type Redis struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RedisSpec   `json:"spec,omitempty"`
	Status            RedisStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=redises,singular=redis,shortName=rd,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (Redis) Address added in v0.16.0

func (r Redis) Address() string

func (Redis) AppBindingMeta

func (r Redis) AppBindingMeta() appcat.AppBindingMeta

func (*Redis) AsOwner added in v0.35.0

func (r *Redis) AsOwner() *metav1.OwnerReference

func (Redis) BaseNameForShard

func (r Redis) BaseNameForShard() string

func (*Redis) CertificateName

func (r *Redis) CertificateName(alias RedisCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (Redis) ConfigSecretName

func (r Redis) ConfigSecretName() string

func (*Redis) ConvertFrom added in v0.47.0

func (dst *Redis) ConvertFrom(srcRaw rtconv.Hub) error

func (*Redis) ConvertTo added in v0.47.0

func (src *Redis) ConvertTo(dstRaw rtconv.Hub) error

func (Redis) CustomConfigSecretName added in v0.23.0

func (r Redis) CustomConfigSecretName() string

func (Redis) CustomResourceDefinition

func (r Redis) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Redis) DeepCopy

func (in *Redis) DeepCopy() *Redis

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

func (*Redis) DeepCopyInto

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

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

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

func (Redis) GetAuthSecretName added in v0.29.0

func (r Redis) GetAuthSecretName() string

func (*Redis) GetCertSecretName added in v0.20.0

func (r *Redis) GetCertSecretName(alias RedisCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any provide, otherwise returns default certificate secret name for the given alias.

func (Redis) GoverningServiceName

func (r Redis) GoverningServiceName() string

func (Redis) OffshootLabels

func (r Redis) OffshootLabels() map[string]string

func (Redis) OffshootName

func (r Redis) OffshootName() string

func (Redis) OffshootSelectors

func (r Redis) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (Redis) PodControllerLabels added in v0.23.0

func (r Redis) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (Redis) PodLabels added in v0.23.0

func (r Redis) PodLabels(extraLabels ...map[string]string) map[string]string

func (*Redis) ReplicasAreReady

func (r *Redis) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (Redis) ResourceFQN added in v0.16.0

func (r Redis) ResourceFQN() string

func (Redis) ResourceKind

func (r Redis) ResourceKind() string

func (Redis) ResourcePlural

func (r Redis) ResourcePlural() string

func (Redis) ResourceShortCode

func (r Redis) ResourceShortCode() string

func (Redis) ResourceSingular

func (r Redis) ResourceSingular() string

func (Redis) ServiceLabels added in v0.23.0

func (r Redis) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (Redis) ServiceName

func (r Redis) ServiceName() string

func (*Redis) SetDefaults

func (r *Redis) SetDefaults(rdVersion *catalog.RedisVersion, topology *core_util.Topology)

func (*Redis) SetHealthCheckerDefaults added in v0.28.0

func (r *Redis) SetHealthCheckerDefaults()

func (*Redis) SetTLSDefaults

func (r *Redis) SetTLSDefaults()

func (Redis) ShardNodeTemplate

func (r Redis) ShardNodeTemplate() string

func (Redis) StandbyServiceName added in v0.22.0

func (r Redis) StandbyServiceName() string

func (Redis) StatefulSetNameWithShard

func (r Redis) StatefulSetNameWithShard(i int) string

func (Redis) StatsService

func (r Redis) StatsService() mona.StatsAccessor

func (Redis) StatsServiceLabels

func (r Redis) StatsServiceLabels() map[string]string

type RedisCertificateAlias

type RedisCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	RedisServerCert          RedisCertificateAlias = "server"
	RedisClientCert          RedisCertificateAlias = "client"
	RedisMetricsExporterCert RedisCertificateAlias = "metrics-exporter"
)

type RedisClusterSpec

type RedisClusterSpec struct {
	// Number of master nodes. It must be >= 3. If not specified, defaults to 3.
	Master *int32 `json:"master,omitempty"`

	// Number of replica(s) per master node. If not specified, defaults to 1.
	Replicas *int32 `json:"replicas,omitempty"`
}

func (*RedisClusterSpec) DeepCopy

func (in *RedisClusterSpec) DeepCopy() *RedisClusterSpec

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

func (*RedisClusterSpec) DeepCopyInto

func (in *RedisClusterSpec) DeepCopyInto(out *RedisClusterSpec)

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

type RedisList

type RedisList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Redis TPR objects
	Items []Redis `json:"items,omitempty"`
}

func (*RedisList) DeepCopy

func (in *RedisList) DeepCopy() *RedisList

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

func (*RedisList) DeepCopyInto

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

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

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

type RedisMode

type RedisMode string

+kubebuilder:validation:Enum=Standalone;Cluster;Sentinel

const (
	RedisModeStandalone RedisMode = "Standalone"
	RedisModeCluster    RedisMode = "Cluster"
	RedisModeSentinel   RedisMode = "Sentinel"
)

type RedisSentinel added in v0.22.0

type RedisSentinel struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RedisSentinelSpec   `json:"spec,omitempty"`
	Status            RedisSentinelStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:path=redissentinels,singular=redissentinel,categories={datastore,kubedb,appscode,all} +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (RedisSentinel) Address added in v0.29.0

func (r RedisSentinel) Address() string

func (RedisSentinel) AppBindingMeta added in v0.22.0

func (rs RedisSentinel) AppBindingMeta() appcat.AppBindingMeta

func (*RedisSentinel) AsOwner added in v0.35.0

func (rs *RedisSentinel) AsOwner() *metav1.OwnerReference

func (*RedisSentinel) CertificateName added in v0.22.0

func (rs *RedisSentinel) CertificateName(alias RedisCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (RedisSentinel) ConfigSecretName added in v0.22.0

func (rs RedisSentinel) ConfigSecretName() string

func (*RedisSentinel) ConvertFrom added in v0.47.0

func (dst *RedisSentinel) ConvertFrom(srcRaw rtconv.Hub) error

func (*RedisSentinel) ConvertTo added in v0.47.0

func (src *RedisSentinel) ConvertTo(dstRaw rtconv.Hub) error

func (RedisSentinel) CustomResourceDefinition added in v0.22.0

func (rs RedisSentinel) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*RedisSentinel) DeepCopy added in v0.22.0

func (in *RedisSentinel) DeepCopy() *RedisSentinel

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

func (*RedisSentinel) DeepCopyInto added in v0.22.0

func (in *RedisSentinel) DeepCopyInto(out *RedisSentinel)

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

func (*RedisSentinel) DeepCopyObject added in v0.22.0

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

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

func (RedisSentinel) GetAuthSecretName added in v0.29.0

func (rs RedisSentinel) GetAuthSecretName() string

func (*RedisSentinel) GetCertSecretName added in v0.22.0

func (rs *RedisSentinel) GetCertSecretName(alias RedisCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any provide, otherwise returns default certificate secret name for the given alias.

func (*RedisSentinel) GetPersistentSecrets added in v0.22.0

func (rs *RedisSentinel) GetPersistentSecrets() []string

func (RedisSentinel) GoverningServiceName added in v0.22.0

func (rs RedisSentinel) GoverningServiceName() string

func (RedisSentinel) OffshootLabels added in v0.22.0

func (rs RedisSentinel) OffshootLabels() map[string]string

func (RedisSentinel) OffshootName added in v0.22.0

func (rs RedisSentinel) OffshootName() string

func (RedisSentinel) OffshootSelectors added in v0.22.0

func (rs RedisSentinel) OffshootSelectors() map[string]string

func (RedisSentinel) PodControllerLabels added in v0.23.0

func (rs RedisSentinel) PodControllerLabels() map[string]string

func (RedisSentinel) PodLabels added in v0.23.0

func (rs RedisSentinel) PodLabels() map[string]string

func (*RedisSentinel) ReplicasAreReady added in v0.22.0

func (rs *RedisSentinel) ReplicasAreReady(lister appslister.StatefulSetLister) (bool, string, error)

func (RedisSentinel) ResourceFQN added in v0.22.0

func (rs RedisSentinel) ResourceFQN() string

func (RedisSentinel) ResourceKind added in v0.22.0

func (rs RedisSentinel) ResourceKind() string

func (RedisSentinel) ResourcePlural added in v0.22.0

func (rs RedisSentinel) ResourcePlural() string

func (RedisSentinel) ResourceShortCode added in v0.22.0

func (rs RedisSentinel) ResourceShortCode() string

func (RedisSentinel) ResourceSingular added in v0.22.0

func (rs RedisSentinel) ResourceSingular() string

func (RedisSentinel) ServiceLabels added in v0.23.0

func (rs RedisSentinel) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*RedisSentinel) SetDefaults added in v0.22.0

func (rs *RedisSentinel) SetDefaults(rdVersion *catalog.RedisVersion, topology *core_util.Topology)

func (*RedisSentinel) SetHealthCheckerDefaults added in v0.28.0

func (rs *RedisSentinel) SetHealthCheckerDefaults()

func (*RedisSentinel) SetTLSDefaults added in v0.22.0

func (rs *RedisSentinel) SetTLSDefaults()

func (RedisSentinel) StatsService added in v0.22.0

func (rs RedisSentinel) StatsService() mona.StatsAccessor

func (RedisSentinel) StatsServiceLabels added in v0.22.0

func (rs RedisSentinel) StatsServiceLabels() map[string]string

type RedisSentinelList added in v0.22.0

type RedisSentinelList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RedisSentinel TPR objects
	Items []RedisSentinel `json:"items,omitempty"`
}

func (*RedisSentinelList) DeepCopy added in v0.22.0

func (in *RedisSentinelList) DeepCopy() *RedisSentinelList

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

func (*RedisSentinelList) DeepCopyInto added in v0.22.0

func (in *RedisSentinelList) DeepCopyInto(out *RedisSentinelList)

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

func (*RedisSentinelList) DeepCopyObject added in v0.22.0

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

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

type RedisSentinelRef added in v0.22.0

type RedisSentinelRef struct {
	// Name of the refereed sentinel
	Name string `json:"name,omitempty"`

	// Namespace where refereed sentinel has been deployed
	Namespace string `json:"namespace,omitempty"`
}

func (*RedisSentinelRef) DeepCopy added in v0.22.0

func (in *RedisSentinelRef) DeepCopy() *RedisSentinelRef

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

func (*RedisSentinelRef) DeepCopyInto added in v0.22.0

func (in *RedisSentinelRef) DeepCopyInto(out *RedisSentinelRef)

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

type RedisSentinelSpec added in v0.22.0

type RedisSentinelSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of Postgres to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Redis Sentinel.
	Replicas *int32 `json:"replicas,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// If disable Auth true then don't create any auth secret
	// +optional
	DisableAuth bool `json:"disableAuth,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*RedisSentinelSpec) DeepCopy added in v0.22.0

func (in *RedisSentinelSpec) DeepCopy() *RedisSentinelSpec

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

func (*RedisSentinelSpec) DeepCopyInto added in v0.22.0

func (in *RedisSentinelSpec) DeepCopyInto(out *RedisSentinelSpec)

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

type RedisSentinelStatus added in v0.22.0

type RedisSentinelStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*RedisSentinelStatus) DeepCopy added in v0.22.0

func (in *RedisSentinelStatus) DeepCopy() *RedisSentinelStatus

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

func (*RedisSentinelStatus) DeepCopyInto added in v0.22.0

func (in *RedisSentinelStatus) DeepCopyInto(out *RedisSentinelStatus)

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

type RedisSpec

type RedisSpec struct {
	// AutoOps contains configuration of automatic ops-request-recommendation generation
	// +optional
	AutoOps AutoOpsSpec `json:"autoOps,omitempty"`

	// Version of Redis to be deployed.
	Version string `json:"version"`

	// Number of instances to deploy for a Redis database.
	Replicas *int32 `json:"replicas,omitempty"`

	// Default is "Standalone". If set to "Cluster", ClusterSpec is required and redis servers will
	// start in cluster mode
	Mode RedisMode `json:"mode,omitempty"`

	SentinelRef *RedisSentinelRef `json:"sentinelRef,omitempty"`

	// Redis cluster configuration for running redis servers in cluster mode. Required if Mode is set to "Cluster"
	Cluster *RedisClusterSpec `json:"cluster,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage spec to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// If disable Auth true then don't create any auth secret
	// +optional
	DisableAuth bool `json:"disableAuth,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e redis.conf).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// TerminationPolicy controls the delete operation for database
	// +optional
	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty"`

	// Coordinator defines attributes of the coordinator container
	// +optional
	Coordinator CoordinatorSpec `json:"coordinator,omitempty"`

	// AllowedSchemas defines the types of database schemas that MAY refer to
	// a database instance and the trusted namespaces where those schema resources MAY be
	// present.
	//
	// +kubebuilder:default={namespaces:{from: Same}}
	// +optional
	AllowedSchemas *AllowedConsumers `json:"allowedSchemas,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`
}

func (*RedisSpec) DeepCopy

func (in *RedisSpec) DeepCopy() *RedisSpec

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

func (*RedisSpec) DeepCopyInto

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

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

func (*RedisSpec) GetPersistentSecrets

func (r *RedisSpec) GetPersistentSecrets() []string

type RedisStatus

type RedisStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
	// +optional
	AuthSecret *Age `json:"authSecret,omitempty"`
}

func (*RedisStatus) DeepCopy

func (in *RedisStatus) DeepCopy() *RedisStatus

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

func (*RedisStatus) DeepCopyInto

func (in *RedisStatus) DeepCopyInto(out *RedisStatus)

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

type RemoteReplicaSpec added in v0.36.0

type RemoteReplicaSpec struct {
	// SourceRef specifies the  source object
	SourceRef core.ObjectReference `json:"sourceRef" protobuf:"bytes,1,opt,name=sourceRef"`
}

func (*RemoteReplicaSpec) DeepCopy added in v0.36.0

func (in *RemoteReplicaSpec) DeepCopy() *RemoteReplicaSpec

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

func (*RemoteReplicaSpec) DeepCopyInto added in v0.36.0

func (in *RemoteReplicaSpec) DeepCopyInto(out *RemoteReplicaSpec)

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

type SQLServerTLSConfig added in v0.46.0

type SQLServerTLSConfig struct {
	kmapi.TLSConfig `json:",inline"`
	ClientTLS       bool `json:"clientTLS"`
}

func (*SQLServerTLSConfig) DeepCopy added in v0.46.0

func (in *SQLServerTLSConfig) DeepCopy() *SQLServerTLSConfig

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

func (*SQLServerTLSConfig) DeepCopyInto added in v0.46.0

func (in *SQLServerTLSConfig) DeepCopyInto(out *SQLServerTLSConfig)

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

type SSLMode

type SSLMode string

SSLMode represents available sslmodes of mongodb. ref: https://docs.mongodb.com/manual/reference/program/mongod/#cmdoption-mongod-sslmode +kubebuilder:validation:Enum=disabled;allowSSL;preferSSL;requireSSL

const (
	// SSLModeDisabled represents `disabled` sslMode. It ensures that the server does not use TLS/SSL.
	SSLModeDisabled SSLMode = "disabled"

	// SSLModeAllowSSL represents `allowSSL` sslMode. It ensures that the connections between servers do not use TLS/SSL. For incoming connections,
	// the server accepts both TLS/SSL and non-TLS/non-SSL.
	SSLModeAllowSSL SSLMode = "allowSSL"

	// SSLModePreferSSL represents `preferSSL` sslMode. It ensures that the connections between servers use TLS/SSL. For incoming connections,
	// the server accepts both TLS/SSL and non-TLS/non-SSL.
	SSLModePreferSSL SSLMode = "preferSSL"

	// SSLModeRequireSSL represents `requiteSSL` sslmode. It ensures that the server uses and accepts only TLS/SSL encrypted connections.
	SSLModeRequireSSL SSLMode = "requireSSL"
)

type ScriptSourceSpec

type ScriptSourceSpec struct {
	ScriptPath        string `json:"scriptPath,omitempty"`
	core.VolumeSource `json:",inline,omitempty"`
	Git               *GitRepo `json:"git,omitempty"`
}

func (*ScriptSourceSpec) DeepCopy

func (in *ScriptSourceSpec) DeepCopy() *ScriptSourceSpec

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

func (*ScriptSourceSpec) DeepCopyInto

func (in *ScriptSourceSpec) DeepCopyInto(out *ScriptSourceSpec)

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

type SecretReference added in v0.29.0

type SecretReference struct {
	core.LocalObjectReference `json:",inline,omitempty"`
	ExternallyManaged         bool `json:"externallyManaged,omitempty"`
}

func (*SecretReference) DeepCopy added in v0.29.0

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto added in v0.29.0

func (in *SecretReference) DeepCopyInto(out *SecretReference)

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

type SemiSyncSpec added in v0.27.0

type SemiSyncSpec struct {
	// count of slave to wait for before commit
	// +kubebuilder:default=1
	//+kubebuilder:validation:Minimum=1
	SourceWaitForReplicaCount int `json:"sourceWaitForReplicaCount,omitempty"`
	// +kubebuilder:default="24h"
	SourceTimeout metav1.Duration `json:"sourceTimeout,omitempty"`
	// recovery method if the slave has any errant transaction
	// +kubebuilder:default=PseudoTransaction
	ErrantTransactionRecoveryPolicy *ErrantTransactionRecoveryPolicy `json:"errantTransactionRecoveryPolicy"`
}

func (*SemiSyncSpec) DeepCopy added in v0.27.0

func (in *SemiSyncSpec) DeepCopy() *SemiSyncSpec

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

func (*SemiSyncSpec) DeepCopyInto added in v0.27.0

func (in *SemiSyncSpec) DeepCopyInto(out *SemiSyncSpec)

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

type ServiceAlias added in v0.15.0

type ServiceAlias string

+kubebuilder:validation:Enum=primary;standby;stats

const (
	PrimaryServiceAlias ServiceAlias = "primary"
	StandbyServiceAlias ServiceAlias = "standby"
	StatsServiceAlias   ServiceAlias = "stats"
)

type Singlestore added in v0.41.0

type Singlestore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SinglestoreSpec   `json:"spec,omitempty"`
	Status            SinglestoreStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=sdb,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Singlestore) AggregatorPetSet added in v0.44.0

func (s *Singlestore) AggregatorPetSet() string

func (*Singlestore) AppBindingMeta added in v0.41.0

func (s *Singlestore) AppBindingMeta() appcat.AppBindingMeta

func (*Singlestore) CertificateName added in v0.41.0

func (s *Singlestore) CertificateName(alias SinglestoreCertificateAlias) string

CertificateName returns the default certificate name and/or certificate secret name for a certificate alias

func (*Singlestore) ConfigSecretName added in v0.41.0

func (s *Singlestore) ConfigSecretName() string

func (*Singlestore) CustomResourceDefinition added in v0.41.0

func (s *Singlestore) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Singlestore) DeepCopy added in v0.41.0

func (in *Singlestore) DeepCopy() *Singlestore

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

func (*Singlestore) DeepCopyInto added in v0.41.0

func (in *Singlestore) DeepCopyInto(out *Singlestore)

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

func (*Singlestore) DeepCopyObject added in v0.41.0

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

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

func (*Singlestore) Default added in v0.41.0

func (s *Singlestore) Default()

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

func (*Singlestore) DefaultUserCredSecretName added in v0.41.0

func (s *Singlestore) DefaultUserCredSecretName(username string) string

func (*Singlestore) GetAuthSecretName added in v0.41.0

func (s *Singlestore) GetAuthSecretName() string

func (*Singlestore) GetCertSecretName added in v0.45.0

func (s *Singlestore) GetCertSecretName(alias SinglestoreCertificateAlias) string

GetCertSecretName returns the secret name for a certificate alias if any otherwise returns default certificate secret name for the given alias.

func (Singlestore) GetNameSpacedName added in v0.41.0

func (s Singlestore) GetNameSpacedName() string

func (*Singlestore) GetPersistentSecrets added in v0.41.0

func (s *Singlestore) GetPersistentSecrets() []string

func (*Singlestore) GoverningServiceName added in v0.41.0

func (s *Singlestore) GoverningServiceName() string

func (*Singlestore) IsClustering added in v0.41.0

func (s *Singlestore) IsClustering() bool

func (*Singlestore) IsStandalone added in v0.41.0

func (s *Singlestore) IsStandalone() bool

func (*Singlestore) LeafPetSet added in v0.44.0

func (s *Singlestore) LeafPetSet() string

func (*Singlestore) OffshootLabels added in v0.41.0

func (s *Singlestore) OffshootLabels() map[string]string

func (*Singlestore) OffshootName added in v0.41.0

func (s *Singlestore) OffshootName() string

func (*Singlestore) OffshootSelectors added in v0.41.0

func (s *Singlestore) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*Singlestore) Owner added in v0.41.0

func (s *Singlestore) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*Singlestore) PVCName added in v0.41.0

func (s *Singlestore) PVCName(alias string) string

func (*Singlestore) PetSetName added in v0.44.0

func (s *Singlestore) PetSetName() string

func (*Singlestore) PodControllerLabel added in v0.41.0

func (s *Singlestore) PodControllerLabel(podTemplate *ofst.PodTemplateSpec) map[string]string

func (*Singlestore) PodControllerLabels added in v0.41.0

func (s *Singlestore) PodControllerLabels(podTemplate *ofst.PodTemplateSpec, extraLabels ...map[string]string) map[string]string

func (*Singlestore) PodLabel added in v0.41.0

func (s *Singlestore) PodLabel(podTemplate *ofst.PodTemplateSpec) map[string]string

func (*Singlestore) PodLabels added in v0.41.0

func (s *Singlestore) PodLabels(podTemplate *ofst.PodTemplateSpec, extraLabels ...map[string]string) map[string]string

func (*Singlestore) PrimaryServiceDNS added in v0.41.0

func (s *Singlestore) PrimaryServiceDNS() string

func (*Singlestore) ReplicasAreReady added in v0.41.0

func (s *Singlestore) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*Singlestore) ResourceFQN added in v0.41.0

func (s *Singlestore) ResourceFQN() string

func (*Singlestore) ResourceKind added in v0.41.0

func (s *Singlestore) ResourceKind() string

func (*Singlestore) ResourcePlural added in v0.41.0

func (s *Singlestore) ResourcePlural() string

func (*Singlestore) ResourceShortCode added in v0.41.0

func (s *Singlestore) ResourceShortCode() string

func (*Singlestore) ResourceSingular added in v0.41.0

func (s *Singlestore) ResourceSingular() string

func (*Singlestore) ServiceAccountName added in v0.41.0

func (s *Singlestore) ServiceAccountName() string

func (*Singlestore) ServiceLabels added in v0.41.0

func (s *Singlestore) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Singlestore) ServiceName added in v0.41.0

func (s *Singlestore) ServiceName() string

func (*Singlestore) SetDefaults added in v0.41.0

func (s *Singlestore) SetDefaults()

func (*Singlestore) SetHealthCheckerDefaults added in v0.41.0

func (s *Singlestore) SetHealthCheckerDefaults()

func (*Singlestore) SetTLSDefaults added in v0.41.0

func (s *Singlestore) SetTLSDefaults()

func (Singlestore) StatsService added in v0.44.0

func (s Singlestore) StatsService() mona.StatsAccessor

func (Singlestore) StatsServiceLabels added in v0.44.0

func (s Singlestore) StatsServiceLabels() map[string]string

func (*Singlestore) ValidateCreate added in v0.41.0

func (s *Singlestore) ValidateCreate() (admission.Warnings, error)

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

func (*Singlestore) ValidateCreateOrUpdate added in v0.41.0

func (s *Singlestore) ValidateCreateOrUpdate() field.ErrorList

func (*Singlestore) ValidateDelete added in v0.41.0

func (s *Singlestore) ValidateDelete() (admission.Warnings, error)

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

func (*Singlestore) ValidateUpdate added in v0.41.0

func (s *Singlestore) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type SinglestoreCertificateAlias added in v0.41.0

type SinglestoreCertificateAlias string

+kubebuilder:validation:Enum=server;client;metrics-exporter

const (
	SinglestoreServerCert SinglestoreCertificateAlias = "server"
	SinglestoreClientCert SinglestoreCertificateAlias = "client"
)

type SinglestoreList added in v0.41.0

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

SinglestoreList contains a list of Singlestore

func (*SinglestoreList) DeepCopy added in v0.41.0

func (in *SinglestoreList) DeepCopy() *SinglestoreList

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

func (*SinglestoreList) DeepCopyInto added in v0.41.0

func (in *SinglestoreList) DeepCopyInto(out *SinglestoreList)

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

func (*SinglestoreList) DeepCopyObject added in v0.41.0

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

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

type SinglestoreNode added in v0.41.0

type SinglestoreNode struct {
	// Replicas represents number of replica for this specific type of node
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// suffix to append with node name
	// +optional
	Suffix string `json:"suffix,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// Storage to specify how storage shall be used.
	// +optional
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*SinglestoreNode) DeepCopy added in v0.41.0

func (in *SinglestoreNode) DeepCopy() *SinglestoreNode

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

func (*SinglestoreNode) DeepCopyInto added in v0.41.0

func (in *SinglestoreNode) DeepCopyInto(out *SinglestoreNode)

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

type SinglestoreSpec added in v0.41.0

type SinglestoreSpec struct {
	// Version of Singlestore to be deployed.
	// +optional
	Version string `json:"version"`

	// Singlestore topology for node specification
	// +optional
	Topology *SinglestoreTopology `json:"topology,omitempty"`

	// StorageType can be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// Init is used to initialize database
	// +optional
	Init *InitSpec `json:"init,omitempty"`

	// Singlestore License secret
	LicenseSecret *SecretReference `json:"licenseSecret"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate *ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 10, timeoutSeconds: 10, failureThreshold: 1}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`
}

func (*SinglestoreSpec) DeepCopy added in v0.41.0

func (in *SinglestoreSpec) DeepCopy() *SinglestoreSpec

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

func (*SinglestoreSpec) DeepCopyInto added in v0.41.0

func (in *SinglestoreSpec) DeepCopyInto(out *SinglestoreSpec)

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

type SinglestoreStatus added in v0.41.0

type SinglestoreStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

SinglestoreStatus defines the observed state of Singlestore

func (*SinglestoreStatus) DeepCopy added in v0.41.0

func (in *SinglestoreStatus) DeepCopy() *SinglestoreStatus

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

func (*SinglestoreStatus) DeepCopyInto added in v0.41.0

func (in *SinglestoreStatus) DeepCopyInto(out *SinglestoreStatus)

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

type SinglestoreTopology added in v0.41.0

type SinglestoreTopology struct {
	Aggregator *SinglestoreNode `json:"aggregator,omitempty"`
	Leaf       *SinglestoreNode `json:"leaf,omitempty"`
}

SinglestoreTopology defines singlestore topology node specs for aggregators and leaves node

func (*SinglestoreTopology) DeepCopy added in v0.41.0

func (in *SinglestoreTopology) DeepCopy() *SinglestoreTopology

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

func (*SinglestoreTopology) DeepCopyInto added in v0.41.0

func (in *SinglestoreTopology) DeepCopyInto(out *SinglestoreTopology)

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

type Solr added in v0.41.0

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

	Spec   SolrSpec   `json:"spec,omitempty"`
	Status SolrStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=sl,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*Solr) AppBindingMeta added in v0.41.0

func (s *Solr) AppBindingMeta() appcat.AppBindingMeta

func (*Solr) Append added in v0.41.0

func (s *Solr) Append(opt map[string]string) string

func (*Solr) CustomResourceDefinition added in v0.41.0

func (s *Solr) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Solr) DeepCopy added in v0.41.0

func (in *Solr) DeepCopy() *Solr

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

func (*Solr) DeepCopyInto added in v0.41.0

func (in *Solr) DeepCopyInto(out *Solr)

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

func (*Solr) DeepCopyObject added in v0.41.0

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

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

func (*Solr) Default added in v0.41.0

func (s *Solr) Default()

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

func (*Solr) DefaultPodRoleBindingName added in v0.41.0

func (s *Solr) DefaultPodRoleBindingName() string

func (*Solr) DefaultPodRoleName added in v0.41.0

func (s *Solr) DefaultPodRoleName() string

func (*Solr) GetConnectionScheme added in v0.41.0

func (s *Solr) GetConnectionScheme() string

func (*Solr) GetPersistentSecrets added in v0.41.0

func (s *Solr) GetPersistentSecrets() []string

func (*Solr) GoverningServiceName added in v0.41.0

func (s *Solr) GoverningServiceName() string

func (*Solr) Merge added in v0.41.0

func (s *Solr) Merge(opt map[string]string) map[string]string

func (*Solr) OffshootLabels added in v0.41.0

func (s *Solr) OffshootLabels() map[string]string

func (*Solr) OffshootName added in v0.41.0

func (s *Solr) OffshootName() string

func (*Solr) OffshootSelectors added in v0.41.0

func (s *Solr) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*Solr) OverseerDiscoveryServiceName added in v0.41.0

func (s *Solr) OverseerDiscoveryServiceName() string

func (*Solr) Owner added in v0.41.0

func (s *Solr) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*Solr) PVCName added in v0.41.0

func (s *Solr) PVCName(alias string) string

func (*Solr) PetSetName added in v0.44.0

func (s *Solr) PetSetName(suffix string) string

func (*Solr) PodControllerLabels added in v0.41.0

func (s *Solr) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*Solr) PodLabels added in v0.41.0

func (s *Solr) PodLabels(extraLabels ...map[string]string) map[string]string

func (*Solr) ReplicasAreReady added in v0.41.0

func (s *Solr) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*Solr) ResourceFQN added in v0.41.0

func (s *Solr) ResourceFQN() string

func (*Solr) ResourceKind added in v0.41.0

func (s *Solr) ResourceKind() string

func (*Solr) ResourcePlural added in v0.41.0

func (s *Solr) ResourcePlural() string

func (*Solr) ServiceAccountName added in v0.41.0

func (s *Solr) ServiceAccountName() string

func (*Solr) ServiceLabels added in v0.44.0

func (s *Solr) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*Solr) ServiceName added in v0.41.0

func (s *Solr) ServiceName() string

func (*Solr) SetDefaults added in v0.41.0

func (s *Solr) SetDefaults()

func (*Solr) SetHealthCheckerDefaults added in v0.41.0

func (s *Solr) SetHealthCheckerDefaults()

func (*Solr) SolrSecretKey added in v0.41.0

func (s *Solr) SolrSecretKey() string

func (*Solr) SolrSecretName added in v0.41.0

func (s *Solr) SolrSecretName(suffix string) string

func (*Solr) StatsService added in v0.44.0

func (s *Solr) StatsService() mona.StatsAccessor

func (*Solr) StatsServiceLabels added in v0.44.0

func (s *Solr) StatsServiceLabels() map[string]string

func (*Solr) ValidateCreate added in v0.41.0

func (s *Solr) ValidateCreate() (admission.Warnings, error)

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

func (*Solr) ValidateCreateOrUpdate added in v0.41.0

func (s *Solr) ValidateCreateOrUpdate() field.ErrorList

func (*Solr) ValidateDelete added in v0.41.0

func (s *Solr) ValidateDelete() (admission.Warnings, error)

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

func (*Solr) ValidateUpdate added in v0.41.0

func (s *Solr) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type SolrApp added in v0.41.0

type SolrApp struct {
	*Solr
}

func (*SolrApp) DeepCopy added in v0.41.0

func (in *SolrApp) DeepCopy() *SolrApp

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

func (*SolrApp) DeepCopyInto added in v0.41.0

func (in *SolrApp) DeepCopyInto(out *SolrApp)

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

func (SolrApp) Name added in v0.41.0

func (s SolrApp) Name() string

func (SolrApp) Type added in v0.41.0

func (s SolrApp) Type() appcat.AppType

type SolrClusterTopology added in v0.41.0

type SolrClusterTopology struct {
	Overseer    *SolrNode `json:"overseer,omitempty"`
	Data        *SolrNode `json:"data,omitempty"`
	Coordinator *SolrNode `json:"coordinator,omitempty"`
}

func (*SolrClusterTopology) DeepCopy added in v0.41.0

func (in *SolrClusterTopology) DeepCopy() *SolrClusterTopology

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

func (*SolrClusterTopology) DeepCopyInto added in v0.41.0

func (in *SolrClusterTopology) DeepCopyInto(out *SolrClusterTopology)

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

type SolrList added in v0.41.0

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

SolrList contains a list of Solr

func (*SolrList) DeepCopy added in v0.41.0

func (in *SolrList) DeepCopy() *SolrList

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

func (*SolrList) DeepCopyInto added in v0.41.0

func (in *SolrList) DeepCopyInto(out *SolrList)

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

func (*SolrList) DeepCopyObject added in v0.41.0

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

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

type SolrNode added in v0.41.0

type SolrNode struct {
	// Replica represents number of replica for this specific type of nodes
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// suffix to append with node name
	// +optional
	Suffix string `json:"suffix,omitempty"`

	// Storage to specify how storage shall be used.
	// +optional
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`
}

func (*SolrNode) DeepCopy added in v0.41.0

func (in *SolrNode) DeepCopy() *SolrNode

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

func (*SolrNode) DeepCopyInto added in v0.41.0

func (in *SolrNode) DeepCopyInto(out *SolrNode)

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

type SolrNodeRoleType added in v0.41.0

type SolrNodeRoleType string

+kubebuilder:validation:Enum=overseer;data;coordinator;combined

const (
	SolrNodeRoleOverseer    SolrNodeRoleType = "overseer"
	SolrNodeRoleData        SolrNodeRoleType = "data"
	SolrNodeRoleCoordinator SolrNodeRoleType = "coordinator"
	SolrNodeRoleSet                          = "set"
)

type SolrSpec added in v0.41.0

type SolrSpec struct {
	// Version of Solr to be deployed
	Version string `json:"version"`

	// Number of instances to deploy for a Solr database
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Solr topology for node specification
	// +optional
	Topology *SolrClusterTopology `json:"topology,omitempty"`

	// StorageType van be durable (default) or ephemeral
	StorageType StorageType `json:"storageType,omitempty"`

	// Storage to specify how storage shall be used
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// 	// ZooKeeper contains information for Solr to store configurations for collections
	ZookeeperRef *kmapi.ObjectReference `json:"zookeeperRef,omitempty"`

	// +optional
	SolrModules []string `json:"solrModules,omitempty"`

	// +optional
	SolrOpts []string `json:"solrOpts,omitempty"`

	// To enable ssl for http layer
	EnableSSL bool `json:"enableSSL,omitempty"`

	// TLS contains tls configurations for client and server.
	// +optional
	TLS *kmapi.TLSConfig `json:"tls,omitempty"`

	// Disable security. It disables authentication security of users.
	// If unset, default is false
	// +optional
	DisableSecurity bool `json:"disableSecurity,omitempty"`

	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// +optional
	AuthSecret *core.LocalObjectReference `json:"authSecret,omitempty"`

	// +optional
	ZookeeperDigestSecret *core.LocalObjectReference `json:"zookeeperDigestSecret,omitempty"`

	// +optional
	ZookeeperDigestReadonlySecret *core.LocalObjectReference `json:"zookeeperDigestReadonlySecret,omitempty"`

	// +optional
	AuthConfigSecret *core.LocalObjectReference `json:"authConfigSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 20, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`
}

SolrSpec defines the desired state of Solr c

func (*SolrSpec) DeepCopy added in v0.41.0

func (in *SolrSpec) DeepCopy() *SolrSpec

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

func (*SolrSpec) DeepCopyInto added in v0.41.0

func (in *SolrSpec) DeepCopyInto(out *SolrSpec)

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

type SolrStatus added in v0.41.0

type SolrStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

SolrStatus defines the observed state of Solr

func (*SolrStatus) DeepCopy added in v0.41.0

func (in *SolrStatus) DeepCopy() *SolrStatus

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

func (*SolrStatus) DeepCopyInto added in v0.41.0

func (in *SolrStatus) DeepCopyInto(out *SolrStatus)

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

type StorageEngine

type StorageEngine string

StorageEngine represents storage engine of mongodb clusters. ref: https://docs.mongodb.com/manual/core/storage-engines/

const (
	// StorageEngineWiredTiger represents `wiredTiger` storage engine of mongodb.
	StorageEngineWiredTiger StorageEngine = "wiredTiger"

	// StorageEngineInMemory represents `inMemory` storage engine of mongodb.
	StorageEngineInMemory StorageEngine = "inMemory"
)

type StorageType

type StorageType string

+kubebuilder:validation:Enum=Durable;Ephemeral

const (
	// default storage type and requires spec.storage to be configured
	StorageTypeDurable StorageType = "Durable"
	// Uses emptyDir as storage
	StorageTypeEphemeral StorageType = "Ephemeral"
)

type SystemUserSecretsSpec added in v0.28.0

type SystemUserSecretsSpec struct {
	// ReplicationUserSecret contains replication system user credentials
	// +optional
	ReplicationUserSecret *SecretReference `json:"replicationUserSecret,omitempty"`

	// MonitorUserSecret contains monitor system user credentials
	// +optional
	MonitorUserSecret *SecretReference `json:"monitorUserSecret,omitempty"`
}

func (*SystemUserSecretsSpec) DeepCopy added in v0.28.0

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

func (*SystemUserSecretsSpec) DeepCopyInto added in v0.28.0

func (in *SystemUserSecretsSpec) DeepCopyInto(out *SystemUserSecretsSpec)

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

type TLSPolicy

type TLSPolicy struct {
	Member         *MemberSecret `json:"member,omitempty"`
	OperatorSecret string        `json:"operatorSecret,omitempty"`
}

func (*TLSPolicy) DeepCopy

func (in *TLSPolicy) DeepCopy() *TLSPolicy

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

func (*TLSPolicy) DeepCopyInto

func (in *TLSPolicy) DeepCopyInto(out *TLSPolicy)

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

type TerminationPolicy

type TerminationPolicy string

+kubebuilder:validation:Enum=Halt;Delete;WipeOut;DoNotTerminate

const (
	// Deletes database pods, service but leave the PVCs and stash backup data intact.
	TerminationPolicyHalt TerminationPolicy = "Halt"
	// Deletes database pods, service, pvcs but leave the stash backup data intact.
	TerminationPolicyDelete TerminationPolicy = "Delete"
	// Deletes database pods, service, pvcs and stash backup data.
	TerminationPolicyWipeOut TerminationPolicy = "WipeOut"
	// Rejects attempt to delete database using ValidationWebhook.
	TerminationPolicyDoNotTerminate TerminationPolicy = "DoNotTerminate"
)

type WALLimitPolicy added in v0.44.0

type WALLimitPolicy string
const (
	WALKeepSize     WALLimitPolicy = "WALKeepSize"
	ReplicationSlot WALLimitPolicy = "ReplicationSlot"
	WALKeepSegment  WALLimitPolicy = "WALKeepSegment"
)

type ZooKeeper added in v0.41.0

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

	Spec   ZooKeeperSpec   `json:"spec,omitempty"`
	Status ZooKeeperStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=zk,scope=Namespaced +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".apiVersion" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*ZooKeeper) Address added in v0.41.0

func (z *ZooKeeper) Address() string

func (*ZooKeeper) AdminServerServiceName added in v0.41.0

func (z *ZooKeeper) AdminServerServiceName() string

func (*ZooKeeper) AppBindingMeta added in v0.41.0

func (z *ZooKeeper) AppBindingMeta() appcat.AppBindingMeta

func (*ZooKeeper) ConfigSecretName added in v0.41.0

func (z *ZooKeeper) ConfigSecretName() string

func (*ZooKeeper) CustomResourceDefinition added in v0.41.0

func (z *ZooKeeper) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ZooKeeper) DeepCopy added in v0.41.0

func (in *ZooKeeper) DeepCopy() *ZooKeeper

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

func (*ZooKeeper) DeepCopyInto added in v0.41.0

func (in *ZooKeeper) DeepCopyInto(out *ZooKeeper)

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

func (*ZooKeeper) DeepCopyObject added in v0.41.0

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

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

func (*ZooKeeper) Default added in v0.41.0

func (z *ZooKeeper) Default()

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

func (*ZooKeeper) GetAuthSecretName added in v0.41.0

func (z *ZooKeeper) GetAuthSecretName() string

func (*ZooKeeper) GetConnectionScheme added in v0.41.0

func (z *ZooKeeper) GetConnectionScheme() string

func (*ZooKeeper) GetPersistentSecrets added in v0.41.0

func (z *ZooKeeper) GetPersistentSecrets() []string

func (*ZooKeeper) GoverningServiceName added in v0.41.0

func (z *ZooKeeper) GoverningServiceName() string

func (*ZooKeeper) OffshootLabels added in v0.41.0

func (z *ZooKeeper) OffshootLabels() map[string]string

func (*ZooKeeper) OffshootName added in v0.41.0

func (z *ZooKeeper) OffshootName() string

func (*ZooKeeper) OffshootSelectors added in v0.41.0

func (z *ZooKeeper) OffshootSelectors(extraSelectors ...map[string]string) map[string]string

func (*ZooKeeper) Owner added in v0.41.0

func (z *ZooKeeper) Owner() *meta.OwnerReference

Owner returns owner reference to resources

func (*ZooKeeper) PVCName added in v0.41.0

func (z *ZooKeeper) PVCName(alias string) string

func (*ZooKeeper) PetSetName added in v0.44.0

func (z *ZooKeeper) PetSetName() string

func (*ZooKeeper) PodControllerLabels added in v0.41.0

func (z *ZooKeeper) PodControllerLabels(extraLabels ...map[string]string) map[string]string

func (*ZooKeeper) PodLabels added in v0.41.0

func (z *ZooKeeper) PodLabels(extraLabels ...map[string]string) map[string]string

func (*ZooKeeper) ReplicasAreReady added in v0.41.0

func (z *ZooKeeper) ReplicasAreReady(lister pslister.PetSetLister) (bool, string, error)

func (*ZooKeeper) ResourceFQN added in v0.41.0

func (z *ZooKeeper) ResourceFQN() string

func (*ZooKeeper) ResourceKind added in v0.41.0

func (z *ZooKeeper) ResourceKind() string

func (*ZooKeeper) ResourcePlural added in v0.41.0

func (z *ZooKeeper) ResourcePlural() string

func (*ZooKeeper) ResourceShortCode added in v0.41.0

func (z *ZooKeeper) ResourceShortCode() string

func (*ZooKeeper) ResourceSingular added in v0.41.0

func (z *ZooKeeper) ResourceSingular() string

func (*ZooKeeper) ServiceAccountName added in v0.41.0

func (z *ZooKeeper) ServiceAccountName() string

func (*ZooKeeper) ServiceLabels added in v0.41.0

func (z *ZooKeeper) ServiceLabels(alias ServiceAlias, extraLabels ...map[string]string) map[string]string

func (*ZooKeeper) ServiceName added in v0.41.0

func (z *ZooKeeper) ServiceName() string

func (*ZooKeeper) SetDefaults added in v0.41.0

func (z *ZooKeeper) SetDefaults()

func (*ZooKeeper) SetHealthCheckerDefaults added in v0.41.0

func (z *ZooKeeper) SetHealthCheckerDefaults()

func (*ZooKeeper) SetupWebhookWithManager added in v0.41.0

func (z *ZooKeeper) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ZooKeeper) StatsService added in v0.44.0

func (z *ZooKeeper) StatsService() mona.StatsAccessor

func (*ZooKeeper) StatsServiceLabels added in v0.44.0

func (z *ZooKeeper) StatsServiceLabels() map[string]string

func (*ZooKeeper) ValidateCreate added in v0.41.0

func (z *ZooKeeper) ValidateCreate() (admission.Warnings, error)

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

func (*ZooKeeper) ValidateCreateOrUpdate added in v0.41.0

func (z *ZooKeeper) ValidateCreateOrUpdate() (admission.Warnings, error)

func (*ZooKeeper) ValidateDelete added in v0.41.0

func (z *ZooKeeper) ValidateDelete() (admission.Warnings, error)

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

func (*ZooKeeper) ValidateUpdate added in v0.41.0

func (z *ZooKeeper) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

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

type ZooKeeperApp added in v0.41.0

type ZooKeeperApp struct {
	*ZooKeeper
}

func (*ZooKeeperApp) DeepCopy added in v0.41.0

func (in *ZooKeeperApp) DeepCopy() *ZooKeeperApp

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

func (*ZooKeeperApp) DeepCopyInto added in v0.41.0

func (in *ZooKeeperApp) DeepCopyInto(out *ZooKeeperApp)

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

func (ZooKeeperApp) Name added in v0.41.0

func (z ZooKeeperApp) Name() string

func (ZooKeeperApp) Type added in v0.41.0

func (z ZooKeeperApp) Type() appcat.AppType

type ZooKeeperList added in v0.41.0

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

func (*ZooKeeperList) DeepCopy added in v0.41.0

func (in *ZooKeeperList) DeepCopy() *ZooKeeperList

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

func (*ZooKeeperList) DeepCopyInto added in v0.41.0

func (in *ZooKeeperList) DeepCopyInto(out *ZooKeeperList)

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

func (*ZooKeeperList) DeepCopyObject added in v0.41.0

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

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

type ZooKeeperSpec added in v0.41.0

type ZooKeeperSpec struct {
	// ZooKeeper Version to be deployed
	Version string `json:"version"`

	// Number ZooKeeper Replicas
	// +optional
	Replicas *int32 `json:"replicas"`

	// +optional
	// +kubebuilder:default=8080
	AdminServerPort int32 `json:"adminServerPort"`

	// Storage to specify how storage shall be used.
	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty"`

	// If disable Auth true then don't create any auth secret
	// +optional
	DisableAuth bool `json:"disableAuth,omitempty"`

	// Database authentication secret
	// +optional
	AuthSecret *SecretReference `json:"authSecret,omitempty"`

	// ConfigSecret is an optional field to provide custom configuration file for database (i.e config.properties).
	// If specified, this file will be used as configuration file otherwise default configuration file will be used.
	// +optional
	ConfigSecret *core.LocalObjectReference `json:"configSecret,omitempty"`

	// PodTemplate is an optional configuration for pods used to expose database
	// +optional
	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty"`

	// ServiceTemplates is an optional configuration for services used to expose database
	// +optional
	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty"`

	// DeletionPolicy controls the delete operation for database
	// +optional
	DeletionPolicy TerminationPolicy `json:"deletionPolicy,omitempty"`

	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
	// +optional
	Halted bool `json:"halted,omitempty"`

	// HealthChecker defines attributes of the health checker
	// +optional
	// +kubebuilder:default={periodSeconds: 20, timeoutSeconds: 10, failureThreshold: 3}
	HealthChecker kmapi.HealthCheckSpec `json:"healthChecker"`

	// Monitor is used monitor database instance
	// +optional
	Monitor *mona.AgentSpec `json:"monitor,omitempty"`
}

ZooKeeperSpec defines the desired state of ZooKeeper

func (*ZooKeeperSpec) DeepCopy added in v0.41.0

func (in *ZooKeeperSpec) DeepCopy() *ZooKeeperSpec

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

func (*ZooKeeperSpec) DeepCopyInto added in v0.41.0

func (in *ZooKeeperSpec) DeepCopyInto(out *ZooKeeperSpec)

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

type ZooKeeperStatus added in v0.41.0

type ZooKeeperStatus struct {
	// Specifies the current phase of the database
	// +optional
	Phase DatabasePhase `json:"phase,omitempty"`
	// observedGeneration is the most recent generation observed for this resource. It corresponds to the
	// resource's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions applied to the database, such as approval or denial.
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

ZooKeeperStatus defines the observed state of ZooKeeper

func (*ZooKeeperStatus) DeepCopy added in v0.41.0

func (in *ZooKeeperStatus) DeepCopy() *ZooKeeperStatus

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

func (*ZooKeeperStatus) DeepCopyInto added in v0.41.0

func (in *ZooKeeperStatus) DeepCopyInto(out *ZooKeeperStatus)

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

type ZookeeperRef added in v0.44.0

type ZookeeperRef struct {
	// Name and namespace of appbinding of zookeeper
	// +optional
	*kmapi.ObjectReference `json:",omitempty"`

	// Base ZooKeeperSpec path
	// +optional
	PathsBase string `json:"pathsBase,omitempty"`

	// +optional
	ExternallyManaged bool `json:"externallyManaged,omitempty"`

	// Version of the ZK used
	// +optional
	Version *string `json:"version,omitempty"`
}

func (*ZookeeperRef) DeepCopy added in v0.44.0

func (in *ZookeeperRef) DeepCopy() *ZookeeperRef

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

func (*ZookeeperRef) DeepCopyInto added in v0.44.0

func (in *ZookeeperRef) DeepCopyInto(out *ZookeeperRef)

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