Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the postgresql v1alpha1 API group +kubebuilder:object:generate=true +groupName=postgresql.easymile.com
Index ¶
- Variables
- type ConnectionTypesSpecEnum
- type DatabaseModulesList
- type DatabaseStatusPhase
- type EngineStatusPhase
- type GenericUserConnection
- type ModeEnum
- type PostgresqlDatabase
- type PostgresqlDatabaseList
- type PostgresqlDatabaseSpec
- type PostgresqlDatabaseStatus
- type PostgresqlEngineConfiguration
- type PostgresqlEngineConfigurationList
- type PostgresqlEngineConfigurationSpec
- type PostgresqlEngineConfigurationStatus
- type PostgresqlPublication
- type PostgresqlPublicationList
- type PostgresqlPublicationSpec
- type PostgresqlPublicationStatus
- type PostgresqlPublicationTable
- type PostgresqlPublicationWith
- type PostgresqlUserRole
- type PostgresqlUserRoleAttributes
- type PostgresqlUserRoleList
- type PostgresqlUserRolePrivilege
- type PostgresqlUserRoleSpec
- type PostgresqlUserRoleStatus
- type PrivilegesSpecEnum
- type ProviderType
- type PublicationStatusPhase
- type StatusPostgresRoles
- type UserConnections
- type UserRoleStatusPhase
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "postgresql.easymile.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type ConnectionTypesSpecEnum ¶
type ConnectionTypesSpecEnum string
const BouncerConnectionType ConnectionTypesSpecEnum = "BOUNCER"
const PrimaryConnectionType ConnectionTypesSpecEnum = "PRIMARY"
type DatabaseModulesList ¶
type DatabaseModulesList struct { // Modules list // +optional // +listType=set List []string `json:"list,omitempty"` // Should drop on delete ? // +optional DropOnOnDelete bool `json:"dropOnDelete,omitempty"` // Should drop with cascade ? // +optional DeleteWithCascade bool `json:"deleteWithCascade,omitempty"` }
func (*DatabaseModulesList) DeepCopy ¶
func (in *DatabaseModulesList) DeepCopy() *DatabaseModulesList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseModulesList.
func (*DatabaseModulesList) DeepCopyInto ¶
func (in *DatabaseModulesList) DeepCopyInto(out *DatabaseModulesList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseStatusPhase ¶
type DatabaseStatusPhase string
const DatabaseCreatedPhase DatabaseStatusPhase = "Created"
const DatabaseFailedPhase DatabaseStatusPhase = "Failed"
const DatabaseNoPhase DatabaseStatusPhase = ""
type EngineStatusPhase ¶
type EngineStatusPhase string
const EngineFailedPhase EngineStatusPhase = "Failed"
const EngineNoPhase EngineStatusPhase = ""
const EngineValidatedPhase EngineStatusPhase = "Validated"
type GenericUserConnection ¶
type GenericUserConnection struct { // Hostname // +required // +kubebuilder:validation:Required Host string `json:"host"` // URI args like sslmode, ... URIArgs string `json:"uriArgs"` // Port Port int `json:"port,omitempty"` }
func (*GenericUserConnection) DeepCopy ¶
func (in *GenericUserConnection) DeepCopy() *GenericUserConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericUserConnection.
func (*GenericUserConnection) DeepCopyInto ¶
func (in *GenericUserConnection) DeepCopyInto(out *GenericUserConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModeEnum ¶
type ModeEnum string
const ManagedMode ModeEnum = "MANAGED"
const ProvidedMode ModeEnum = "PROVIDED"
type PostgresqlDatabase ¶
type PostgresqlDatabase struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PostgresqlDatabaseSpec `json:"spec,omitempty"` Status PostgresqlDatabaseStatus `json:"status,omitempty"` }
PostgresqlDatabase is the Schema for the postgresqldatabases API.
func (*PostgresqlDatabase) DeepCopy ¶
func (in *PostgresqlDatabase) DeepCopy() *PostgresqlDatabase
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabase.
func (*PostgresqlDatabase) DeepCopyInto ¶
func (in *PostgresqlDatabase) DeepCopyInto(out *PostgresqlDatabase)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlDatabase) DeepCopyObject ¶
func (in *PostgresqlDatabase) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlDatabaseList ¶
type PostgresqlDatabaseList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PostgresqlDatabase `json:"items"` }
PostgresqlDatabaseList contains a list of PostgresqlDatabase.
func (*PostgresqlDatabaseList) DeepCopy ¶
func (in *PostgresqlDatabaseList) DeepCopy() *PostgresqlDatabaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseList.
func (*PostgresqlDatabaseList) DeepCopyInto ¶
func (in *PostgresqlDatabaseList) DeepCopyInto(out *PostgresqlDatabaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlDatabaseList) DeepCopyObject ¶
func (in *PostgresqlDatabaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlDatabaseSpec ¶
type PostgresqlDatabaseSpec struct { // Database name // +required // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 Database string `json:"database"` // Master role name will be used to create top group role. // Database owner and users will be in this group role. // +optional MasterRole string `json:"masterRole,omitempty"` // Should drop database on Custom Resource deletion ? // +optional DropOnDelete bool `json:"dropOnDelete,omitempty"` // Wait for linked resource to be deleted // +optional WaitLinkedResourcesDeletion bool `json:"waitLinkedResourcesDeletion,omitempty"` // Schema to create in database // +optional Schemas DatabaseModulesList `json:"schemas,omitempty"` // Extensions to enable // +optional Extensions DatabaseModulesList `json:"extensions,omitempty"` // Postgresql Engine Configuration link // +required // +kubebuilder:validation:Required EngineConfiguration *common.CRLink `json:"engineConfiguration"` }
PostgresqlDatabaseSpec defines the desired state of PostgresqlDatabase.
func (*PostgresqlDatabaseSpec) DeepCopy ¶
func (in *PostgresqlDatabaseSpec) DeepCopy() *PostgresqlDatabaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseSpec.
func (*PostgresqlDatabaseSpec) DeepCopyInto ¶
func (in *PostgresqlDatabaseSpec) DeepCopyInto(out *PostgresqlDatabaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlDatabaseStatus ¶
type PostgresqlDatabaseStatus struct { // Current phase of the operator Phase DatabaseStatusPhase `json:"phase"` // Human-readable message indicating details about current operator phase or error. // +optional Message string `json:"message"` // True if all resources are in a ready state and all work is done. // +optional Ready bool `json:"ready"` // Created database // +optional Database string `json:"database"` // Already created roles for database // +optional Roles StatusPostgresRoles `json:"roles"` // Already created schemas // +optional // +listType=set Schemas []string `json:"schemas,omitempty"` // Already extensions added // +optional // +listType=set Extensions []string `json:"extensions,omitempty"` }
PostgresqlDatabaseStatus defines the observed state of PostgresqlDatabase.
func (*PostgresqlDatabaseStatus) DeepCopy ¶
func (in *PostgresqlDatabaseStatus) DeepCopy() *PostgresqlDatabaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlDatabaseStatus.
func (*PostgresqlDatabaseStatus) DeepCopyInto ¶
func (in *PostgresqlDatabaseStatus) DeepCopyInto(out *PostgresqlDatabaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlEngineConfiguration ¶
type PostgresqlEngineConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PostgresqlEngineConfigurationSpec `json:"spec,omitempty"` Status PostgresqlEngineConfigurationStatus `json:"status,omitempty"` }
PostgresqlEngineConfiguration is the Schema for the postgresqlengineconfigurations API.
func (*PostgresqlEngineConfiguration) DeepCopy ¶
func (in *PostgresqlEngineConfiguration) DeepCopy() *PostgresqlEngineConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlEngineConfiguration.
func (*PostgresqlEngineConfiguration) DeepCopyInto ¶
func (in *PostgresqlEngineConfiguration) DeepCopyInto(out *PostgresqlEngineConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlEngineConfiguration) DeepCopyObject ¶
func (in *PostgresqlEngineConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlEngineConfigurationList ¶
type PostgresqlEngineConfigurationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PostgresqlEngineConfiguration `json:"items"` }
PostgresqlEngineConfigurationList contains a list of PostgresqlEngineConfiguration.
func (*PostgresqlEngineConfigurationList) DeepCopy ¶
func (in *PostgresqlEngineConfigurationList) DeepCopy() *PostgresqlEngineConfigurationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlEngineConfigurationList.
func (*PostgresqlEngineConfigurationList) DeepCopyInto ¶
func (in *PostgresqlEngineConfigurationList) DeepCopyInto(out *PostgresqlEngineConfigurationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlEngineConfigurationList) DeepCopyObject ¶
func (in *PostgresqlEngineConfigurationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlEngineConfigurationSpec ¶
type PostgresqlEngineConfigurationSpec struct { // Provider // +kubebuilder:validation:Enum="";AWS;AZURE Provider ProviderType `json:"provider,omitempty"` // Hostname // +required // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 Host string `json:"host"` // Port Port int `json:"port,omitempty"` // URI args like sslmode, ... URIArgs string `json:"uriArgs,omitempty"` // Default database DefaultDatabase string `json:"defaultDatabase,omitempty"` // Duration between two checks for valid engine CheckInterval string `json:"checkInterval,omitempty"` // Allow grant admin on every created roles (group or user) for provided PGEC user in order to // have power to administrate those roles even with a less powered "admin" user. // Operator will create role and after grant PGEC provided user on those roles with admin option if enabled. AllowGrantAdminOption bool `json:"allowGrantAdminOption,omitempty"` // Wait for linked resource to be deleted WaitLinkedResourcesDeletion bool `json:"waitLinkedResourcesDeletion,omitempty"` // User and password secret // +required // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 SecretName string `json:"secretName"` // User connections used for secret generation // That will be used to generate secret with primary server as url or // to use the pg bouncer one. // Note: Operator won't check those values. // +optional UserConnections *UserConnections `json:"userConnections"` }
PostgresqlEngineConfigurationSpec defines the desired state of PostgresqlEngineConfiguration.
func (*PostgresqlEngineConfigurationSpec) DeepCopy ¶
func (in *PostgresqlEngineConfigurationSpec) DeepCopy() *PostgresqlEngineConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlEngineConfigurationSpec.
func (*PostgresqlEngineConfigurationSpec) DeepCopyInto ¶
func (in *PostgresqlEngineConfigurationSpec) DeepCopyInto(out *PostgresqlEngineConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlEngineConfigurationStatus ¶
type PostgresqlEngineConfigurationStatus struct { // Current phase of the operator Phase EngineStatusPhase `json:"phase"` // Human-readable message indicating details about current operator phase or error. // +optional Message string `json:"message"` // True if all resources are in a ready state and all work is done. // +optional Ready bool `json:"ready"` // Last validated time // +optional LastValidatedTime string `json:"lastValidatedTime"` // Resource Spec hash // +optional Hash string `json:"hash"` }
PostgresqlEngineConfigurationStatus defines the observed state of PostgresqlEngineConfiguration.
func (*PostgresqlEngineConfigurationStatus) DeepCopy ¶
func (in *PostgresqlEngineConfigurationStatus) DeepCopy() *PostgresqlEngineConfigurationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlEngineConfigurationStatus.
func (*PostgresqlEngineConfigurationStatus) DeepCopyInto ¶
func (in *PostgresqlEngineConfigurationStatus) DeepCopyInto(out *PostgresqlEngineConfigurationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlPublication ¶
type PostgresqlPublication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PostgresqlPublicationSpec `json:"spec,omitempty"` Status PostgresqlPublicationStatus `json:"status,omitempty"` }
PostgresqlPublication is the Schema for the postgresqlpublications API.
func (*PostgresqlPublication) DeepCopy ¶
func (in *PostgresqlPublication) DeepCopy() *PostgresqlPublication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublication.
func (*PostgresqlPublication) DeepCopyInto ¶
func (in *PostgresqlPublication) DeepCopyInto(out *PostgresqlPublication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlPublication) DeepCopyObject ¶
func (in *PostgresqlPublication) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlPublicationList ¶
type PostgresqlPublicationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PostgresqlPublication `json:"items"` }
PostgresqlPublicationList contains a list of PostgresqlPublication.
func (*PostgresqlPublicationList) DeepCopy ¶
func (in *PostgresqlPublicationList) DeepCopy() *PostgresqlPublicationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublicationList.
func (*PostgresqlPublicationList) DeepCopyInto ¶
func (in *PostgresqlPublicationList) DeepCopyInto(out *PostgresqlPublicationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlPublicationList) DeepCopyObject ¶
func (in *PostgresqlPublicationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlPublicationSpec ¶
type PostgresqlPublicationSpec struct { // Postgresql Database // +required // +kubebuilder:validation:Required Database *common.CRLink `json:"database"` // Postgresql Publication name // +required // +kubebuilder:validation:Required Name string `json:"name"` // Postgresql replication slot name // Default value will the publication name // +optional ReplicationSlotName string `json:"replicationSlotName,omitempty"` // Postgresql replication slot plugin // Default value will be "pgoutput" // +optional ReplicationSlotPlugin string `json:"replicationSlotPlugin,omitempty"` // Should drop database on Custom Resource deletion ? // +optional DropOnDelete bool `json:"dropOnDelete,omitempty"` // Publication for all tables // Note: This is mutually exclusive with "tablesInSchema" & "tables" // +optional AllTables bool `json:"allTables,omitempty"` // Publication for tables in schema // Note: This is a list of schema // +optional TablesInSchema []string `json:"tablesInSchema,omitempty"` // Publication for selected tables // +optional Tables []*PostgresqlPublicationTable `json:"tables,omitempty"` // Publication with parameters // +optional WithParameters *PostgresqlPublicationWith `json:"withParameters,omitempty"` }
PostgresqlPublicationSpec defines the desired state of PostgresqlPublication.
func (*PostgresqlPublicationSpec) DeepCopy ¶
func (in *PostgresqlPublicationSpec) DeepCopy() *PostgresqlPublicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublicationSpec.
func (*PostgresqlPublicationSpec) DeepCopyInto ¶
func (in *PostgresqlPublicationSpec) DeepCopyInto(out *PostgresqlPublicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlPublicationStatus ¶
type PostgresqlPublicationStatus struct { // Current phase of the operator Phase PublicationStatusPhase `json:"phase"` // Human-readable message indicating details about current operator phase or error. // +optional Message string `json:"message"` // True if all resources are in a ready state and all work is done. // +optional Ready bool `json:"ready"` // Created publication name // +optional Name string `json:"name,omitempty"` // Created replication slot name // +optional ReplicationSlotName string `json:"replicationSlotName,omitempty"` // Created replication slot plugin // +optional ReplicationSlotPlugin string `json:"replicationSlotPlugin,omitempty"` // Marker for save // +optional AllTables *bool `json:"allTables,omitempty"` // Resource Spec hash // +optional Hash string `json:"hash,omitempty"` }
PostgresqlPublicationStatus defines the observed state of PostgresqlPublication.
func (*PostgresqlPublicationStatus) DeepCopy ¶
func (in *PostgresqlPublicationStatus) DeepCopy() *PostgresqlPublicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublicationStatus.
func (*PostgresqlPublicationStatus) DeepCopyInto ¶
func (in *PostgresqlPublicationStatus) DeepCopyInto(out *PostgresqlPublicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlPublicationTable ¶
type PostgresqlPublicationTable struct { // Table name to use for publication TableName string `json:"tableName"` // Columns to export Columns *[]string `json:"columns,omitempty"` // Additional WHERE for table AdditionalWhere *string `json:"additionalWhere,omitempty"` }
func (*PostgresqlPublicationTable) DeepCopy ¶
func (in *PostgresqlPublicationTable) DeepCopy() *PostgresqlPublicationTable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublicationTable.
func (*PostgresqlPublicationTable) DeepCopyInto ¶
func (in *PostgresqlPublicationTable) DeepCopyInto(out *PostgresqlPublicationTable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlPublicationWith ¶
type PostgresqlPublicationWith struct { // Publish param // See here: https://www.postgresql.org/docs/current/sql-createpublication.html#SQL-CREATEPUBLICATION-PARAMS-WITH-PUBLISH Publish string `json:"publish"` // Publish via partition root param // See here: https://www.postgresql.org/docs/current/sql-createpublication.html#SQL-CREATEPUBLICATION-PARAMS-WITH-PUBLISH PublishViaPartitionRoot *bool `json:"publishViaPartitionRoot,omitempty"` }
func (*PostgresqlPublicationWith) DeepCopy ¶
func (in *PostgresqlPublicationWith) DeepCopy() *PostgresqlPublicationWith
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlPublicationWith.
func (*PostgresqlPublicationWith) DeepCopyInto ¶
func (in *PostgresqlPublicationWith) DeepCopyInto(out *PostgresqlPublicationWith)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlUserRole ¶
type PostgresqlUserRole struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PostgresqlUserRoleSpec `json:"spec,omitempty"` Status PostgresqlUserRoleStatus `json:"status,omitempty"` }
PostgresqlUserRole is the Schema for the postgresqluserroles API.
func (*PostgresqlUserRole) DeepCopy ¶
func (in *PostgresqlUserRole) DeepCopy() *PostgresqlUserRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRole.
func (*PostgresqlUserRole) DeepCopyInto ¶
func (in *PostgresqlUserRole) DeepCopyInto(out *PostgresqlUserRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlUserRole) DeepCopyObject ¶
func (in *PostgresqlUserRole) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlUserRoleAttributes ¶
type PostgresqlUserRoleAttributes struct { // REPLICATION attribute // Note: This can be either true, false or null (to ignore this parameter) Replication *bool `json:"replication,omitempty"` // BYPASSRLS attribute // Note: This can be either true, false or null (to ignore this parameter) BypassRLS *bool `json:"bypassRLS,omitempty"` //nolint:tagliatelle // CONNECTION LIMIT connlimit attribute // Note: This can be either -1, a number or null (to ignore this parameter) // Note: Increase your number by one because operator is using the created user to perform some operations. ConnectionLimit *int `json:"connectionLimit,omitempty"` }
func (*PostgresqlUserRoleAttributes) DeepCopy ¶
func (in *PostgresqlUserRoleAttributes) DeepCopy() *PostgresqlUserRoleAttributes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRoleAttributes.
func (*PostgresqlUserRoleAttributes) DeepCopyInto ¶
func (in *PostgresqlUserRoleAttributes) DeepCopyInto(out *PostgresqlUserRoleAttributes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlUserRoleList ¶
type PostgresqlUserRoleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PostgresqlUserRole `json:"items"` }
PostgresqlUserRoleList contains a list of PostgresqlUserRole.
func (*PostgresqlUserRoleList) DeepCopy ¶
func (in *PostgresqlUserRoleList) DeepCopy() *PostgresqlUserRoleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRoleList.
func (*PostgresqlUserRoleList) DeepCopyInto ¶
func (in *PostgresqlUserRoleList) DeepCopyInto(out *PostgresqlUserRoleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PostgresqlUserRoleList) DeepCopyObject ¶
func (in *PostgresqlUserRoleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PostgresqlUserRolePrivilege ¶
type PostgresqlUserRolePrivilege struct { // User Connection type. // This is referring to the user connection type needed for this user. // +optional // +kubebuilder:default=PRIMARY // +kubebuilder:validation:Enum=PRIMARY;BOUNCER ConnectionType ConnectionTypesSpecEnum `json:"connectionType,omitempty"` // User privileges // +required // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=OWNER;WRITER;READER Privilege PrivilegesSpecEnum `json:"privilege"` // Postgresql Database // +required // +kubebuilder:validation:Required Database *common.CRLink `json:"database"` // Generated secret name prefix // +required // +kubebuilder:validation:Required // +kubebuilder:validation:MinLength=1 GeneratedSecretName string `json:"generatedSecretName"` // Extra connection URL Parameters ExtraConnectionURLParameters map[string]string `json:"extraConnectionUrlParameters,omitempty"` }
func (*PostgresqlUserRolePrivilege) DeepCopy ¶
func (in *PostgresqlUserRolePrivilege) DeepCopy() *PostgresqlUserRolePrivilege
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRolePrivilege.
func (*PostgresqlUserRolePrivilege) DeepCopyInto ¶
func (in *PostgresqlUserRolePrivilege) DeepCopyInto(out *PostgresqlUserRolePrivilege)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlUserRoleSpec ¶
type PostgresqlUserRoleSpec struct { // User mode // +required // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=PROVIDED;MANAGED Mode ModeEnum `json:"mode,omitempty"` // Privileges // +required // +kubebuilder:validation:Required // +kubebuilder:validation:Min=1 Privileges []*PostgresqlUserRolePrivilege `json:"privileges"` // User role prefix // +optional RolePrefix string `json:"rolePrefix,omitempty"` // User password rotation duration // +optional UserPasswordRotationDuration string `json:"userPasswordRotationDuration,omitempty"` // Simple user password tuple generated secret name // +optional WorkGeneratedSecretName string `json:"workGeneratedSecretName"` // Import secret name // +optional ImportSecretName string `json:"importSecretName,omitempty"` // Role attributes // Note: Only attributes that aren't conflicting with operator are supported. // +optional RoleAttributes *PostgresqlUserRoleAttributes `json:"roleAttributes,omitempty"` }
PostgresqlUserRoleSpec defines the desired state of PostgresqlUserRole.
func (*PostgresqlUserRoleSpec) DeepCopy ¶
func (in *PostgresqlUserRoleSpec) DeepCopy() *PostgresqlUserRoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRoleSpec.
func (*PostgresqlUserRoleSpec) DeepCopyInto ¶
func (in *PostgresqlUserRoleSpec) DeepCopyInto(out *PostgresqlUserRoleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PostgresqlUserRoleStatus ¶
type PostgresqlUserRoleStatus struct { // Current phase of the operator Phase UserRoleStatusPhase `json:"phase"` // Human-readable message indicating details about current operator phase or error. // +optional Message string `json:"message"` // True if all resources are in a ready state and all work is done. // +optional Ready bool `json:"ready"` // User role // +optional RolePrefix string `json:"roleName"` // Postgres role for user // +optional PostgresRole string `json:"postgresRole"` // Postgres old roles to cleanup // +optional OldPostgresRoles []string `json:"oldPostgresRoles"` // Last password changed time // +optional LastPasswordChangedTime string `json:"lastPasswordChangedTime"` }
PostgresqlUserRoleStatus defines the observed state of PostgresqlUserRole.
func (*PostgresqlUserRoleStatus) DeepCopy ¶
func (in *PostgresqlUserRoleStatus) DeepCopy() *PostgresqlUserRoleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostgresqlUserRoleStatus.
func (*PostgresqlUserRoleStatus) DeepCopyInto ¶
func (in *PostgresqlUserRoleStatus) DeepCopyInto(out *PostgresqlUserRoleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivilegesSpecEnum ¶
type PrivilegesSpecEnum string
const OwnerPrivilege PrivilegesSpecEnum = "OWNER"
const ReaderPrivilege PrivilegesSpecEnum = "READER"
const WriterPrivilege PrivilegesSpecEnum = "WRITER"
type ProviderType ¶
type ProviderType string
const AWSProvider ProviderType = "AWS"
const AzureProvider ProviderType = "AZURE"
const NoProvider ProviderType = ""
type PublicationStatusPhase ¶
type PublicationStatusPhase string
const PublicationCreatedPhase PublicationStatusPhase = "Created"
const PublicationFailedPhase PublicationStatusPhase = "Failed"
const PublicationNoPhase PublicationStatusPhase = ""
type StatusPostgresRoles ¶
type StatusPostgresRoles struct { Owner string `json:"owner"` Reader string `json:"reader"` Writer string `json:"writer"` }
StatusPostgresRoles stores the different group roles already created for database +k8s:openapi-gen=true
func (*StatusPostgresRoles) DeepCopy ¶
func (in *StatusPostgresRoles) DeepCopy() *StatusPostgresRoles
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusPostgresRoles.
func (*StatusPostgresRoles) DeepCopyInto ¶
func (in *StatusPostgresRoles) DeepCopyInto(out *StatusPostgresRoles)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserConnections ¶
type UserConnections struct { // Primary connection is referring to the primary node connection. // +optional PrimaryConnection *GenericUserConnection `json:"primaryConnection,omitempty"` // Bouncer connection is referring to a pg bouncer node. // +optional BouncerConnection *GenericUserConnection `json:"bouncerConnection,omitempty"` // Replica connections are referring to the replica nodes. // +optional ReplicaConnections []*GenericUserConnection `json:"replicaConnections,omitempty"` // Replica Bouncer connections are referring to pg bouncer nodes. // +optional ReplicaBouncerConnections []*GenericUserConnection `json:"replicaBouncerConnections,omitempty"` }
func (*UserConnections) DeepCopy ¶
func (in *UserConnections) DeepCopy() *UserConnections
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserConnections.
func (*UserConnections) DeepCopyInto ¶
func (in *UserConnections) DeepCopyInto(out *UserConnections)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserRoleStatusPhase ¶
type UserRoleStatusPhase string
const UserRoleCreatedPhase UserRoleStatusPhase = "Created"
const UserRoleFailedPhase UserRoleStatusPhase = "Failed"
const UserRoleNoPhase UserRoleStatusPhase = ""