Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions _/ClusterRole/cloudnative-pg-edit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,23 @@ metadata:
app.kubernetes.io/instance: cloudnative-pg
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: cloudnative-pg
app.kubernetes.io/version: 1.25.0
helm.sh/chart: cloudnative-pg-0.23.1
app.kubernetes.io/version: 1.29.0
helm.sh/chart: cloudnative-pg-0.28.0
name: cloudnative-pg-edit
rules:
- apiGroups:
- postgresql.cnpg.io
resources:
- backups
- clusters
- clusters/status
- databases
- failoverquorums
- poolers
- publications
- scheduledbackups
- imagecatalogs
- clusterimagecatalogs
- subscriptions
verbs:
- create
Expand Down
8 changes: 6 additions & 2 deletions _/ClusterRole/cloudnative-pg-view.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,23 @@ metadata:
app.kubernetes.io/instance: cloudnative-pg
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: cloudnative-pg
app.kubernetes.io/version: 1.25.0
helm.sh/chart: cloudnative-pg-0.23.1
app.kubernetes.io/version: 1.29.0
helm.sh/chart: cloudnative-pg-0.28.0
name: cloudnative-pg-view
rules:
- apiGroups:
- postgresql.cnpg.io
resources:
- backups
- clusters
- clusters/status
- databases
- failoverquorums
- poolers
- publications
- scheduledbackups
- imagecatalogs
- clusterimagecatalogs
- subscriptions
verbs:
- get
Expand Down
15 changes: 13 additions & 2 deletions _/ClusterRole/cloudnative-pg.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ metadata:
app.kubernetes.io/instance: cloudnative-pg
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: cloudnative-pg
app.kubernetes.io/version: 1.25.0
helm.sh/chart: cloudnative-pg-0.23.1
app.kubernetes.io/version: 1.29.0
helm.sh/chart: cloudnative-pg-0.28.0
name: cloudnative-pg
rules:
- apiGroups:
Expand Down Expand Up @@ -165,6 +165,16 @@ rules:
- patch
- update
- watch
- apiGroups:
- postgresql.cnpg.io
resources:
- failoverquorums
verbs:
- create
- delete
- get
- list
- watch
- apiGroups:
- postgresql.cnpg.io
resources:
Expand Down Expand Up @@ -197,6 +207,7 @@ rules:
resources:
- clusters/status
- poolers/status
- failoverquorums/status
verbs:
- get
- patch
Expand Down
4 changes: 2 additions & 2 deletions _/ClusterRoleBinding/cloudnative-pg.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ metadata:
app.kubernetes.io/instance: cloudnative-pg
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: cloudnative-pg
app.kubernetes.io/version: 1.25.0
helm.sh/chart: cloudnative-pg-0.23.1
app.kubernetes.io/version: 1.29.0
helm.sh/chart: cloudnative-pg-0.28.0
name: cloudnative-pg
roleRef:
apiGroup: rbac.authorization.k8s.io
Expand Down
47 changes: 43 additions & 4 deletions _/CustomResourceDefinition/backups.postgresql.cnpg.io.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
controller-gen.kubebuilder.io/version: v0.20.1
helm.sh/resource-policy: keep
name: backups.postgresql.cnpg.io
spec:
Expand Down Expand Up @@ -33,7 +33,7 @@ spec:
name: v1
schema:
openAPIV3Schema:
description: Backup is the Schema for the backups API
description: A Backup resource is a request for a PostgreSQL backup by the user.
properties:
apiVersion:
description: >-
Expand Down Expand Up @@ -200,6 +200,9 @@ spec:
required:
- cluster
type: object
x-kubernetes-validations:
- message: BackupSpec is immutable once set
rule: oldSelf == self
status:
description: >-
Most recently observed status of the backup. This data may not
Expand Down Expand Up @@ -274,6 +277,14 @@ spec:
- key
- name
type: object
useDefaultAzureCredentials:
description: >-
Use the default Azure authentication flow, which
includes DefaultAzureCredential.

This allows authentication using environment variables
and managed identities.
type: boolean
type: object
backupId:
description: The ID of the Barman backup
Expand Down Expand Up @@ -381,7 +392,25 @@ spec:
podName:
description: The pod name
type: string
sessionID:
description: >-
The instance manager session ID. This is a unique
identifier generated at instance manager

startup and changes on every restart (including
container reboots). Used to detect if

the instance manager was restarted during long-running
operations like backups, which

would terminate any running backup process.
type: string
type: object
majorVersion:
description: |-
The PostgreSQL major version that was running when the
backup was taken.
type: integer
method:
description: The backup method being used
type: string
Expand All @@ -398,6 +427,16 @@ spec:
type: string
description: A map containing the plugin metadata
type: object
reconciliationStartedAt:
description: When the backup process was started by the operator
format: date-time
type: string
reconciliationTerminatedAt:
description: >-
When the reconciliation was terminated by the operator
(either successfully or not)
format: date-time
type: string
s3Credentials:
description: The credentials to use to upload data to S3
properties:
Expand Down Expand Up @@ -498,11 +537,11 @@ spec:
type: array
type: object
startedAt:
description: When the backup was started
description: When the backup execution was started by the backup tool
format: date-time
type: string
stoppedAt:
description: When the backup was terminated
description: When the backup execution was terminated by the backup tool
format: date-time
type: string
tablespaceMapFile:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.16.5
controller-gen.kubebuilder.io/version: v0.20.1
helm.sh/resource-policy: keep
name: clusterimagecatalogs.postgresql.cnpg.io
spec:
Expand Down Expand Up @@ -66,6 +66,175 @@ spec:
items:
description: CatalogImage defines the image and major version
properties:
extensions:
description: The configuration of the extensions to be added
items:
description: >-
ExtensionConfiguration is the configuration used to
add

PostgreSQL extensions to the Cluster.
properties:
bin_path:
description: >-
A list of directories within the image to be
appended to the

PostgreSQL process's `PATH` environment
variable.
items:
type: string
type: array
dynamic_library_path:
description: >-
The list of directories inside the image which
should be added to dynamic_library_path.

If not defined, defaults to "/lib".
items:
type: string
type: array
env:
description: >-
Env is a list of custom environment variables to
be set in the

PostgreSQL process for this extension. It is the
responsibility of the

cluster administrator to ensure the variables
are correct for the

specific extension. Note that changes to these
variables require

a manual cluster restart to take effect.
items:
description: >-
ExtensionEnvVar defines an environment
variable for a specific extension

image volume.
properties:
name:
description: >-
Name of the environment variable to be
injected into the

PostgreSQL process.
minLength: 1
pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
type: string
value:
description: >-
Value of the environment variable.
CloudNativePG performs a direct

replacement of this value, with support
for placeholder expansion.

The ${`image_root`} placeholder resolves
to the absolute mount path

of the extension's volume (e.g.,
`/extensions/my-extension`). This

is particularly useful for allowing
applications or libraries to

locate specific directories within the
mounted image.

Unrecognized placeholders are rejected. To
include a literal ${...}

in the value, escape it as $${...}.
minLength: 1
type: string
required:
- name
- value
type: object
type: array
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
extension_control_path:
description: >-
The list of directories inside the image which
should be added to extension_control_path.

If not defined, defaults to "/share".
items:
type: string
type: array
image:
description: The image containing the extension.
properties:
pullPolicy:
description: >-
Policy for pulling OCI objects. Possible
values are:

Always: the kubelet always attempts to pull
the reference. Container creation will fail
If the pull fails.

Never: the kubelet never pulls the reference
and only uses a local image or artifact.
Container creation will fail if the
reference isn't present.

IfNotPresent: the kubelet pulls if the
reference isn't already present on disk.
Container creation will fail if the
reference isn't present and the pull fails.

Defaults to Always if :latest tag is
specified, or IfNotPresent otherwise.
type: string
reference:
description: >-
Required: Image or artifact reference to be
used.

Behaves in the same way as
pod.spec.containers[*].image.

Pull secrets will be assembled in the same
way as for the container image by looking up
node credentials, SA image pull secrets, and
pod spec image pull secrets.

More info:
https://kubernetes.io/docs/concepts/containers/images

This field is optional to allow higher level
config management to default or override

container images in workload controllers
like Deployments and StatefulSets.
type: string
type: object
ld_library_path:
description: >-
The list of directories inside the image which
should be added to ld_library_path.
items:
type: string
type: array
name:
description: The name of the extension, required
minLength: 1
pattern: ^[a-z0-9]([-a-z0-9_]*[a-z0-9])?$
type: string
required:
- name
type: object
type: array
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
image:
description: The image reference
type: string
Expand Down
Loading
Loading