This commit is contained in:
parent
d7c49ac804
commit
5398a15d0e
3 changed files with 197 additions and 23 deletions
|
@ -2,11 +2,11 @@ apiVersion: apiextensions.k8s.io/v1
|
|||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.8.0
|
||||
controller-gen.kubebuilder.io/version: v0.9.0
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
app.kubernetes.io/name: pgo
|
||||
app.kubernetes.io/version: 5.5.0
|
||||
app.kubernetes.io/version: 5.6.0
|
||||
name: pgadmins.postgres-operator.crunchydata.com
|
||||
spec:
|
||||
group: postgres-operator.crunchydata.com
|
||||
|
@ -20,7 +20,7 @@ spec:
|
|||
- name: v1beta1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: PGAdmin is the Schema for the pgadmins API
|
||||
description: PGAdmin is the Schema for the PGAdmin API
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
|
@ -860,6 +860,24 @@ spec:
|
|||
to any of these values will be loaded without validation. Be careful,
|
||||
as you may put pgAdmin into an unusable state.
|
||||
properties:
|
||||
configDatabaseURI:
|
||||
description: 'A Secret containing the value for the CONFIG_DATABASE_URI
|
||||
setting. More info: https://www.pgadmin.org/docs/pgadmin4/latest/external_database.html'
|
||||
properties:
|
||||
key:
|
||||
description: The key of the secret to select from. Must be
|
||||
a valid secret key.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the Secret or its key must be
|
||||
defined
|
||||
type: boolean
|
||||
required:
|
||||
- key
|
||||
type: object
|
||||
files:
|
||||
description: Files allows the user to mount projected volumes
|
||||
into the pgAdmin container so that files can be referenced by
|
||||
|
@ -1082,6 +1100,10 @@ spec:
|
|||
type: object
|
||||
type: object
|
||||
type: array
|
||||
gunicorn:
|
||||
description: 'Settings for the gunicorn server. More info: https://docs.gunicorn.org/en/latest/settings.html'
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
ldapBindPassword:
|
||||
description: 'A Secret containing the value for the LDAP_BIND_PASSWORD
|
||||
setting. More info: https://www.pgadmin.org/docs/pgadmin4/latest/ldap.html'
|
||||
|
@ -1347,6 +1369,10 @@ spec:
|
|||
unique in the pgAdmin's ServerGroups since it becomes the
|
||||
ServerGroup name in pgAdmin.
|
||||
type: string
|
||||
postgresClusterName:
|
||||
description: PostgresClusterName selects one cluster to add
|
||||
to pgAdmin by name.
|
||||
type: string
|
||||
postgresClusterSelector:
|
||||
description: PostgresClusterSelector selects clusters to dynamically
|
||||
add to pgAdmin by matching labels. An empty selector like
|
||||
|
@ -1395,9 +1421,18 @@ spec:
|
|||
type: object
|
||||
required:
|
||||
- name
|
||||
- postgresClusterSelector
|
||||
type: object
|
||||
x-kubernetes-validations:
|
||||
- message: exactly one of "postgresClusterName" or "postgresClusterSelector"
|
||||
is required
|
||||
rule: '[has(self.postgresClusterName),has(self.postgresClusterSelector)].exists_one(x,x)'
|
||||
type: array
|
||||
serviceName:
|
||||
description: ServiceName will be used as the name of a ClusterIP service
|
||||
pointing to the pgAdmin pod and port. If the service already exists,
|
||||
PGO will update the service. For more information about services
|
||||
reference the Kubernetes and CrunchyData documentation. https://kubernetes.io/docs/concepts/services-networking/service/
|
||||
type: string
|
||||
tolerations:
|
||||
description: 'Tolerations of the PGAdmin pod. More info: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration'
|
||||
items:
|
||||
|
@ -1438,6 +1473,50 @@ spec:
|
|||
type: string
|
||||
type: object
|
||||
type: array
|
||||
users:
|
||||
description: pgAdmin users that are managed via the PGAdmin spec.
|
||||
Users can still be added via the pgAdmin GUI, but those users will
|
||||
not show up here.
|
||||
items:
|
||||
properties:
|
||||
passwordRef:
|
||||
description: A reference to the secret that holds the user's
|
||||
password.
|
||||
properties:
|
||||
key:
|
||||
description: The key of the secret to select from. Must
|
||||
be a valid secret key.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the Secret or its key must
|
||||
be defined
|
||||
type: boolean
|
||||
required:
|
||||
- key
|
||||
type: object
|
||||
role:
|
||||
description: Role determines whether the user has admin privileges
|
||||
or not. Defaults to User. Valid options are Administrator
|
||||
and User.
|
||||
enum:
|
||||
- Administrator
|
||||
- User
|
||||
type: string
|
||||
username:
|
||||
description: The username for User in pgAdmin. Must be unique
|
||||
in the pgAdmin's users list.
|
||||
type: string
|
||||
required:
|
||||
- passwordRef
|
||||
- username
|
||||
type: object
|
||||
type: array
|
||||
x-kubernetes-list-map-keys:
|
||||
- username
|
||||
x-kubernetes-list-type: map
|
||||
required:
|
||||
- dataVolumeClaimSpec
|
||||
type: object
|
||||
|
@ -1445,9 +1524,8 @@ spec:
|
|||
description: PGAdminStatus defines the observed state of PGAdmin
|
||||
properties:
|
||||
conditions:
|
||||
description: 'conditions represent the observations of pgadmin''s
|
||||
current state. Known .status.conditions.type are: "PersistentVolumeResizing",
|
||||
"Progressing", "ProxyAvailable"'
|
||||
description: 'conditions represent the observations of pgAdmin''s
|
||||
current state. Known .status.conditions.type is: "PersistentVolumeResizing"'
|
||||
items:
|
||||
description: "Condition contains details for one aspect of the current
|
||||
state of this API Resource. --- This struct is intended for direct
|
||||
|
@ -1518,6 +1596,14 @@ spec:
|
|||
x-kubernetes-list-map-keys:
|
||||
- type
|
||||
x-kubernetes-list-type: map
|
||||
imageSHA:
|
||||
description: ImageSHA represents the image SHA for the container running
|
||||
pgAdmin.
|
||||
type: string
|
||||
majorVersion:
|
||||
description: MajorVersion represents the major version of the running
|
||||
pgAdmin.
|
||||
type: integer
|
||||
observedGeneration:
|
||||
description: observedGeneration represents the .metadata.generation
|
||||
on which the status was based.
|
||||
|
|
|
@ -2,11 +2,11 @@ apiVersion: apiextensions.k8s.io/v1
|
|||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.8.0
|
||||
controller-gen.kubebuilder.io/version: v0.9.0
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
app.kubernetes.io/name: pgo
|
||||
app.kubernetes.io/version: 5.5.0
|
||||
app.kubernetes.io/version: 5.6.0
|
||||
name: pgupgrades.postgres-operator.crunchydata.com
|
||||
spec:
|
||||
group: postgres-operator.crunchydata.com
|
||||
|
|
|
@ -2,11 +2,11 @@ apiVersion: apiextensions.k8s.io/v1
|
|||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.8.0
|
||||
controller-gen.kubebuilder.io/version: v0.9.0
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
app.kubernetes.io/name: pgo
|
||||
app.kubernetes.io/version: 5.5.0
|
||||
app.kubernetes.io/version: 5.6.0
|
||||
name: postgresclusters.postgres-operator.crunchydata.com
|
||||
spec:
|
||||
group: postgres-operator.crunchydata.com
|
||||
|
@ -2695,7 +2695,7 @@ spec:
|
|||
- bucket
|
||||
type: object
|
||||
name:
|
||||
description: The name of the the repository
|
||||
description: The name of the repository
|
||||
pattern: ^repo[1-4]
|
||||
type: string
|
||||
s3:
|
||||
|
@ -4438,10 +4438,10 @@ spec:
|
|||
properties:
|
||||
pgbackrest:
|
||||
description: 'Defines a pgBackRest cloud-based data source that
|
||||
can be used to pre-populate the the PostgreSQL data directory
|
||||
for a new PostgreSQL cluster using a pgBackRest restore. The
|
||||
PGBackRest field is incompatible with the PostgresCluster field:
|
||||
only one data source can be used for pre-populating a new PostgreSQL
|
||||
can be used to pre-populate the PostgreSQL data directory for
|
||||
a new PostgreSQL cluster using a pgBackRest restore. The PGBackRest
|
||||
field is incompatible with the PostgresCluster field: only one
|
||||
data source can be used for pre-populating a new PostgreSQL
|
||||
cluster'
|
||||
properties:
|
||||
affinity:
|
||||
|
@ -5615,7 +5615,7 @@ spec:
|
|||
- bucket
|
||||
type: object
|
||||
name:
|
||||
description: The name of the the repository
|
||||
description: The name of the repository
|
||||
pattern: ^repo[1-4]
|
||||
type: string
|
||||
s3:
|
||||
|
@ -10396,7 +10396,7 @@ spec:
|
|||
description: 'Patroni dynamic configuration settings. Changes
|
||||
to this value will be automatically reloaded without validation.
|
||||
Changes to certain PostgreSQL parameters cause PostgreSQL to
|
||||
restart. More info: https://patroni.readthedocs.io/en/latest/SETTINGS.html'
|
||||
restart. More info: https://patroni.readthedocs.io/en/latest/dynamic_configuration.html'
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
leaderLeaseDurationSeconds:
|
||||
|
@ -13060,6 +13060,18 @@ spec:
|
|||
service:
|
||||
description: Specification of the service that exposes PgBouncer.
|
||||
properties:
|
||||
externalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
internalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
metadata:
|
||||
description: Metadata contains metadata for custom resources
|
||||
properties:
|
||||
|
@ -13319,10 +13331,66 @@ spec:
|
|||
required:
|
||||
- pgBouncer
|
||||
type: object
|
||||
replicaService:
|
||||
description: Specification of the service that exposes PostgreSQL
|
||||
replica instances
|
||||
properties:
|
||||
externalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
internalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
metadata:
|
||||
description: Metadata contains metadata for custom resources
|
||||
properties:
|
||||
annotations:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
labels:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
type: object
|
||||
nodePort:
|
||||
description: The port on which this service is exposed when type
|
||||
is NodePort or LoadBalancer. Value must be in-range and not
|
||||
in use or the operation will fail. If unspecified, a port will
|
||||
be allocated if this Service requires one. - https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
||||
format: int32
|
||||
type: integer
|
||||
type:
|
||||
default: ClusterIP
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types'
|
||||
enum:
|
||||
- ClusterIP
|
||||
- NodePort
|
||||
- LoadBalancer
|
||||
type: string
|
||||
type: object
|
||||
service:
|
||||
description: Specification of the service that exposes the PostgreSQL
|
||||
primary instance.
|
||||
properties:
|
||||
externalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
internalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
metadata:
|
||||
description: Metadata contains metadata for custom resources
|
||||
properties:
|
||||
|
@ -14793,6 +14861,18 @@ spec:
|
|||
service:
|
||||
description: Specification of the service that exposes pgAdmin.
|
||||
properties:
|
||||
externalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
internalTrafficPolicy:
|
||||
description: 'More info: https://kubernetes.io/docs/concepts/services-networking/service/#traffic-policies'
|
||||
enum:
|
||||
- Cluster
|
||||
- Local
|
||||
type: string
|
||||
metadata:
|
||||
description: Metadata contains metadata for custom resources
|
||||
properties:
|
||||
|
@ -15048,8 +15128,14 @@ spec:
|
|||
options:
|
||||
description: 'ALTER ROLE options except for PASSWORD. This field
|
||||
is ignored for the "postgres" user. More info: https://www.postgresql.org/docs/current/role-attributes.html'
|
||||
maxLength: 200
|
||||
pattern: ^[^;]*$
|
||||
type: string
|
||||
x-kubernetes-validations:
|
||||
- message: cannot assign password
|
||||
rule: '!self.matches("(?i:PASSWORD)")'
|
||||
- message: cannot contain comments
|
||||
rule: '!self.matches("(?:--|/[*]|[*]/)")'
|
||||
password:
|
||||
description: Properties of the password generated for this user.
|
||||
properties:
|
||||
|
@ -15070,6 +15156,7 @@ spec:
|
|||
required:
|
||||
- name
|
||||
type: object
|
||||
maxItems: 64
|
||||
type: array
|
||||
x-kubernetes-list-map-keys:
|
||||
- name
|
||||
|
@ -15157,6 +15244,11 @@ spec:
|
|||
description: Current state of PostgreSQL instances.
|
||||
items:
|
||||
properties:
|
||||
desiredPGDataVolume:
|
||||
additionalProperties:
|
||||
type: string
|
||||
description: Desired Size of the pgData volume
|
||||
type: object
|
||||
name:
|
||||
type: string
|
||||
readyReplicas:
|
||||
|
@ -15291,7 +15383,7 @@ spec:
|
|||
type: boolean
|
||||
repoOptionsHash:
|
||||
description: A hash of the required fields in the spec for
|
||||
defining an Azure, GCS or S3 repository, Utilizd to detect
|
||||
defining an Azure, GCS or S3 repository, Utilized to detect
|
||||
changes to these fields and then execute pgBackRest stanza-create
|
||||
commands accordingly.
|
||||
type: string
|
||||
|
@ -15425,8 +15517,6 @@ spec:
|
|||
type: object
|
||||
type: object
|
||||
registrationRequired:
|
||||
description: Version information for installations with a registration
|
||||
requirement.
|
||||
properties:
|
||||
pgoVersion:
|
||||
type: string
|
||||
|
@ -15439,8 +15529,6 @@ spec:
|
|||
description: The instance set associated with the startupInstance
|
||||
type: string
|
||||
tokenRequired:
|
||||
description: Signals the need for a token to be applied when registration
|
||||
is required.
|
||||
type: string
|
||||
userInterface:
|
||||
description: Current state of the PostgreSQL user interface.
|
||||
|
|
Loading…
Reference in a new issue