Documentation

Overview

    +groupName=kubedb.com

    Index

    Constants

    View Source
    const (
    	// Deprecated
    	DatabaseNamePrefix = "kubedb"
    
    	KubeDBOrganization = "kubedb"
    
    	LabelRole = kubedb.GroupName + "/role"
    
    	ReplicationModeDetectorContainerName = "replication-mode-detector"
    	DatabasePodPrimary                   = "primary"
    	DatabasePodStandby                   = "standby"
    
    	ComponentDatabase     = "database"
    	RoleStats             = "stats"
    	DefaultStatsPath      = "/metrics"
    	DefaultPasswordLength = 16
    
    	ContainerExporterName = "exporter"
    	LocalHost             = "localhost"
    	LocalHostIP           = "127.0.0.1"
    
    	DBCustomConfigName             = "custom-config"
    	DefaultVolumeClaimTemplateName = "data"
    
    	DBTLSVolume         = "tls-volume"
    	DBExporterTLSVolume = "exporter-tls-volume"
    
    	// =========================== Database key Constants ============================
    	PostgresKey      = ResourceSingularPostgres + "." + kubedb.GroupName
    	ElasticsearchKey = ResourceSingularElasticsearch + "." + kubedb.GroupName
    	MySQLKey         = ResourceSingularMySQL + "." + kubedb.GroupName
    	MariaDBKey       = ResourceSingularMariaDB + "." + kubedb.GroupName
    	PerconaXtraDBKey = ResourceSingularPerconaXtraDB + "." + kubedb.GroupName
    	MongoDBKey       = ResourceSingularMongoDB + "." + kubedb.GroupName
    	RedisKey         = ResourceSingularRedis + "." + kubedb.GroupName
    	MemcachedKey     = ResourceSingularMemcached + "." + kubedb.GroupName
    	EtcdKey          = ResourceSingularEtcd + "." + kubedb.GroupName
    	ProxySQLKey      = ResourceSingularProxySQL + "." + kubedb.GroupName
    
    	// =========================== Elasticsearch Constants ============================
    	ElasticsearchRestPort                        = 9200
    	ElasticsearchRestPortName                    = "http"
    	ElasticsearchTransportPort                   = 9300
    	ElasticsearchTransportPortName               = "transport"
    	ElasticsearchMetricsPort                     = 9600
    	ElasticsearchIngestNodeSuffix                = "ingest"
    	ElasticsearchDataNodeSuffix                  = "data"
    	ElasticsearchMasterNodeSuffix                = "master"
    	ElasticsearchNodeRoleMaster                  = kubedb.GroupName + "/" + "role-master"
    	ElasticsearchNodeRoleIngest                  = kubedb.GroupName + "/" + "role-ingest"
    	ElasticsearchNodeRoleData                    = kubedb.GroupName + "/" + "role-data"
    	ElasticsearchNodeRoleSet                     = "set"
    	ElasticsearchConfigDir                       = "/usr/share/elasticsearch/config"
    	ElasticsearchTempConfigDir                   = "/elasticsearch/temp-config"
    	ElasticsearchCustomConfigDir                 = "/elasticsearch/custom-config"
    	ElasticsearchDataDir                         = "/usr/share/elasticsearch/data"
    	ElasticsearchOpendistroSecurityConfigDir     = "/usr/share/elasticsearch/plugins/opendistro_security/securityconfig"
    	ElasticsearchSearchGuardSecurityConfigDir    = "/usr/share/elasticsearch/plugins/search-guard-%v/sgconfig"
    	ElasticsearchOpendistroReadallMonitorRole    = "readall_and_monitor"
    	ElasticsearchSearchGuardReadallMonitorRoleV7 = "SGS_READALL_AND_MONITOR"
    	ElasticsearchSearchGuardReadallMonitorRoleV6 = "sg_readall_and_monitor"
    	ElasticsearchStatusGreen                     = "green"
    	ElasticsearchStatusYellow                    = "yellow"
    	ElasticsearchStatusRed                       = "red"
    	ElasticsearchInitSysctlContainerName         = "init-sysctl"
    	ElasticsearchInitConfigMergerContainerName   = "config-merger"
    	ElasticsearchContainerName                   = "elasticsearch"
    	ElasticsearchExporterContainerName           = "exporter"
    
    	// Ref:
    	//	- https://www.elastic.co/guide/en/elasticsearch/reference/7.6/heap-size.html#heap-size
    	//	- no more than 50% of your physical RAM
    	//	- no more than 32GB that the JVM uses for compressed object pointers (compressed oops)
    	//	- no more than 26GB for zero-based compressed oops;
    	// 26 GB is safe on most systems
    	ElasticsearchMaxHeapSize = 26 * 1024 * 1024 * 1024
    	// 128MB
    	ElasticsearchMinHeapSize = 128 * 1024 * 1024
    
    	// =========================== Memcached Constants ============================
    	MemcachedDatabasePortName       = "db"
    	MemcachedPrimaryServicePortName = "primary"
    	MemcachedDatabasePort           = 11211
    
    	MongoDBDatabasePortName       = "db"
    	MongoDBPrimaryServicePortName = "primary"
    	MongoDBDatabasePort           = 27017
    	MongoDBKeyFileSecretSuffix    = "-key"
    	MongoDBRootUsername           = "root"
    	MongoDBCustomConfigFile       = "mongod.conf"
    	NodeTypeMongos                = "mongos"
    	NodeTypeShard                 = "shard"
    	NodeTypeConfig                = "configsvr"
    
    	MongoDBWorkDirectoryName = "workdir"
    	MongoDBWorkDirectoryPath = "/work-dir"
    
    	MongoDBCertDirectoryName = "certdir"
    
    	MongoDBDataDirectoryName = "datadir"
    	MongoDBDataDirectoryPath = "/data/db"
    
    	MongoDBInitInstallContainerName   = "copy-config"
    	MongoDBInitBootstrapContainerName = "bootstrap"
    
    	MongoDBConfigDirectoryName = "config"
    	MongoDBConfigDirectoryPath = "/data/configdb"
    
    	MongoDBInitialConfigDirectoryName = "configdir"
    	MongoDBInitialConfigDirectoryPath = "/configdb-readonly"
    
    	MongoDBInitScriptDirectoryName = "init-scripts"
    	MongoDBInitScriptDirectoryPath = "/init-scripts"
    
    	MongoDBClientCertDirectoryName = "client-cert"
    	MongoDBClientCertDirectoryPath = "/client-cert"
    
    	MongoDBServerCertDirectoryName = "server-cert"
    	MongoDBServerCertDirectoryPath = "/server-cert"
    
    	MongoDBInitialKeyDirectoryName = "keydir"
    	MongoDBInitialKeyDirectoryPath = "/keydir-readonly"
    
    	MongoDBContainerName = ResourceSingularMongoDB
    
    	MongoDBDefaultVolumeClaimTemplateName = MongoDBDataDirectoryName
    
    	MongodbUser             = "root"
    	MongoDBKeyForKeyFile    = "key.txt"
    	MongoDBAuthSecretSuffix = "-auth"
    
    	// =========================== MySQL Constants ============================
    	MySQLMetricsExporterConfigSecretSuffix = "metrics-exporter-config"
    	MySQLDatabasePortName                  = "db"
    	MySQLPrimaryServicePortName            = "primary"
    	MySQLStandbyServicePortName            = "standby"
    	MySQLDatabasePort                      = 3306
    	MySQLGroupComPort                      = 33060
    	MySQLMaxGroupMembers                   = 9
    	// The recommended MySQL server version for group replication (GR)
    	MySQLGRRecommendedVersion       = "5.7.25"
    	MySQLDefaultGroupSize           = 3
    	MySQLDefaultBaseServerID  int64 = 1
    	// The server id for each group member must be unique and in the range [1, 2^32 - 1]
    	// And the maximum group size is 9. So MySQLMaxBaseServerID is the maximum safe value
    	// for BaseServerID calculated as max MySQL server_id value - max Replication Group size.
    	// xref: https://dev.mysql.com/doc/refman/5.7/en/replication-options.html
    	MySQLMaxBaseServerID int64 = ((1 << 32) - 1) - 9
    	MySQLRootUserName          = "MYSQL_ROOT_USERNAME"
    	MySQLRootPassword          = "MYSQL_ROOT_PASSWORD"
    	MySQLName                  = "MYSQL_NAME"
    
    	MySQLTLSConfigCustom     = "custom"
    	MySQLTLSConfigSkipVerify = "skip-verify"
    	MySQLTLSConfigTrue       = "true"
    	MySQLTLSConfigFalse      = "false"
    	MySQLTLSConfigPreferred  = "preferred"
    
    	// =========================== PerconaXtraDB Constants ============================
    	PerconaXtraDBClusterRecommendedVersion    = "5.7"
    	PerconaXtraDBMaxClusterNameLength         = 32
    	PerconaXtraDBStandaloneReplicas           = 1
    	PerconaXtraDBDefaultClusterSize           = 3
    	PerconaXtraDBDataMountPath                = "/var/lib/mysql"
    	PerconaXtraDBDataLostFoundPath            = PerconaXtraDBDataMountPath + "lost+found"
    	PerconaXtraDBInitDBMountPath              = "/docker-entrypoint-initdb.d"
    	PerconaXtraDBCustomConfigMountPath        = "/etc/percona-server.conf.d/"
    	PerconaXtraDBClusterCustomConfigMountPath = "/etc/percona-xtradb-cluster.conf.d/"
    
    	// =========================== MariaDB Constants ============================
    	MariaDBClusterRecommendedVersion    = "5.7"
    	MariaDBMaxClusterNameLength         = 32
    	MariaDBStandaloneReplicas           = 1
    	MariaDBDefaultClusterSize           = 3
    	MariaDBDataMountPath                = "/var/lib/mysql"
    	MariaDBDataLostFoundPath            = MariaDBDataMountPath + "lost+found"
    	MariaDBInitDBMountPath              = "/docker-entrypoint-initdb.d"
    	MariaDBCustomConfigMountPath        = "/etc/percona-server.conf.d/"
    	MariaDBClusterCustomConfigMountPath = "/etc/percona-xtradb-cluster.conf.d/"
    
    	// =========================== PostgreSQL Constants ============================
    	PostgresDatabasePortName       = "db"
    	PostgresPrimaryServicePortName = "primary"
    	PostgresStandbyServicePortName = "standby"
    	PostgresDatabasePort           = 5432
    	PostgresPodPrimary             = "primary"
    	PostgresPodStandby             = "standby"
    	PostgresLabelRole              = kubedb.GroupName + "/role"
    
    	// =========================== ProxySQL Constants ============================
    	LabelProxySQLName        = ProxySQLKey + "/name"
    	LabelProxySQLLoadBalance = ProxySQLKey + "/load-balance"
    
    	ProxySQLDatabasePort           = 6033
    	ProxySQLDatabasePortName       = "db"
    	ProxySQLPrimaryServicePortName = "db"
    	ProxySQLAdminPort              = 6032
    	ProxySQLAdminPortName          = "admin"
    	ProxySQLDataMountPath          = "/var/lib/proxysql"
    	ProxySQLCustomConfigMountPath  = "/etc/custom-config"
    
    	// =========================== Redis Constants ============================
    	RedisShardKey               = RedisKey + "/shard"
    	RedisDatabasePortName       = "db"
    	RedisPrimaryServicePortName = "primary"
    	RedisDatabasePort           = 6379
    	RedisGossipPortName         = "gossip"
    	RedisGossipPort             = 16379
    
    	RedisKeyFileSecretSuffix = "key"
    	RedisPEMSecretSuffix     = "pem"
    	RedisRootUsername        = "root"
    
    	// =========================== PgBouncer Constants ============================
    	PgBouncerUpstreamServerCA       = "upstream-server-ca.crt"
    	PgBouncerDatabasePortName       = "db"
    	PgBouncerPrimaryServicePortName = "primary"
    	PgBouncerDatabasePort           = 5432
    	PgBouncerConfigFile             = "pgbouncer.ini"
    	PgBouncerAdminUsername          = "kubedb"
    )
    View Source
    const (
    	// used for Databases that have started provisioning
    	DatabaseProvisioningStarted = "ProvisioningStarted"
    	// used for Databases which completed provisioning
    	DatabaseProvisioned = "Provisioned"
    	// used for Databases that are currently being initialized using stash
    	DatabaseDataRestoreStarted = "DataRestoreStarted"
    	// used for Databases that have been initialized using stash
    	DatabaseDataRestored = "DataRestored"
    	// used for Databases whose pods are ready
    	DatabaseReplicaReady = "ReplicaReady"
    	// used for Databases that are currently accepting connection
    	DatabaseAcceptingConnection = "AcceptingConnection"
    	// used for Databases that report status OK (also implies that we can connect to it)
    	DatabaseReady = "Ready"
    	// used for Databases that are paused
    	DatabasePaused = "Paused"
    	// used for Databases that are halted
    	DatabaseHalted = "Halted"
    
    	// Condition reasons
    	DataRestoreStartedByExternalInitializer = "DataRestoreStartedByExternalInitializer"
    	DatabaseSuccessfullyRestored            = "SuccessfullyDataRestored"
    	FailedToRestoreData                     = "FailedToRestoreData"
    	AllReplicasAreReady                     = "AllReplicasReady"
    	SomeReplicasAreNotReady                 = "SomeReplicasNotReady"
    	DatabaseAcceptingConnectionRequest      = "DatabaseAcceptingConnectionRequest"
    	DatabaseNotAcceptingConnectionRequest   = "DatabaseNotAcceptingConnectionRequest"
    	ReadinessCheckSucceeded                 = "ReadinessCheckSucceeded"
    	ReadinessCheckFailed                    = "ReadinessCheckFailed"
    	DatabaseProvisioningStartedSuccessfully = "DatabaseProvisioningStartedSuccessfully"
    	DatabaseSuccessfullyProvisioned         = "DatabaseSuccessfullyProvisioned"
    	DatabaseHaltedSuccessfully              = "DatabaseHaltedSuccessfully"
    )

      List of possible condition types for a KubeDB object

      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 (
      	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"
      
      	MongoDBShardAffinityTemplateVar = "SHARD_INDEX"
      )
      View Source
      const (
      	ResourceCodeMongoDB     = "mg"
      	ResourceKindMongoDB     = "MongoDB"
      	ResourceSingularMongoDB = "mongodb"
      	ResourcePluralMongoDB   = "mongodbs"
      )
      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 (
      	ResourceCodePostgres     = "pg"
      	ResourceKindPostgres     = "Postgres"
      	ResourceSingularPostgres = "postgres"
      	ResourcePluralPostgres   = "postgreses"
      )
      View Source
      const (
      	ResourceCodeProxySQL     = "prx"
      	ResourceKindProxySQL     = "ProxySQL"
      	ResourceSingularProxySQL = "proxysql"
      	ResourcePluralProxySQL   = "proxysqls"
      )
      View Source
      const (
      	ResourceCodeRedis     = "rd"
      	ResourceKindRedis     = "Redis"
      	ResourceSingularRedis = "redis"
      	ResourcePluralRedis   = "redises"
      )
      View Source
      const (
      	ElasticsearchNodeAffinityTemplateVar = "NODE_ROLE"
      )
      View Source
      const (
      	RedisShardAffinityTemplateVar = "SHARD_INDEX"
      )
      View Source
      const (
      	ResourceKindStatefulSet = "StatefulSet"
      )

        Resource kind related constants

        Variables

        View Source
        var (
        	ErrInvalidLengthGenerated        = fmt.Errorf("proto: negative length found during unmarshaling")
        	ErrIntOverflowGenerated          = fmt.Errorf("proto: integer overflow")
        	ErrUnexpectedEndOfGroupGenerated = fmt.Errorf("proto: unexpected end of group")
        )
        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 (
        	DefaultResourceLimits = core.ResourceList{
        		core.ResourceCPU:    resource.MustParse(".500"),
        		core.ResourceMemory: resource.MustParse("1024Mi"),
        	}
        )
        View Source
        var SchemeGroupVersion = schema.GroupVersion{Group: kubedb.GroupName, Version: "v1alpha2"}

        Functions

        func GetServiceTemplate

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

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

          func HasServiceTemplate

          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

              func MySQLExporterTLSArg() string

              func MySQLRequireSSLArg

              func MySQLRequireSSLArg() string

              func Resource

              func Resource(resource string) schema.GroupResource

                Resource takes an unqualified resource and returns a Group qualified GroupResource

                func SetDefaultResourceLimits

                func SetDefaultResourceLimits(req *core.ResourceRequirements, defaultLimits core.ResourceList)

                Types

                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 ConnectionPoolConfig

                  type ConnectionPoolConfig struct {
                  	// Port is the port number on which PgBouncer listens to clients. Default: 5432.
                  	// +optional
                  	Port *int32 `json:"port,omitempty" protobuf:"varint,1,opt,name=port"`
                  	// PoolMode is the pooling mechanism type. Default: session.
                  	// +optional
                  	PoolMode string `json:"poolMode,omitempty" protobuf:"bytes,2,opt,name=poolMode"`
                  	// MaxClientConnections is the maximum number of allowed client connections. Default: 100.
                  	// +optional
                  	MaxClientConnections *int64 `json:"maxClientConnections,omitempty" protobuf:"varint,3,opt,name=maxClientConnections"`
                  	// DefaultPoolSize specifies how many server connections to allow per user/database pair. Default: 20.
                  	// +optional
                  	DefaultPoolSize *int64 `json:"defaultPoolSize,omitempty" protobuf:"varint,4,opt,name=defaultPoolSize"`
                  	// MinPoolSize is used to add more server connections to pool if below this number. Default: 0 (disabled).
                  	// +optional
                  	MinPoolSize *int64 `json:"minPoolSize,omitempty" protobuf:"varint,5,opt,name=minPoolSize"`
                  	// ReservePoolSize specifies how many additional connections to allow to a pool. 0 disables. Default: 0 (disabled).
                  	// +optional
                  	ReservePoolSize *int64 `json:"reservePoolSize,omitempty" protobuf:"varint,6,opt,name=reservePoolSize"`
                  	// 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.
                  	// +optional
                  	ReservePoolTimeoutSeconds *int64 `json:"reservePoolTimeoutSeconds,omitempty" protobuf:"varint,7,opt,name=reservePoolTimeoutSeconds"`
                  	// MaxDBConnections is the maximum number of connections allowed per-database. Default: unlimited.
                  	// +optional
                  	MaxDBConnections *int64 `json:"maxDBConnections,omitempty" protobuf:"varint,8,opt,name=maxDBConnections"`
                  	// MaxUserConnections is the maximum number of users allowed per-database. Default: unlimited.
                  	// +optional
                  	MaxUserConnections *int64 `json:"maxUserConnections,omitempty" protobuf:"varint,9,opt,name=maxUserConnections"`
                  	// StatsPeriodSeconds sets how often the averages shown in various SHOW commands are updated
                  	// and how often aggregated statistics are written to the log.
                  	// +optional
                  	StatsPeriodSeconds *int64 `json:"statsPeriodSeconds,omitempty" protobuf:"varint,10,opt,name=statsPeriodSeconds"`
                  	// AdminUsers specifies an array of users who can act as PgBouncer administrators.
                  	// +optional
                  	AdminUsers []string `json:"adminUsers,omitempty" protobuf:"bytes,11,rep,name=adminUsers"`
                  	// AuthType specifies how to authenticate users. Default: md5 (md5+plain text).
                  	// +optional
                  	AuthType string `json:"authType,omitempty" protobuf:"bytes,12,opt,name=authType"`
                  	// AuthUser looks up any user not specified in auth_file from pg_shadow. Default: not set.
                  	// +optional
                  	AuthUser string `json:"authUser,omitempty" protobuf:"bytes,13,opt,name=authUser"`
                  	// IgnoreStartupParameters specifies comma-separated startup parameters that
                  	// pgbouncer knows are handled by admin and it can ignore them.
                  	// +optional
                  	IgnoreStartupParameters string `json:"ignoreStartupParameters,omitempty" protobuf:"bytes,14,opt,name=ignoreStartupParameters"`
                  }

                  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.

                      func (*ConnectionPoolConfig) Descriptor

                      func (*ConnectionPoolConfig) Descriptor() ([]byte, []int)

                      func (*ConnectionPoolConfig) Marshal

                      func (m *ConnectionPoolConfig) Marshal() (dAtA []byte, err error)

                      func (*ConnectionPoolConfig) MarshalTo

                      func (m *ConnectionPoolConfig) MarshalTo(dAtA []byte) (int, error)

                      func (*ConnectionPoolConfig) MarshalToSizedBuffer

                      func (m *ConnectionPoolConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

                      func (*ConnectionPoolConfig) ProtoMessage

                      func (*ConnectionPoolConfig) ProtoMessage()

                      func (*ConnectionPoolConfig) Reset

                      func (m *ConnectionPoolConfig) Reset()

                      func (*ConnectionPoolConfig) Size

                      func (m *ConnectionPoolConfig) Size() (n int)

                      func (*ConnectionPoolConfig) String

                      func (this *ConnectionPoolConfig) String() string

                      func (*ConnectionPoolConfig) Unmarshal

                      func (m *ConnectionPoolConfig) Unmarshal(dAtA []byte) error

                      func (*ConnectionPoolConfig) XXX_DiscardUnknown

                      func (m *ConnectionPoolConfig) XXX_DiscardUnknown()

                      func (*ConnectionPoolConfig) XXX_Marshal

                      func (m *ConnectionPoolConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                      func (*ConnectionPoolConfig) XXX_Merge

                      func (m *ConnectionPoolConfig) XXX_Merge(src proto.Message)

                      func (*ConnectionPoolConfig) XXX_Size

                      func (m *ConnectionPoolConfig) XXX_Size() int

                      func (*ConnectionPoolConfig) XXX_Unmarshal

                      func (m *ConnectionPoolConfig) XXX_Unmarshal(b []byte) error

                      type DatabasePhase

                      type DatabasePhase string

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

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

                        type Databases

                        type Databases struct {
                        	// Alias to uniquely identify a target database running inside a specific Postgres instance.
                        	Alias string `json:"alias" protobuf:"bytes,1,opt,name=alias"`
                        	// DatabaseRef specifies the database appbinding reference in any namespace.
                        	DatabaseRef appcat.AppReference `json:"databaseRef" protobuf:"bytes,2,opt,name=databaseRef"`
                        	// DatabaseName is the name of the target database inside a Postgres instance.
                        	DatabaseName string `json:"databaseName" protobuf:"bytes,3,opt,name=databaseName"`
                        	// AuthSecretRef points to a secret that contains the credentials
                        	// (username and password) of an existing user of this database.
                        	// It is used to bind a single user to this specific database connection.
                        	// +optional
                        	AuthSecretRef *core.LocalObjectReference `json:"authSecretRef,omitempty" protobuf:"bytes,4,opt,name=authSecretRef"`
                        }

                        func (*Databases) DeepCopy

                        func (in *Databases) DeepCopy() *Databases

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

                          func (*Databases) DeepCopyInto

                          func (in *Databases) DeepCopyInto(out *Databases)

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

                            func (*Databases) Descriptor

                            func (*Databases) Descriptor() ([]byte, []int)

                            func (*Databases) Marshal

                            func (m *Databases) Marshal() (dAtA []byte, err error)

                            func (*Databases) MarshalTo

                            func (m *Databases) MarshalTo(dAtA []byte) (int, error)

                            func (*Databases) MarshalToSizedBuffer

                            func (m *Databases) MarshalToSizedBuffer(dAtA []byte) (int, error)

                            func (*Databases) ProtoMessage

                            func (*Databases) ProtoMessage()

                            func (*Databases) Reset

                            func (m *Databases) Reset()

                            func (*Databases) Size

                            func (m *Databases) Size() (n int)

                            func (*Databases) String

                            func (this *Databases) String() string

                            func (*Databases) Unmarshal

                            func (m *Databases) Unmarshal(dAtA []byte) error

                            func (*Databases) XXX_DiscardUnknown

                            func (m *Databases) XXX_DiscardUnknown()

                            func (*Databases) XXX_Marshal

                            func (m *Databases) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                            func (*Databases) XXX_Merge

                            func (m *Databases) XXX_Merge(src proto.Message)

                            func (*Databases) XXX_Size

                            func (m *Databases) XXX_Size() int

                            func (*Databases) XXX_Unmarshal

                            func (m *Databases) XXX_Unmarshal(b []byte) error

                            type Elasticsearch

                            type Elasticsearch struct {
                            	metav1.TypeMeta   `json:",inline,omitempty"`
                            	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
                            	Spec              ElasticsearchSpec   `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
                            	Status            ElasticsearchStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
                            }

                              +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) 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

                                      func (e *Elasticsearch) CombinedStatefulSetName() string

                                      func (*Elasticsearch) ConfigSecretName

                                      func (e *Elasticsearch) ConfigSecretName() string

                                        returns the secret name for the default elasticsearch configuration

                                        func (Elasticsearch) CustomResourceDefinition

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

                                        func (Elasticsearch) DataSelectors

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

                                        func (*Elasticsearch) DataStatefulSetName

                                        func (e *Elasticsearch) DataStatefulSetName() 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) Descriptor

                                              func (*Elasticsearch) Descriptor() ([]byte, []int)

                                              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) GoverningServiceName

                                              func (e Elasticsearch) GoverningServiceName() string

                                              func (Elasticsearch) IngestSelectors

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

                                              func (*Elasticsearch) IngestStatefulSetName

                                              func (e *Elasticsearch) IngestStatefulSetName() string

                                              func (*Elasticsearch) Marshal

                                              func (m *Elasticsearch) Marshal() (dAtA []byte, err error)

                                              func (*Elasticsearch) MarshalTo

                                              func (m *Elasticsearch) MarshalTo(dAtA []byte) (int, error)

                                              func (*Elasticsearch) MarshalToSizedBuffer

                                              func (m *Elasticsearch) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                              func (*Elasticsearch) MasterDiscoveryServiceName

                                              func (e *Elasticsearch) MasterDiscoveryServiceName() string

                                              func (Elasticsearch) MasterSelectors

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

                                              func (*Elasticsearch) MasterStatefulSetName

                                              func (e *Elasticsearch) MasterStatefulSetName() string

                                              func (*Elasticsearch) MustCertSecretName

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

                                                MustCertSecretName returns the secret name for a certificate alias

                                                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() map[string]string

                                                func (*Elasticsearch) ProtoMessage

                                                func (*Elasticsearch) ProtoMessage()

                                                func (*Elasticsearch) ReplicasAreReady

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

                                                func (*Elasticsearch) Reset

                                                func (m *Elasticsearch) Reset()

                                                func (Elasticsearch) ResourceFQN

                                                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) ServiceName

                                                func (e Elasticsearch) ServiceName() string

                                                func (*Elasticsearch) SetDefaults

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

                                                func (*Elasticsearch) SetTLSDefaults

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

                                                  set default tls configuration (ie. alias, secretName)

                                                  func (*Elasticsearch) Size

                                                  func (m *Elasticsearch) Size() (n int)

                                                  func (Elasticsearch) StatsService

                                                  func (e Elasticsearch) StatsService() mona.StatsAccessor

                                                  func (Elasticsearch) StatsServiceLabels

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

                                                  func (*Elasticsearch) String

                                                  func (this *Elasticsearch) String() string

                                                  func (*Elasticsearch) Unmarshal

                                                  func (m *Elasticsearch) Unmarshal(dAtA []byte) error

                                                  func (*Elasticsearch) UserCredSecretName

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

                                                    returns the 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) XXX_DiscardUnknown

                                                    func (m *Elasticsearch) XXX_DiscardUnknown()

                                                    func (*Elasticsearch) XXX_Marshal

                                                    func (m *Elasticsearch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                    func (*Elasticsearch) XXX_Merge

                                                    func (m *Elasticsearch) XXX_Merge(src proto.Message)

                                                    func (*Elasticsearch) XXX_Size

                                                    func (m *Elasticsearch) XXX_Size() int

                                                    func (*Elasticsearch) XXX_Unmarshal

                                                    func (m *Elasticsearch) XXX_Unmarshal(b []byte) error

                                                    type ElasticsearchCertificateAlias

                                                    type ElasticsearchCertificateAlias string

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

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

                                                      type ElasticsearchClusterTopology

                                                      type ElasticsearchClusterTopology struct {
                                                      	Master ElasticsearchNode `json:"master" protobuf:"bytes,1,opt,name=master"`
                                                      	Data   ElasticsearchNode `json:"data" protobuf:"bytes,2,opt,name=data"`
                                                      	Ingest ElasticsearchNode `json:"ingest" protobuf:"bytes,3,opt,name=ingest"`
                                                      }

                                                      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) Descriptor

                                                          func (*ElasticsearchClusterTopology) Descriptor() ([]byte, []int)

                                                          func (*ElasticsearchClusterTopology) Marshal

                                                          func (m *ElasticsearchClusterTopology) Marshal() (dAtA []byte, err error)

                                                          func (*ElasticsearchClusterTopology) MarshalTo

                                                          func (m *ElasticsearchClusterTopology) MarshalTo(dAtA []byte) (int, error)

                                                          func (*ElasticsearchClusterTopology) MarshalToSizedBuffer

                                                          func (m *ElasticsearchClusterTopology) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                          func (*ElasticsearchClusterTopology) ProtoMessage

                                                          func (*ElasticsearchClusterTopology) ProtoMessage()

                                                          func (*ElasticsearchClusterTopology) Reset

                                                          func (m *ElasticsearchClusterTopology) Reset()

                                                          func (*ElasticsearchClusterTopology) Size

                                                          func (m *ElasticsearchClusterTopology) Size() (n int)

                                                          func (*ElasticsearchClusterTopology) String

                                                          func (this *ElasticsearchClusterTopology) String() string

                                                          func (*ElasticsearchClusterTopology) Unmarshal

                                                          func (m *ElasticsearchClusterTopology) Unmarshal(dAtA []byte) error

                                                          func (*ElasticsearchClusterTopology) XXX_DiscardUnknown

                                                          func (m *ElasticsearchClusterTopology) XXX_DiscardUnknown()

                                                          func (*ElasticsearchClusterTopology) XXX_Marshal

                                                          func (m *ElasticsearchClusterTopology) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                          func (*ElasticsearchClusterTopology) XXX_Merge

                                                          func (m *ElasticsearchClusterTopology) XXX_Merge(src proto.Message)

                                                          func (*ElasticsearchClusterTopology) XXX_Size

                                                          func (m *ElasticsearchClusterTopology) XXX_Size() int

                                                          func (*ElasticsearchClusterTopology) XXX_Unmarshal

                                                          func (m *ElasticsearchClusterTopology) XXX_Unmarshal(b []byte) error

                                                          type ElasticsearchInternalUser

                                                          type ElasticsearchInternalUser string
                                                          const (
                                                          	ElasticsearchInternalUserElastic         ElasticsearchInternalUser = "elastic"
                                                          	ElasticsearchInternalUserAdmin           ElasticsearchInternalUser = "admin"
                                                          	ElasticsearchInternalUserKibanaserver    ElasticsearchInternalUser = "kibanaserver"
                                                          	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" protobuf:"bytes,1,opt,name=metadata"`
                                                          	// Items is a list of Elasticsearch CRD objects
                                                          	Items []Elasticsearch `json:"items,omitempty" protobuf:"bytes,2,rep,name=items"`
                                                          }

                                                          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.

                                                                func (*ElasticsearchList) Descriptor

                                                                func (*ElasticsearchList) Descriptor() ([]byte, []int)

                                                                func (*ElasticsearchList) Marshal

                                                                func (m *ElasticsearchList) Marshal() (dAtA []byte, err error)

                                                                func (*ElasticsearchList) MarshalTo

                                                                func (m *ElasticsearchList) MarshalTo(dAtA []byte) (int, error)

                                                                func (*ElasticsearchList) MarshalToSizedBuffer

                                                                func (m *ElasticsearchList) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                func (*ElasticsearchList) ProtoMessage

                                                                func (*ElasticsearchList) ProtoMessage()

                                                                func (*ElasticsearchList) Reset

                                                                func (m *ElasticsearchList) Reset()

                                                                func (*ElasticsearchList) Size

                                                                func (m *ElasticsearchList) Size() (n int)

                                                                func (*ElasticsearchList) String

                                                                func (this *ElasticsearchList) String() string

                                                                func (*ElasticsearchList) Unmarshal

                                                                func (m *ElasticsearchList) Unmarshal(dAtA []byte) error

                                                                func (*ElasticsearchList) XXX_DiscardUnknown

                                                                func (m *ElasticsearchList) XXX_DiscardUnknown()

                                                                func (*ElasticsearchList) XXX_Marshal

                                                                func (m *ElasticsearchList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                func (*ElasticsearchList) XXX_Merge

                                                                func (m *ElasticsearchList) XXX_Merge(src proto.Message)

                                                                func (*ElasticsearchList) XXX_Size

                                                                func (m *ElasticsearchList) XXX_Size() int

                                                                func (*ElasticsearchList) XXX_Unmarshal

                                                                func (m *ElasticsearchList) XXX_Unmarshal(b []byte) error

                                                                type ElasticsearchNode

                                                                type ElasticsearchNode struct {
                                                                	// Replicas represents number of replica for this specific type of node
                                                                	Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,1,opt,name=replicas"`
                                                                	Suffix   string `json:"suffix,omitempty" protobuf:"bytes,2,opt,name=suffix"`
                                                                	// Storage to specify how storage shall be used.
                                                                	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty" protobuf:"bytes,3,opt,name=storage"`
                                                                	// Compute Resources required by the sidecar container.
                                                                	Resources core.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,4,opt,name=resources"`
                                                                	// 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" protobuf:"bytes,5,opt,name=maxUnavailable"`
                                                                }

                                                                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.

                                                                    func (*ElasticsearchNode) Descriptor

                                                                    func (*ElasticsearchNode) Descriptor() ([]byte, []int)

                                                                    func (*ElasticsearchNode) Marshal

                                                                    func (m *ElasticsearchNode) Marshal() (dAtA []byte, err error)

                                                                    func (*ElasticsearchNode) MarshalTo

                                                                    func (m *ElasticsearchNode) MarshalTo(dAtA []byte) (int, error)

                                                                    func (*ElasticsearchNode) MarshalToSizedBuffer

                                                                    func (m *ElasticsearchNode) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                    func (*ElasticsearchNode) ProtoMessage

                                                                    func (*ElasticsearchNode) ProtoMessage()

                                                                    func (*ElasticsearchNode) Reset

                                                                    func (m *ElasticsearchNode) Reset()

                                                                    func (*ElasticsearchNode) Size

                                                                    func (m *ElasticsearchNode) Size() (n int)

                                                                    func (*ElasticsearchNode) String

                                                                    func (this *ElasticsearchNode) String() string

                                                                    func (*ElasticsearchNode) Unmarshal

                                                                    func (m *ElasticsearchNode) Unmarshal(dAtA []byte) error

                                                                    func (*ElasticsearchNode) XXX_DiscardUnknown

                                                                    func (m *ElasticsearchNode) XXX_DiscardUnknown()

                                                                    func (*ElasticsearchNode) XXX_Marshal

                                                                    func (m *ElasticsearchNode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                    func (*ElasticsearchNode) XXX_Merge

                                                                    func (m *ElasticsearchNode) XXX_Merge(src proto.Message)

                                                                    func (*ElasticsearchNode) XXX_Size

                                                                    func (m *ElasticsearchNode) XXX_Size() int

                                                                    func (*ElasticsearchNode) XXX_Unmarshal

                                                                    func (m *ElasticsearchNode) XXX_Unmarshal(b []byte) error

                                                                    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" protobuf:"bytes,1,opt,name=reserved"`
                                                                    
                                                                    	// 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" protobuf:"bytes,2,opt,name=hidden"`
                                                                    
                                                                    	// 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" protobuf:"bytes,3,opt,name=backendRoles"`
                                                                    
                                                                    	// Specifies a list of hosts assigned to this role.
                                                                    	// +optional
                                                                    	Hosts []string `json:"hosts,omitempty" yaml:"hosts,omitempty" protobuf:"bytes,4,opt,name=hosts"`
                                                                    
                                                                    	// Specifies a list of users assigned to this role.
                                                                    	// +optional
                                                                    	Users []string `json:"users,omitempty" yaml:"users,omitempty" protobuf:"bytes,5,opt,name=users"`
                                                                    
                                                                    	// Specifies a list of backend roles (migrated from ES-version6) assigned to this role.
                                                                    	AndBackendRoles []string `json:"andBackendRoles,omitempty" yaml:"and_backend_roles,omitempty" protobuf:"bytes,6,opt,name=andBackendRoles"`
                                                                    }

                                                                      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.

                                                                          func (*ElasticsearchRoleMapSpec) Descriptor

                                                                          func (*ElasticsearchRoleMapSpec) Descriptor() ([]byte, []int)

                                                                          func (*ElasticsearchRoleMapSpec) Marshal

                                                                          func (m *ElasticsearchRoleMapSpec) Marshal() (dAtA []byte, err error)

                                                                          func (*ElasticsearchRoleMapSpec) MarshalTo

                                                                          func (m *ElasticsearchRoleMapSpec) MarshalTo(dAtA []byte) (int, error)

                                                                          func (*ElasticsearchRoleMapSpec) MarshalToSizedBuffer

                                                                          func (m *ElasticsearchRoleMapSpec) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                          func (*ElasticsearchRoleMapSpec) ProtoMessage

                                                                          func (*ElasticsearchRoleMapSpec) ProtoMessage()

                                                                          func (*ElasticsearchRoleMapSpec) Reset

                                                                          func (m *ElasticsearchRoleMapSpec) Reset()

                                                                          func (*ElasticsearchRoleMapSpec) Size

                                                                          func (m *ElasticsearchRoleMapSpec) Size() (n int)

                                                                          func (*ElasticsearchRoleMapSpec) String

                                                                          func (this *ElasticsearchRoleMapSpec) String() string

                                                                          func (*ElasticsearchRoleMapSpec) Unmarshal

                                                                          func (m *ElasticsearchRoleMapSpec) Unmarshal(dAtA []byte) error

                                                                          func (*ElasticsearchRoleMapSpec) XXX_DiscardUnknown

                                                                          func (m *ElasticsearchRoleMapSpec) XXX_DiscardUnknown()

                                                                          func (*ElasticsearchRoleMapSpec) XXX_Marshal

                                                                          func (m *ElasticsearchRoleMapSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                          func (*ElasticsearchRoleMapSpec) XXX_Merge

                                                                          func (m *ElasticsearchRoleMapSpec) XXX_Merge(src proto.Message)

                                                                          func (*ElasticsearchRoleMapSpec) XXX_Size

                                                                          func (m *ElasticsearchRoleMapSpec) XXX_Size() int

                                                                          func (*ElasticsearchRoleMapSpec) XXX_Unmarshal

                                                                          func (m *ElasticsearchRoleMapSpec) XXX_Unmarshal(b []byte) error

                                                                          type ElasticsearchSpec

                                                                          type ElasticsearchSpec struct {
                                                                          	// Version of Elasticsearch to be deployed.
                                                                          	Version string `json:"version" protobuf:"bytes,1,opt,name=version"`
                                                                          
                                                                          	// Number of instances to deploy for a Elasticsearch database.
                                                                          	Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,2,opt,name=replicas"`
                                                                          
                                                                          	// Elasticsearch topology for node specification
                                                                          	Topology *ElasticsearchClusterTopology `json:"topology,omitempty" protobuf:"bytes,3,opt,name=topology"`
                                                                          
                                                                          	// To enable ssl in transport & http layer
                                                                          	EnableSSL bool `json:"enableSSL,omitempty" protobuf:"varint,4,opt,name=enableSSL"`
                                                                          
                                                                          	// disable security of authPlugin (ie, xpack or searchguard). It disables authentication security of user.
                                                                          	// If unset, default is false
                                                                          	DisableSecurity bool `json:"disableSecurity,omitempty" protobuf:"varint,5,opt,name=disableSecurity"`
                                                                          
                                                                          	// Database authentication secret
                                                                          	AuthSecret *core.LocalObjectReference `json:"authSecret,omitempty" protobuf:"bytes,6,opt,name=authSecret"`
                                                                          
                                                                          	// StorageType can be durable (default) or ephemeral
                                                                          	StorageType StorageType `json:"storageType,omitempty" protobuf:"bytes,7,opt,name=storageType,casttype=StorageType"`
                                                                          
                                                                          	// Storage to specify how storage shall be used.
                                                                          	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty" protobuf:"bytes,8,opt,name=storage"`
                                                                          
                                                                          	// Init is used to initialize database
                                                                          	// +optional
                                                                          	Init *InitSpec `json:"init,omitempty" protobuf:"bytes,9,opt,name=init"`
                                                                          
                                                                          	// Monitor is used monitor database instance
                                                                          	// +optional
                                                                          	Monitor *mona.AgentSpec `json:"monitor,omitempty" protobuf:"bytes,10,opt,name=monitor"`
                                                                          
                                                                          	// 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" protobuf:"bytes,11,opt,name=configSecret"`
                                                                          
                                                                          	// PodTemplate is an optional configuration for pods used to expose database
                                                                          	// +optional
                                                                          	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty" protobuf:"bytes,12,opt,name=podTemplate"`
                                                                          
                                                                          	// ServiceTemplates is an optional configuration for services used to expose database
                                                                          	// +optional
                                                                          	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty" protobuf:"bytes,13,rep,name=serviceTemplates"`
                                                                          
                                                                          	// 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" protobuf:"bytes,14,opt,name=maxUnavailable"`
                                                                          
                                                                          	// TLS contains tls configurations
                                                                          	// +optional
                                                                          	TLS *kmapi.TLSConfig `json:"tls,omitempty" protobuf:"bytes,15,opt,name=tls"`
                                                                          
                                                                          	// InternalUsers contains internal user configurations.
                                                                          	// Expected Input format:
                                                                          	// internalUsers:
                                                                          	//   <username1>:
                                                                          	//		...
                                                                          	//   <username2>:
                                                                          	//		...
                                                                          	// +optional
                                                                          	InternalUsers map[string]ElasticsearchUserSpec `json:"internalUsers,omitempty" protobuf:"bytes,16,rep,name=internalUsers"`
                                                                          
                                                                          	// RolesMapping contains roles mapping configurations.
                                                                          	// Expected Input format:
                                                                          	// rolesMapping:
                                                                          	//   <role1>:
                                                                          	//		...
                                                                          	//   <role2>:
                                                                          	//		...
                                                                          	// +optional
                                                                          	RolesMapping map[string]ElasticsearchRoleMapSpec `json:"rolesMapping,omitempty" protobuf:"bytes,17,rep,name=rolesMapping"`
                                                                          
                                                                          	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
                                                                          	// +optional
                                                                          	Halted bool `json:"halted,omitempty" protobuf:"varint,18,opt,name=halted"`
                                                                          
                                                                          	// TerminationPolicy controls the delete operation for database
                                                                          	// +optional
                                                                          	TerminationPolicy TerminationPolicy `json:"terminationPolicy,omitempty" protobuf:"bytes,19,opt,name=terminationPolicy,casttype=TerminationPolicy"`
                                                                          
                                                                          	// KernelSettings contains the additional kernel settings.
                                                                          	// +optional
                                                                          	KernelSettings *KernelSettings `json:"kernelSettings,omitempty" protobuf:"bytes,20,opt,name=kernelSettings"`
                                                                          }

                                                                          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.

                                                                              func (*ElasticsearchSpec) Descriptor

                                                                              func (*ElasticsearchSpec) Descriptor() ([]byte, []int)

                                                                              func (*ElasticsearchSpec) Marshal

                                                                              func (m *ElasticsearchSpec) Marshal() (dAtA []byte, err error)

                                                                              func (*ElasticsearchSpec) MarshalTo

                                                                              func (m *ElasticsearchSpec) MarshalTo(dAtA []byte) (int, error)

                                                                              func (*ElasticsearchSpec) MarshalToSizedBuffer

                                                                              func (m *ElasticsearchSpec) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                              func (*ElasticsearchSpec) ProtoMessage

                                                                              func (*ElasticsearchSpec) ProtoMessage()

                                                                              func (*ElasticsearchSpec) Reset

                                                                              func (m *ElasticsearchSpec) Reset()

                                                                              func (*ElasticsearchSpec) Size

                                                                              func (m *ElasticsearchSpec) Size() (n int)

                                                                              func (*ElasticsearchSpec) String

                                                                              func (this *ElasticsearchSpec) String() string

                                                                              func (*ElasticsearchSpec) Unmarshal

                                                                              func (m *ElasticsearchSpec) Unmarshal(dAtA []byte) error

                                                                              func (*ElasticsearchSpec) XXX_DiscardUnknown

                                                                              func (m *ElasticsearchSpec) XXX_DiscardUnknown()

                                                                              func (*ElasticsearchSpec) XXX_Marshal

                                                                              func (m *ElasticsearchSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                              func (*ElasticsearchSpec) XXX_Merge

                                                                              func (m *ElasticsearchSpec) XXX_Merge(src proto.Message)

                                                                              func (*ElasticsearchSpec) XXX_Size

                                                                              func (m *ElasticsearchSpec) XXX_Size() int

                                                                              func (*ElasticsearchSpec) XXX_Unmarshal

                                                                              func (m *ElasticsearchSpec) XXX_Unmarshal(b []byte) error

                                                                              type ElasticsearchStatus

                                                                              type ElasticsearchStatus struct {
                                                                              	// Specifies the current phase of the database
                                                                              	// +optional
                                                                              	Phase DatabasePhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase,casttype=DatabasePhase"`
                                                                              	// 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" protobuf:"varint,2,opt,name=observedGeneration"`
                                                                              	// Conditions applied to the database, such as approval or denial.
                                                                              	// +optional
                                                                              	Conditions []kmapi.Condition `json:"conditions,omitempty" protobuf:"bytes,3,rep,name=conditions"`
                                                                              }

                                                                              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.

                                                                                  func (*ElasticsearchStatus) Descriptor

                                                                                  func (*ElasticsearchStatus) Descriptor() ([]byte, []int)

                                                                                  func (*ElasticsearchStatus) Marshal

                                                                                  func (m *ElasticsearchStatus) Marshal() (dAtA []byte, err error)

                                                                                  func (*ElasticsearchStatus) MarshalTo

                                                                                  func (m *ElasticsearchStatus) MarshalTo(dAtA []byte) (int, error)

                                                                                  func (*ElasticsearchStatus) MarshalToSizedBuffer

                                                                                  func (m *ElasticsearchStatus) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                                  func (*ElasticsearchStatus) ProtoMessage

                                                                                  func (*ElasticsearchStatus) ProtoMessage()

                                                                                  func (*ElasticsearchStatus) Reset

                                                                                  func (m *ElasticsearchStatus) Reset()

                                                                                  func (*ElasticsearchStatus) Size

                                                                                  func (m *ElasticsearchStatus) Size() (n int)

                                                                                  func (*ElasticsearchStatus) String

                                                                                  func (this *ElasticsearchStatus) String() string

                                                                                  func (*ElasticsearchStatus) Unmarshal

                                                                                  func (m *ElasticsearchStatus) Unmarshal(dAtA []byte) error

                                                                                  func (*ElasticsearchStatus) XXX_DiscardUnknown

                                                                                  func (m *ElasticsearchStatus) XXX_DiscardUnknown()

                                                                                  func (*ElasticsearchStatus) XXX_Marshal

                                                                                  func (m *ElasticsearchStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                                  func (*ElasticsearchStatus) XXX_Merge

                                                                                  func (m *ElasticsearchStatus) XXX_Merge(src proto.Message)

                                                                                  func (*ElasticsearchStatus) XXX_Size

                                                                                  func (m *ElasticsearchStatus) XXX_Size() int

                                                                                  func (*ElasticsearchStatus) XXX_Unmarshal

                                                                                  func (m *ElasticsearchStatus) XXX_Unmarshal(b []byte) error

                                                                                  type ElasticsearchUserSpec

                                                                                  type ElasticsearchUserSpec struct {
                                                                                  	// Specifies the hash of the password.
                                                                                  	// +optional
                                                                                  	Hash string `json:"-" yaml:"hash,omitempty" protobuf:"bytes,1,opt,name=hash"`
                                                                                  
                                                                                  	// 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" protobuf:"bytes,2,opt,name=reserved"`
                                                                                  
                                                                                  	// 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" protobuf:"bytes,3,opt,name=hidden"`
                                                                                  
                                                                                  	// 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" protobuf:"bytes,4,opt,name=backendRoles"`
                                                                                  
                                                                                  	// Specifies a list of searchguard security plugin roles assigned to this user.
                                                                                  	// +optional
                                                                                  	SearchGuardRoles []string `json:"searchGuardRoles,omitempty" yaml:"search_guard_roles,omitempty" protobuf:"bytes,5,opt,name=searchGuardRoles"`
                                                                                  
                                                                                  	// Specifies a list of opendistro security plugin roles assigned to this user.
                                                                                  	// +optional
                                                                                  	OpendistroSecurityRoles []string `` /* 135-byte string literal not displayed */
                                                                                  
                                                                                  	// 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" protobuf:"bytes,7,opt,name=attributes"`
                                                                                  
                                                                                  	// Specifies the description of the user
                                                                                  	// +optional
                                                                                  	Description string `json:"description,omitempty" yaml:"description,omitempty" protobuf:"bytes,8,opt,name=description"`
                                                                                  }

                                                                                    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.

                                                                                    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.

                                                                                        func (*ElasticsearchUserSpec) Descriptor

                                                                                        func (*ElasticsearchUserSpec) Descriptor() ([]byte, []int)

                                                                                        func (*ElasticsearchUserSpec) Marshal

                                                                                        func (m *ElasticsearchUserSpec) Marshal() (dAtA []byte, err error)

                                                                                        func (*ElasticsearchUserSpec) MarshalTo

                                                                                        func (m *ElasticsearchUserSpec) MarshalTo(dAtA []byte) (int, error)

                                                                                        func (*ElasticsearchUserSpec) MarshalToSizedBuffer

                                                                                        func (m *ElasticsearchUserSpec) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                                        func (*ElasticsearchUserSpec) ProtoMessage

                                                                                        func (*ElasticsearchUserSpec) ProtoMessage()

                                                                                        func (*ElasticsearchUserSpec) Reset

                                                                                        func (m *ElasticsearchUserSpec) Reset()

                                                                                        func (*ElasticsearchUserSpec) Size

                                                                                        func (m *ElasticsearchUserSpec) Size() (n int)

                                                                                        func (*ElasticsearchUserSpec) String

                                                                                        func (this *ElasticsearchUserSpec) String() string

                                                                                        func (*ElasticsearchUserSpec) Unmarshal

                                                                                        func (m *ElasticsearchUserSpec) Unmarshal(dAtA []byte) error

                                                                                        func (*ElasticsearchUserSpec) XXX_DiscardUnknown

                                                                                        func (m *ElasticsearchUserSpec) XXX_DiscardUnknown()

                                                                                        func (*ElasticsearchUserSpec) XXX_Marshal

                                                                                        func (m *ElasticsearchUserSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                                        func (*ElasticsearchUserSpec) XXX_Merge

                                                                                        func (m *ElasticsearchUserSpec) XXX_Merge(src proto.Message)

                                                                                        func (*ElasticsearchUserSpec) XXX_Size

                                                                                        func (m *ElasticsearchUserSpec) XXX_Size() int

                                                                                        func (*ElasticsearchUserSpec) XXX_Unmarshal

                                                                                        func (m *ElasticsearchUserSpec) XXX_Unmarshal(b []byte) error

                                                                                        type Etcd

                                                                                        type Etcd struct {
                                                                                        	metav1.TypeMeta   `json:",inline,omitempty"`
                                                                                        	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
                                                                                        	Spec              EtcdSpec   `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
                                                                                        	Status            EtcdStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
                                                                                        }

                                                                                          +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) 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) Descriptor

                                                                                                func (*Etcd) Descriptor() ([]byte, []int)

                                                                                                func (*Etcd) Marshal

                                                                                                func (m *Etcd) Marshal() (dAtA []byte, err error)

                                                                                                func (*Etcd) MarshalTo

                                                                                                func (m *Etcd) MarshalTo(dAtA []byte) (int, error)

                                                                                                func (*Etcd) MarshalToSizedBuffer

                                                                                                func (m *Etcd) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                                                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) ProtoMessage

                                                                                                func (*Etcd) ProtoMessage()

                                                                                                func (*Etcd) ReplicasAreReady

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

                                                                                                func (*Etcd) Reset

                                                                                                func (m *Etcd) Reset()

                                                                                                func (Etcd) ResourceFQN

                                                                                                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) SetDefaults

                                                                                                func (e *Etcd) SetDefaults()

                                                                                                func (*Etcd) Size

                                                                                                func (m *Etcd) Size() (n int)

                                                                                                func (Etcd) StatsService

                                                                                                func (e Etcd) StatsService() mona.StatsAccessor

                                                                                                func (Etcd) StatsServiceLabels

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

                                                                                                func (*Etcd) String

                                                                                                func (this *Etcd) String() string

                                                                                                func (*Etcd) Unmarshal

                                                                                                func (m *Etcd) Unmarshal(dAtA []byte) error

                                                                                                func (*Etcd) XXX_DiscardUnknown

                                                                                                func (m *Etcd) XXX_DiscardUnknown()

                                                                                                func (*Etcd) XXX_Marshal

                                                                                                func (m *Etcd) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                                                func (*Etcd) XXX_Merge

                                                                                                func (m *Etcd) XXX_Merge(src proto.Message)

                                                                                                func (*Etcd) XXX_Size

                                                                                                func (m *Etcd) XXX_Size() int

                                                                                                func (*Etcd) XXX_Unmarshal

                                                                                                func (m *Etcd) XXX_Unmarshal(b []byte) error

                                                                                                type EtcdList

                                                                                                type EtcdList struct {
                                                                                                	metav1.TypeMeta `json:",inline"`
                                                                                                	metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
                                                                                                	// Items is a list of Etcd TPR objects
                                                                                                	Items []Etcd `json:"items,omitempty" protobuf:"bytes,2,rep,name=items"`
                                                                                                }

                                                                                                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.

                                                                                                      func (*EtcdList) Descriptor

                                                                                                      func (*EtcdList) Descriptor() ([]byte, []int)

                                                                                                      func (*EtcdList) Marshal

                                                                                                      func (m *EtcdList) Marshal() (dAtA []byte, err error)

                                                                                                      func (*EtcdList) MarshalTo

                                                                                                      func (m *EtcdList) MarshalTo(dAtA []byte) (int, error)

                                                                                                      func (*EtcdList) MarshalToSizedBuffer

                                                                                                      func (m *EtcdList) MarshalToSizedBuffer(dAtA []byte) (int, error)

                                                                                                      func (*EtcdList) ProtoMessage

                                                                                                      func (*EtcdList) ProtoMessage()

                                                                                                      func (*EtcdList) Reset

                                                                                                      func (m *EtcdList) Reset()

                                                                                                      func (*EtcdList) Size

                                                                                                      func (m *EtcdList) Size() (n int)

                                                                                                      func (*EtcdList) String

                                                                                                      func (this *EtcdList) String() string

                                                                                                      func (*EtcdList) Unmarshal

                                                                                                      func (m *EtcdList) Unmarshal(dAtA []byte) error

                                                                                                      func (*EtcdList) XXX_DiscardUnknown

                                                                                                      func (m *EtcdList) XXX_DiscardUnknown()

                                                                                                      func (*EtcdList) XXX_Marshal

                                                                                                      func (m *EtcdList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                                                                                                      func (*EtcdList) XXX_Merge

                                                                                                      func (m *EtcdList) XXX_Merge(src proto.Message)

                                                                                                      func (*EtcdList) XXX_Size

                                                                                                      func (m *EtcdList) XXX_Size() int

                                                                                                      func (*EtcdList) XXX_Unmarshal

                                                                                                      func (m *EtcdList) XXX_Unmarshal(b []byte) error

                                                                                                      type EtcdSpec

                                                                                                      type EtcdSpec struct {
                                                                                                      	// Version of Etcd to be deployed.
                                                                                                      	Version string `json:"version" protobuf:"bytes,1,opt,name=version"`
                                                                                                      
                                                                                                      	// Number of instances to deploy for a Etcd database.
                                                                                                      	Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,2,opt,name=replicas"`
                                                                                                      
                                                                                                      	// StorageType can be durable (default) or ephemeral
                                                                                                      	StorageType StorageType `json:"storageType,omitempty" protobuf:"bytes,3,opt,name=storageType,casttype=StorageType"`
                                                                                                      
                                                                                                      	// Storage spec to specify how storage shall be used.
                                                                                                      	Storage *core.PersistentVolumeClaimSpec `json:"storage,omitempty" protobuf:"bytes,4,opt,name=storage"`
                                                                                                      
                                                                                                      	// Database authentication secret
                                                                                                      	AuthSecret *core.LocalObjectReference `json:"authSecret,omitempty" protobuf:"bytes,5,opt,name=authSecret"`
                                                                                                      
                                                                                                      	// Init is used to initialize database
                                                                                                      	// +optional
                                                                                                      	Init *InitSpec `json:"init,omitempty" protobuf:"bytes,6,opt,name=init"`
                                                                                                      
                                                                                                      	// Monitor is used monitor database instance
                                                                                                      	// +optional
                                                                                                      	Monitor *mona.AgentSpec `json:"monitor,omitempty" protobuf:"bytes,8,opt,name=monitor"`
                                                                                                      
                                                                                                      	// etcd cluster TLS configuration
                                                                                                      	TLS *TLSPolicy `json:"tls,omitempty" protobuf:"bytes,9,opt,name=tls"`
                                                                                                      
                                                                                                      	// PodTemplate is an optional configuration for pods used to expose database
                                                                                                      	// +optional
                                                                                                      	PodTemplate ofst.PodTemplateSpec `json:"podTemplate,omitempty" protobuf:"bytes,10,opt,name=podTemplate"`
                                                                                                      
                                                                                                      	// ServiceTemplates is an optional configuration for services used to expose database
                                                                                                      	// +optional
                                                                                                      	ServiceTemplates []NamedServiceTemplateSpec `json:"serviceTemplates,omitempty" protobuf:"bytes,11,rep,name=serviceTemplates"`
                                                                                                      
                                                                                                      	// Indicates that the database is halted and all offshoot Kubernetes resources except PVCs are deleted.
                                                                                                      	// +optional
                                                                                                      	Halted bool `json:"halted,omitempty" protobuf:"varint,12,opt,name=halted"`