{ "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "apiVersion": { "type": "string" }, "kind": { "type": "string" }, "metadata": { "type": "object" }, "spec": { "properties": { "affinity": { "properties": { "additionalPodAffinity": { "properties": { "preferredDuringSchedulingIgnoredDuringExecution": { "items": { "properties": { "podAffinityTerm": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "matchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "mismatchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "namespaceSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "namespaces": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "topologyKey": { "type": "string" } }, "required": [ "topologyKey" ], "type": "object" }, "weight": { "format": "int32", "type": "integer" } }, "required": [ "podAffinityTerm", "weight" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "requiredDuringSchedulingIgnoredDuringExecution": { "items": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "matchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "mismatchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "namespaceSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "namespaces": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "topologyKey": { "type": "string" } }, "required": [ "topologyKey" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object" }, "additionalPodAntiAffinity": { "properties": { "preferredDuringSchedulingIgnoredDuringExecution": { "items": { "properties": { "podAffinityTerm": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "matchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "mismatchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "namespaceSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "namespaces": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "topologyKey": { "type": "string" } }, "required": [ "topologyKey" ], "type": "object" }, "weight": { "format": "int32", "type": "integer" } }, "required": [ "podAffinityTerm", "weight" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "requiredDuringSchedulingIgnoredDuringExecution": { "items": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "matchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "mismatchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "namespaceSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "namespaces": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "topologyKey": { "type": "string" } }, "required": [ "topologyKey" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object" }, "enablePodAntiAffinity": { "type": "boolean" }, "nodeAffinity": { "properties": { "preferredDuringSchedulingIgnoredDuringExecution": { "items": { "properties": { "preference": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchFields": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "weight": { "format": "int32", "type": "integer" } }, "required": [ "preference", "weight" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "requiredDuringSchedulingIgnoredDuringExecution": { "properties": { "nodeSelectorTerms": { "items": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchFields": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "nodeSelectorTerms" ], "type": "object", "x-kubernetes-map-type": "atomic" } }, "type": "object" }, "nodeSelector": { "additionalProperties": { "type": "string" }, "type": "object" }, "podAntiAffinityType": { "type": "string" }, "tolerations": { "items": { "properties": { "effect": { "type": "string" }, "key": { "type": "string" }, "operator": { "type": "string" }, "tolerationSeconds": { "format": "int64", "type": "integer" }, "value": { "type": "string" } }, "type": "object" }, "type": "array" }, "topologyKey": { "type": "string" } }, "type": "object" }, "backup": { "properties": { "barmanObjectStore": { "properties": { "azureCredentials": { "properties": { "connectionString": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "inheritFromAzureAD": { "type": "boolean" }, "storageAccount": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "storageKey": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "storageSasToken": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" } }, "type": "object" }, "data": { "properties": { "additionalCommandArgs": { "items": { "type": "string" }, "type": "array" }, "compression": { "enum": [ "bzip2", "gzip", "snappy" ], "type": "string" }, "encryption": { "enum": [ "AES256", "aws:kms" ], "type": "string" }, "immediateCheckpoint": { "type": "boolean" }, "jobs": { "format": "int32", "minimum": 1, "type": "integer" } }, "type": "object" }, "destinationPath": { "minLength": 1, "type": "string" }, "endpointCA": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "endpointURL": { "type": "string" }, "googleCredentials": { "properties": { "applicationCredentials": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "gkeEnvironment": { "type": "boolean" } }, "type": "object" }, "historyTags": { "additionalProperties": { "type": "string" }, "type": "object" }, "s3Credentials": { "properties": { "accessKeyId": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "inheritFromIAMRole": { "type": "boolean" }, "region": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "secretAccessKey": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "sessionToken": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" } }, "type": "object" }, "serverName": { "type": "string" }, "tags": { "additionalProperties": { "type": "string" }, "type": "object" }, "wal": { "properties": { "archiveAdditionalCommandArgs": { "items": { "type": "string" }, "type": "array" }, "compression": { "enum": [ "bzip2", "gzip", "lz4", "snappy", "xz", "zstd" ], "type": "string" }, "encryption": { "enum": [ "AES256", "aws:kms" ], "type": "string" }, "maxParallel": { "minimum": 1, "type": "integer" }, "restoreAdditionalCommandArgs": { "items": { "type": "string" }, "type": "array" } }, "type": "object" } }, "required": [ "destinationPath" ], "type": "object" }, "retentionPolicy": { "pattern": "^[1-9][0-9]*[dwm]$", "type": "string" }, "target": { "default": "prefer-standby", "enum": [ "primary", "prefer-standby" ], "type": "string" }, "volumeSnapshot": { "properties": { "annotations": { "additionalProperties": { "type": "string" }, "type": "object" }, "className": { "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, "type": "object" }, "online": { "default": true, "type": "boolean" }, "onlineConfiguration": { "default": { "immediateCheckpoint": false, "waitForArchive": true }, "properties": { "immediateCheckpoint": { "type": "boolean" }, "waitForArchive": { "default": true, "type": "boolean" } }, "type": "object" }, "snapshotOwnerReference": { "default": "none", "enum": [ "none", "cluster", "backup" ], "type": "string" }, "tablespaceClassName": { "additionalProperties": { "type": "string" }, "type": "object" }, "walClassName": { "type": "string" } }, "type": "object" } }, "type": "object" }, "bootstrap": { "properties": { "initdb": { "properties": { "builtinLocale": { "type": "string" }, "dataChecksums": { "type": "boolean" }, "database": { "type": "string" }, "encoding": { "type": "string" }, "icuLocale": { "type": "string" }, "icuRules": { "type": "string" }, "import": { "properties": { "databases": { "items": { "type": "string" }, "type": "array" }, "pgDumpExtraOptions": { "items": { "type": "string" }, "type": "array" }, "pgRestoreDataOptions": { "items": { "type": "string" }, "type": "array" }, "pgRestoreExtraOptions": { "items": { "type": "string" }, "type": "array" }, "pgRestorePostdataOptions": { "items": { "type": "string" }, "type": "array" }, "pgRestorePredataOptions": { "items": { "type": "string" }, "type": "array" }, "postImportApplicationSQL": { "items": { "type": "string" }, "type": "array" }, "roles": { "items": { "type": "string" }, "type": "array" }, "schemaOnly": { "type": "boolean" }, "source": { "properties": { "externalCluster": { "type": "string" } }, "required": [ "externalCluster" ], "type": "object" }, "type": { "enum": [ "microservice", "monolith" ], "type": "string" } }, "required": [ "databases", "source", "type" ], "type": "object" }, "locale": { "type": "string" }, "localeCType": { "type": "string" }, "localeCollate": { "type": "string" }, "localeProvider": { "type": "string" }, "options": { "items": { "type": "string" }, "type": "array" }, "owner": { "type": "string" }, "postInitApplicationSQL": { "items": { "type": "string" }, "type": "array" }, "postInitApplicationSQLRefs": { "properties": { "configMapRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" }, "secretRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" } }, "type": "object" }, "postInitSQL": { "items": { "type": "string" }, "type": "array" }, "postInitSQLRefs": { "properties": { "configMapRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" }, "secretRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" } }, "type": "object" }, "postInitTemplateSQL": { "items": { "type": "string" }, "type": "array" }, "postInitTemplateSQLRefs": { "properties": { "configMapRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" }, "secretRefs": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" } }, "type": "object" }, "secret": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "walSegmentSize": { "maximum": 1024, "minimum": 1, "type": "integer" } }, "type": "object", "x-kubernetes-validations": [ { "message": "builtinLocale is only available when localeProvider is set to `builtin`", "rule": "!has(self.builtinLocale) || self.localeProvider == 'builtin'" }, { "message": "icuLocale is only available when localeProvider is set to `icu`", "rule": "!has(self.icuLocale) || self.localeProvider == 'icu'" }, { "message": "icuRules is only available when localeProvider is set to `icu`", "rule": "!has(self.icuRules) || self.localeProvider == 'icu'" } ] }, "pg_basebackup": { "properties": { "database": { "type": "string" }, "owner": { "type": "string" }, "secret": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "source": { "minLength": 1, "type": "string" } }, "required": [ "source" ], "type": "object" }, "recovery": { "properties": { "backup": { "properties": { "endpointCA": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "database": { "type": "string" }, "owner": { "type": "string" }, "recoveryTarget": { "properties": { "backupID": { "type": "string" }, "exclusive": { "type": "boolean" }, "targetImmediate": { "type": "boolean" }, "targetLSN": { "type": "string" }, "targetName": { "type": "string" }, "targetTLI": { "type": "string" }, "targetTime": { "type": "string" }, "targetXID": { "type": "string" } }, "type": "object" }, "secret": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "source": { "type": "string" }, "volumeSnapshots": { "properties": { "storage": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "tablespaceStorage": { "additionalProperties": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "type": "object" }, "walStorage": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" } }, "required": [ "storage" ], "type": "object" } }, "type": "object" } }, "type": "object" }, "certificates": { "properties": { "clientCASecret": { "type": "string" }, "replicationTLSSecret": { "type": "string" }, "serverAltDNSNames": { "items": { "type": "string" }, "type": "array" }, "serverCASecret": { "type": "string" }, "serverTLSSecret": { "type": "string" } }, "type": "object" }, "enablePDB": { "default": true, "type": "boolean" }, "enableSuperuserAccess": { "default": false, "type": "boolean" }, "env": { "items": { "properties": { "name": { "type": "string" }, "value": { "type": "string" }, "valueFrom": { "properties": { "configMapKeyRef": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "fieldRef": { "properties": { "apiVersion": { "type": "string" }, "fieldPath": { "type": "string" } }, "required": [ "fieldPath" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "fileKeyRef": { "properties": { "key": { "type": "string" }, "optional": { "default": false, "type": "boolean" }, "path": { "type": "string" }, "volumeName": { "type": "string" } }, "required": [ "key", "path", "volumeName" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "resourceFieldRef": { "properties": { "containerName": { "type": "string" }, "divisor": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "resource": { "type": "string" } }, "required": [ "resource" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "secretKeyRef": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" } }, "type": "object" } }, "required": [ "name" ], "type": "object" }, "type": "array" }, "envFrom": { "items": { "properties": { "configMapRef": { "properties": { "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "prefix": { "type": "string" }, "secretRef": { "properties": { "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "type": "object", "x-kubernetes-map-type": "atomic" } }, "type": "object" }, "type": "array" }, "ephemeralVolumeSource": { "properties": { "volumeClaimTemplate": { "properties": { "metadata": { "type": "object" }, "spec": { "properties": { "accessModes": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "dataSource": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "dataSourceRef": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" }, "namespace": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object" }, "resources": { "properties": { "limits": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" }, "requests": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" } }, "type": "object" }, "selector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "storageClassName": { "type": "string" }, "volumeAttributesClassName": { "type": "string" }, "volumeMode": { "type": "string" }, "volumeName": { "type": "string" } }, "type": "object" } }, "required": [ "spec" ], "type": "object" } }, "type": "object" }, "ephemeralVolumesSizeLimit": { "properties": { "shm": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "temporaryData": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true } }, "type": "object" }, "externalClusters": { "items": { "properties": { "barmanObjectStore": { "properties": { "azureCredentials": { "properties": { "connectionString": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "inheritFromAzureAD": { "type": "boolean" }, "storageAccount": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "storageKey": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "storageSasToken": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" } }, "type": "object" }, "data": { "properties": { "additionalCommandArgs": { "items": { "type": "string" }, "type": "array" }, "compression": { "enum": [ "bzip2", "gzip", "snappy" ], "type": "string" }, "encryption": { "enum": [ "AES256", "aws:kms" ], "type": "string" }, "immediateCheckpoint": { "type": "boolean" }, "jobs": { "format": "int32", "minimum": 1, "type": "integer" } }, "type": "object" }, "destinationPath": { "minLength": 1, "type": "string" }, "endpointCA": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "endpointURL": { "type": "string" }, "googleCredentials": { "properties": { "applicationCredentials": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "gkeEnvironment": { "type": "boolean" } }, "type": "object" }, "historyTags": { "additionalProperties": { "type": "string" }, "type": "object" }, "s3Credentials": { "properties": { "accessKeyId": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "inheritFromIAMRole": { "type": "boolean" }, "region": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "secretAccessKey": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "sessionToken": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" } }, "type": "object" }, "serverName": { "type": "string" }, "tags": { "additionalProperties": { "type": "string" }, "type": "object" }, "wal": { "properties": { "archiveAdditionalCommandArgs": { "items": { "type": "string" }, "type": "array" }, "compression": { "enum": [ "bzip2", "gzip", "lz4", "snappy", "xz", "zstd" ], "type": "string" }, "encryption": { "enum": [ "AES256", "aws:kms" ], "type": "string" }, "maxParallel": { "minimum": 1, "type": "integer" }, "restoreAdditionalCommandArgs": { "items": { "type": "string" }, "type": "array" } }, "type": "object" } }, "required": [ "destinationPath" ], "type": "object" }, "connectionParameters": { "additionalProperties": { "type": "string" }, "type": "object" }, "name": { "type": "string" }, "password": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "plugin": { "properties": { "enabled": { "default": true, "type": "boolean" }, "isWALArchiver": { "default": false, "type": "boolean" }, "name": { "type": "string" }, "parameters": { "additionalProperties": { "type": "string" }, "type": "object" } }, "required": [ "name" ], "type": "object" }, "sslCert": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "sslKey": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "sslRootCert": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" } }, "required": [ "name" ], "type": "object" }, "type": "array" }, "failoverDelay": { "default": 0, "format": "int32", "type": "integer" }, "imageCatalogRef": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "major": { "type": "integer" }, "name": { "type": "string" } }, "required": [ "kind", "major", "name" ], "type": "object", "x-kubernetes-map-type": "atomic", "x-kubernetes-validations": [ { "message": "Only image catalogs are supported", "rule": "self.kind == 'ImageCatalog' || self.kind == 'ClusterImageCatalog'" }, { "message": "Only image catalogs are supported", "rule": "self.apiGroup == 'postgresql.cnpg.io'" } ] }, "imageName": { "type": "string" }, "imagePullPolicy": { "type": "string" }, "imagePullSecrets": { "items": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "type": "array" }, "inheritedMetadata": { "properties": { "annotations": { "additionalProperties": { "type": "string" }, "type": "object" }, "labels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object" }, "instances": { "default": 1, "minimum": 1, "type": "integer" }, "livenessProbeTimeout": { "format": "int32", "type": "integer" }, "logLevel": { "default": "info", "enum": [ "error", "warning", "info", "debug", "trace" ], "type": "string" }, "managed": { "properties": { "roles": { "items": { "properties": { "bypassrls": { "type": "boolean" }, "comment": { "type": "string" }, "connectionLimit": { "default": -1, "format": "int64", "type": "integer" }, "createdb": { "type": "boolean" }, "createrole": { "type": "boolean" }, "disablePassword": { "type": "boolean" }, "ensure": { "default": "present", "enum": [ "present", "absent" ], "type": "string" }, "inRoles": { "items": { "type": "string" }, "type": "array" }, "inherit": { "default": true, "type": "boolean" }, "login": { "type": "boolean" }, "name": { "type": "string" }, "passwordSecret": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "replication": { "type": "boolean" }, "superuser": { "type": "boolean" }, "validUntil": { "format": "date-time", "type": "string" } }, "required": [ "name" ], "type": "object" }, "type": "array" }, "services": { "properties": { "additional": { "items": { "properties": { "selectorType": { "enum": [ "rw", "r", "ro" ], "type": "string" }, "serviceTemplate": { "properties": { "metadata": { "properties": { "annotations": { "additionalProperties": { "type": "string" }, "type": "object" }, "labels": { "additionalProperties": { "type": "string" }, "type": "object" }, "name": { "type": "string" } }, "type": "object" }, "spec": { "properties": { "allocateLoadBalancerNodePorts": { "type": "boolean" }, "clusterIP": { "type": "string" }, "clusterIPs": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "externalIPs": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "externalName": { "type": "string" }, "externalTrafficPolicy": { "type": "string" }, "healthCheckNodePort": { "format": "int32", "type": "integer" }, "internalTrafficPolicy": { "type": "string" }, "ipFamilies": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "ipFamilyPolicy": { "type": "string" }, "loadBalancerClass": { "type": "string" }, "loadBalancerIP": { "type": "string" }, "loadBalancerSourceRanges": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "ports": { "items": { "properties": { "appProtocol": { "type": "string" }, "name": { "type": "string" }, "nodePort": { "format": "int32", "type": "integer" }, "port": { "format": "int32", "type": "integer" }, "protocol": { "default": "TCP", "type": "string" }, "targetPort": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true } }, "required": [ "port" ], "type": "object" }, "type": "array", "x-kubernetes-list-map-keys": [ "port", "protocol" ], "x-kubernetes-list-type": "map" }, "publishNotReadyAddresses": { "type": "boolean" }, "selector": { "additionalProperties": { "type": "string" }, "type": "object", "x-kubernetes-map-type": "atomic" }, "sessionAffinity": { "type": "string" }, "sessionAffinityConfig": { "properties": { "clientIP": { "properties": { "timeoutSeconds": { "format": "int32", "type": "integer" } }, "type": "object" } }, "type": "object" }, "trafficDistribution": { "type": "string" }, "type": { "type": "string" } }, "type": "object" } }, "type": "object" }, "updateStrategy": { "default": "patch", "enum": [ "patch", "replace" ], "type": "string" } }, "required": [ "selectorType", "serviceTemplate" ], "type": "object" }, "type": "array" }, "disabledDefaultServices": { "items": { "enum": [ "rw", "r", "ro" ], "type": "string" }, "type": "array" } }, "type": "object" } }, "type": "object" }, "maxSyncReplicas": { "default": 0, "minimum": 0, "type": "integer" }, "minSyncReplicas": { "default": 0, "minimum": 0, "type": "integer" }, "monitoring": { "properties": { "customQueriesConfigMap": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" }, "customQueriesSecret": { "items": { "properties": { "key": { "type": "string" }, "name": { "type": "string" } }, "required": [ "key", "name" ], "type": "object" }, "type": "array" }, "disableDefaultQueries": { "default": false, "type": "boolean" }, "enablePodMonitor": { "default": false, "type": "boolean" }, "metricsQueriesTTL": { "type": "string" }, "podMonitorMetricRelabelings": { "items": { "properties": { "action": { "default": "replace", "enum": [ "replace", "Replace", "keep", "Keep", "drop", "Drop", "hashmod", "HashMod", "labelmap", "LabelMap", "labeldrop", "LabelDrop", "labelkeep", "LabelKeep", "lowercase", "Lowercase", "uppercase", "Uppercase", "keepequal", "KeepEqual", "dropequal", "DropEqual" ], "type": "string" }, "modulus": { "format": "int64", "type": "integer" }, "regex": { "type": "string" }, "replacement": { "type": "string" }, "separator": { "type": "string" }, "sourceLabels": { "items": { "type": "string" }, "type": "array" }, "targetLabel": { "type": "string" } }, "type": "object" }, "type": "array" }, "podMonitorRelabelings": { "items": { "properties": { "action": { "default": "replace", "enum": [ "replace", "Replace", "keep", "Keep", "drop", "Drop", "hashmod", "HashMod", "labelmap", "LabelMap", "labeldrop", "LabelDrop", "labelkeep", "LabelKeep", "lowercase", "Lowercase", "uppercase", "Uppercase", "keepequal", "KeepEqual", "dropequal", "DropEqual" ], "type": "string" }, "modulus": { "format": "int64", "type": "integer" }, "regex": { "type": "string" }, "replacement": { "type": "string" }, "separator": { "type": "string" }, "sourceLabels": { "items": { "type": "string" }, "type": "array" }, "targetLabel": { "type": "string" } }, "type": "object" }, "type": "array" }, "tls": { "properties": { "enabled": { "default": false, "type": "boolean" } }, "type": "object" } }, "type": "object" }, "nodeMaintenanceWindow": { "properties": { "inProgress": { "default": false, "type": "boolean" }, "reusePVC": { "default": true, "type": "boolean" } }, "type": "object" }, "plugins": { "items": { "properties": { "enabled": { "default": true, "type": "boolean" }, "isWALArchiver": { "default": false, "type": "boolean" }, "name": { "type": "string" }, "parameters": { "additionalProperties": { "type": "string" }, "type": "object" } }, "required": [ "name" ], "type": "object" }, "type": "array" }, "podSecurityContext": { "properties": { "appArmorProfile": { "properties": { "localhostProfile": { "type": "string" }, "type": { "type": "string" } }, "required": [ "type" ], "type": "object" }, "fsGroup": { "format": "int64", "type": "integer" }, "fsGroupChangePolicy": { "type": "string" }, "runAsGroup": { "format": "int64", "type": "integer" }, "runAsNonRoot": { "type": "boolean" }, "runAsUser": { "format": "int64", "type": "integer" }, "seLinuxChangePolicy": { "type": "string" }, "seLinuxOptions": { "properties": { "level": { "type": "string" }, "role": { "type": "string" }, "type": { "type": "string" }, "user": { "type": "string" } }, "type": "object" }, "seccompProfile": { "properties": { "localhostProfile": { "type": "string" }, "type": { "type": "string" } }, "required": [ "type" ], "type": "object" }, "supplementalGroups": { "items": { "format": "int64", "type": "integer" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "supplementalGroupsPolicy": { "type": "string" }, "sysctls": { "items": { "properties": { "name": { "type": "string" }, "value": { "type": "string" } }, "required": [ "name", "value" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "windowsOptions": { "properties": { "gmsaCredentialSpec": { "type": "string" }, "gmsaCredentialSpecName": { "type": "string" }, "hostProcess": { "type": "boolean" }, "runAsUserName": { "type": "string" } }, "type": "object" } }, "type": "object" }, "postgresGID": { "default": 26, "format": "int64", "type": "integer" }, "postgresUID": { "default": 26, "format": "int64", "type": "integer" }, "postgresql": { "properties": { "enableAlterSystem": { "type": "boolean" }, "extensions": { "items": { "properties": { "dynamic_library_path": { "items": { "type": "string" }, "type": "array" }, "extension_control_path": { "items": { "type": "string" }, "type": "array" }, "image": { "properties": { "pullPolicy": { "type": "string" }, "reference": { "type": "string" } }, "type": "object", "x-kubernetes-validations": [ { "message": "An image reference is required", "rule": "has(self.reference)" } ] }, "ld_library_path": { "items": { "type": "string" }, "type": "array" }, "name": { "minLength": 1, "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$", "type": "string" } }, "required": [ "image", "name" ], "type": "object" }, "type": "array" }, "ldap": { "properties": { "bindAsAuth": { "properties": { "prefix": { "type": "string" }, "suffix": { "type": "string" } }, "type": "object" }, "bindSearchAuth": { "properties": { "baseDN": { "type": "string" }, "bindDN": { "type": "string" }, "bindPassword": { "properties": { "key": { "type": "string" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "required": [ "key" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "searchAttribute": { "type": "string" }, "searchFilter": { "type": "string" } }, "type": "object" }, "port": { "type": "integer" }, "scheme": { "enum": [ "ldap", "ldaps" ], "type": "string" }, "server": { "type": "string" }, "tls": { "type": "boolean" } }, "type": "object" }, "parameters": { "additionalProperties": { "type": "string" }, "type": "object" }, "pg_hba": { "items": { "type": "string" }, "type": "array" }, "pg_ident": { "items": { "type": "string" }, "type": "array" }, "promotionTimeout": { "format": "int32", "type": "integer" }, "shared_preload_libraries": { "items": { "type": "string" }, "type": "array" }, "syncReplicaElectionConstraint": { "properties": { "enabled": { "type": "boolean" }, "nodeLabelsAntiAffinity": { "items": { "type": "string" }, "type": "array" } }, "required": [ "enabled" ], "type": "object" }, "synchronous": { "properties": { "dataDurability": { "enum": [ "required", "preferred" ], "type": "string" }, "failoverQuorum": { "type": "boolean" }, "maxStandbyNamesFromCluster": { "type": "integer" }, "method": { "enum": [ "any", "first" ], "type": "string" }, "number": { "type": "integer", "x-kubernetes-validations": [ { "message": "The number of synchronous replicas should be greater than zero", "rule": "self > 0" } ] }, "standbyNamesPost": { "items": { "type": "string" }, "type": "array" }, "standbyNamesPre": { "items": { "type": "string" }, "type": "array" } }, "required": [ "method", "number" ], "type": "object", "x-kubernetes-validations": [ { "message": "dataDurability set to 'preferred' requires empty 'standbyNamesPre' and empty 'standbyNamesPost'", "rule": "self.dataDurability!='preferred' || ((!has(self.standbyNamesPre) || self.standbyNamesPre.size()==0) && (!has(self.standbyNamesPost) || self.standbyNamesPost.size()==0))" } ] } }, "type": "object" }, "primaryUpdateMethod": { "default": "restart", "enum": [ "switchover", "restart" ], "type": "string" }, "primaryUpdateStrategy": { "default": "unsupervised", "enum": [ "unsupervised", "supervised" ], "type": "string" }, "priorityClassName": { "type": "string" }, "probes": { "properties": { "liveness": { "properties": { "failureThreshold": { "format": "int32", "type": "integer" }, "initialDelaySeconds": { "format": "int32", "type": "integer" }, "isolationCheck": { "properties": { "connectionTimeout": { "default": 1000, "type": "integer" }, "enabled": { "default": true, "type": "boolean" }, "requestTimeout": { "default": 1000, "type": "integer" } }, "type": "object" }, "periodSeconds": { "format": "int32", "type": "integer" }, "successThreshold": { "format": "int32", "type": "integer" }, "terminationGracePeriodSeconds": { "format": "int64", "type": "integer" }, "timeoutSeconds": { "format": "int32", "type": "integer" } }, "type": "object" }, "readiness": { "properties": { "failureThreshold": { "format": "int32", "type": "integer" }, "initialDelaySeconds": { "format": "int32", "type": "integer" }, "maximumLag": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "periodSeconds": { "format": "int32", "type": "integer" }, "successThreshold": { "format": "int32", "type": "integer" }, "terminationGracePeriodSeconds": { "format": "int64", "type": "integer" }, "timeoutSeconds": { "format": "int32", "type": "integer" }, "type": { "enum": [ "pg_isready", "streaming", "query" ], "type": "string" } }, "type": "object" }, "startup": { "properties": { "failureThreshold": { "format": "int32", "type": "integer" }, "initialDelaySeconds": { "format": "int32", "type": "integer" }, "maximumLag": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "periodSeconds": { "format": "int32", "type": "integer" }, "successThreshold": { "format": "int32", "type": "integer" }, "terminationGracePeriodSeconds": { "format": "int64", "type": "integer" }, "timeoutSeconds": { "format": "int32", "type": "integer" }, "type": { "enum": [ "pg_isready", "streaming", "query" ], "type": "string" } }, "type": "object" } }, "type": "object" }, "projectedVolumeTemplate": { "properties": { "defaultMode": { "format": "int32", "type": "integer" }, "sources": { "items": { "properties": { "clusterTrustBundle": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "name": { "type": "string" }, "optional": { "type": "boolean" }, "path": { "type": "string" }, "signerName": { "type": "string" } }, "required": [ "path" ], "type": "object" }, "configMap": { "properties": { "items": { "items": { "properties": { "key": { "type": "string" }, "mode": { "format": "int32", "type": "integer" }, "path": { "type": "string" } }, "required": [ "key", "path" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "downwardAPI": { "properties": { "items": { "items": { "properties": { "fieldRef": { "properties": { "apiVersion": { "type": "string" }, "fieldPath": { "type": "string" } }, "required": [ "fieldPath" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "mode": { "format": "int32", "type": "integer" }, "path": { "type": "string" }, "resourceFieldRef": { "properties": { "containerName": { "type": "string" }, "divisor": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "resource": { "type": "string" } }, "required": [ "resource" ], "type": "object", "x-kubernetes-map-type": "atomic" } }, "required": [ "path" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object" }, "podCertificate": { "properties": { "certificateChainPath": { "type": "string" }, "credentialBundlePath": { "type": "string" }, "keyPath": { "type": "string" }, "keyType": { "type": "string" }, "maxExpirationSeconds": { "format": "int32", "type": "integer" }, "signerName": { "type": "string" } }, "required": [ "keyType", "signerName" ], "type": "object" }, "secret": { "properties": { "items": { "items": { "properties": { "key": { "type": "string" }, "mode": { "format": "int32", "type": "integer" }, "path": { "type": "string" } }, "required": [ "key", "path" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "name": { "default": "", "type": "string" }, "optional": { "type": "boolean" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "serviceAccountToken": { "properties": { "audience": { "type": "string" }, "expirationSeconds": { "format": "int64", "type": "integer" }, "path": { "type": "string" } }, "required": [ "path" ], "type": "object" } }, "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object" }, "replica": { "properties": { "enabled": { "type": "boolean" }, "minApplyDelay": { "type": "string" }, "primary": { "type": "string" }, "promotionToken": { "type": "string" }, "self": { "type": "string" }, "source": { "minLength": 1, "type": "string" } }, "required": [ "source" ], "type": "object" }, "replicationSlots": { "default": { "highAvailability": { "enabled": true } }, "properties": { "highAvailability": { "default": { "enabled": true }, "properties": { "enabled": { "default": true, "type": "boolean" }, "slotPrefix": { "default": "_cnpg_", "pattern": "^[0-9a-z_]*$", "type": "string" }, "synchronizeLogicalDecoding": { "type": "boolean" } }, "type": "object" }, "synchronizeReplicas": { "properties": { "enabled": { "default": true, "type": "boolean" }, "excludePatterns": { "items": { "type": "string" }, "type": "array" } }, "required": [ "enabled" ], "type": "object" }, "updateInterval": { "default": 30, "minimum": 1, "type": "integer" } }, "type": "object" }, "resources": { "properties": { "claims": { "items": { "properties": { "name": { "type": "string" }, "request": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "type": "array", "x-kubernetes-list-map-keys": [ "name" ], "x-kubernetes-list-type": "map" }, "limits": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" }, "requests": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" } }, "type": "object" }, "schedulerName": { "type": "string" }, "seccompProfile": { "properties": { "localhostProfile": { "type": "string" }, "type": { "type": "string" } }, "required": [ "type" ], "type": "object" }, "securityContext": { "properties": { "allowPrivilegeEscalation": { "type": "boolean" }, "appArmorProfile": { "properties": { "localhostProfile": { "type": "string" }, "type": { "type": "string" } }, "required": [ "type" ], "type": "object" }, "capabilities": { "properties": { "add": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "drop": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "type": "object" }, "privileged": { "type": "boolean" }, "procMount": { "type": "string" }, "readOnlyRootFilesystem": { "type": "boolean" }, "runAsGroup": { "format": "int64", "type": "integer" }, "runAsNonRoot": { "type": "boolean" }, "runAsUser": { "format": "int64", "type": "integer" }, "seLinuxOptions": { "properties": { "level": { "type": "string" }, "role": { "type": "string" }, "type": { "type": "string" }, "user": { "type": "string" } }, "type": "object" }, "seccompProfile": { "properties": { "localhostProfile": { "type": "string" }, "type": { "type": "string" } }, "required": [ "type" ], "type": "object" }, "windowsOptions": { "properties": { "gmsaCredentialSpec": { "type": "string" }, "gmsaCredentialSpecName": { "type": "string" }, "hostProcess": { "type": "boolean" }, "runAsUserName": { "type": "string" } }, "type": "object" } }, "type": "object" }, "serviceAccountTemplate": { "properties": { "metadata": { "properties": { "annotations": { "additionalProperties": { "type": "string" }, "type": "object" }, "labels": { "additionalProperties": { "type": "string" }, "type": "object" }, "name": { "type": "string" } }, "type": "object" } }, "required": [ "metadata" ], "type": "object" }, "smartShutdownTimeout": { "default": 180, "format": "int32", "type": "integer" }, "startDelay": { "default": 3600, "format": "int32", "type": "integer" }, "stopDelay": { "default": 1800, "format": "int32", "type": "integer" }, "storage": { "properties": { "pvcTemplate": { "properties": { "accessModes": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "dataSource": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "dataSourceRef": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" }, "namespace": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object" }, "resources": { "properties": { "limits": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" }, "requests": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" } }, "type": "object" }, "selector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "storageClassName": { "type": "string" }, "volumeAttributesClassName": { "type": "string" }, "volumeMode": { "type": "string" }, "volumeName": { "type": "string" } }, "type": "object" }, "resizeInUseVolumes": { "default": true, "type": "boolean" }, "size": { "type": "string" }, "storageClass": { "type": "string" } }, "type": "object" }, "superuserSecret": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "switchoverDelay": { "default": 3600, "format": "int32", "type": "integer" }, "tablespaces": { "items": { "properties": { "name": { "type": "string" }, "owner": { "properties": { "name": { "type": "string" } }, "type": "object" }, "storage": { "properties": { "pvcTemplate": { "properties": { "accessModes": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "dataSource": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "dataSourceRef": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" }, "namespace": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object" }, "resources": { "properties": { "limits": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" }, "requests": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" } }, "type": "object" }, "selector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "storageClassName": { "type": "string" }, "volumeAttributesClassName": { "type": "string" }, "volumeMode": { "type": "string" }, "volumeName": { "type": "string" } }, "type": "object" }, "resizeInUseVolumes": { "default": true, "type": "boolean" }, "size": { "type": "string" }, "storageClass": { "type": "string" } }, "type": "object" }, "temporary": { "default": false, "type": "boolean" } }, "required": [ "name", "storage" ], "type": "object" }, "type": "array" }, "topologySpreadConstraints": { "items": { "properties": { "labelSelector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "matchLabelKeys": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "maxSkew": { "format": "int32", "type": "integer" }, "minDomains": { "format": "int32", "type": "integer" }, "nodeAffinityPolicy": { "type": "string" }, "nodeTaintsPolicy": { "type": "string" }, "topologyKey": { "type": "string" }, "whenUnsatisfiable": { "type": "string" } }, "required": [ "maxSkew", "topologyKey", "whenUnsatisfiable" ], "type": "object" }, "type": "array" }, "walStorage": { "properties": { "pvcTemplate": { "properties": { "accessModes": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "dataSource": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object", "x-kubernetes-map-type": "atomic" }, "dataSourceRef": { "properties": { "apiGroup": { "type": "string" }, "kind": { "type": "string" }, "name": { "type": "string" }, "namespace": { "type": "string" } }, "required": [ "kind", "name" ], "type": "object" }, "resources": { "properties": { "limits": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" }, "requests": { "additionalProperties": { "anyOf": [ { "type": "integer" }, { "type": "string" } ], "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "x-kubernetes-int-or-string": true }, "type": "object" } }, "type": "object" }, "selector": { "properties": { "matchExpressions": { "items": { "properties": { "key": { "type": "string" }, "operator": { "type": "string" }, "values": { "items": { "type": "string" }, "type": "array", "x-kubernetes-list-type": "atomic" } }, "required": [ "key", "operator" ], "type": "object" }, "type": "array", "x-kubernetes-list-type": "atomic" }, "matchLabels": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object", "x-kubernetes-map-type": "atomic" }, "storageClassName": { "type": "string" }, "volumeAttributesClassName": { "type": "string" }, "volumeMode": { "type": "string" }, "volumeName": { "type": "string" } }, "type": "object" }, "resizeInUseVolumes": { "default": true, "type": "boolean" }, "size": { "type": "string" }, "storageClass": { "type": "string" } }, "type": "object" } }, "required": [ "instances" ], "type": "object", "x-kubernetes-validations": [ { "message": "imageName and imageCatalogRef are mutually exclusive", "rule": "!(has(self.imageCatalogRef) && has(self.imageName))" } ] }, "status": { "properties": { "availableArchitectures": { "items": { "properties": { "goArch": { "type": "string" }, "hash": { "type": "string" } }, "required": [ "goArch", "hash" ], "type": "object" }, "type": "array" }, "certificates": { "properties": { "clientCASecret": { "type": "string" }, "expirations": { "additionalProperties": { "type": "string" }, "type": "object" }, "replicationTLSSecret": { "type": "string" }, "serverAltDNSNames": { "items": { "type": "string" }, "type": "array" }, "serverCASecret": { "type": "string" }, "serverTLSSecret": { "type": "string" } }, "type": "object" }, "cloudNativePGCommitHash": { "type": "string" }, "cloudNativePGOperatorHash": { "type": "string" }, "conditions": { "items": { "properties": { "lastTransitionTime": { "format": "date-time", "type": "string" }, "message": { "maxLength": 32768, "type": "string" }, "observedGeneration": { "format": "int64", "minimum": 0, "type": "integer" }, "reason": { "maxLength": 1024, "minLength": 1, "pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$", "type": "string" }, "status": { "enum": [ "True", "False", "Unknown" ], "type": "string" }, "type": { "maxLength": 316, "pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$", "type": "string" } }, "required": [ "lastTransitionTime", "message", "reason", "status", "type" ], "type": "object" }, "type": "array" }, "configMapResourceVersion": { "properties": { "metrics": { "additionalProperties": { "type": "string" }, "type": "object" } }, "type": "object" }, "currentPrimary": { "type": "string" }, "currentPrimaryFailingSinceTimestamp": { "type": "string" }, "currentPrimaryTimestamp": { "type": "string" }, "danglingPVC": { "items": { "type": "string" }, "type": "array" }, "demotionToken": { "type": "string" }, "firstRecoverabilityPoint": { "type": "string" }, "firstRecoverabilityPointByMethod": { "additionalProperties": { "format": "date-time", "type": "string" }, "type": "object" }, "healthyPVC": { "items": { "type": "string" }, "type": "array" }, "image": { "type": "string" }, "initializingPVC": { "items": { "type": "string" }, "type": "array" }, "instanceNames": { "items": { "type": "string" }, "type": "array" }, "instances": { "type": "integer" }, "instancesReportedState": { "additionalProperties": { "properties": { "ip": { "type": "string" }, "isPrimary": { "type": "boolean" }, "timeLineID": { "type": "integer" } }, "required": [ "isPrimary" ], "type": "object" }, "type": "object" }, "instancesStatus": { "additionalProperties": { "items": { "type": "string" }, "type": "array" }, "type": "object" }, "jobCount": { "format": "int32", "type": "integer" }, "lastFailedBackup": { "type": "string" }, "lastPromotionToken": { "type": "string" }, "lastSuccessfulBackup": { "type": "string" }, "lastSuccessfulBackupByMethod": { "additionalProperties": { "format": "date-time", "type": "string" }, "type": "object" }, "latestGeneratedNode": { "type": "integer" }, "managedRolesStatus": { "properties": { "byStatus": { "additionalProperties": { "items": { "type": "string" }, "type": "array" }, "type": "object" }, "cannotReconcile": { "additionalProperties": { "items": { "type": "string" }, "type": "array" }, "type": "object" }, "passwordStatus": { "additionalProperties": { "properties": { "resourceVersion": { "type": "string" }, "transactionID": { "format": "int64", "type": "integer" } }, "type": "object" }, "type": "object" } }, "type": "object" }, "onlineUpdateEnabled": { "type": "boolean" }, "pgDataImageInfo": { "properties": { "image": { "type": "string" }, "majorVersion": { "type": "integer" } }, "required": [ "image", "majorVersion" ], "type": "object" }, "phase": { "type": "string" }, "phaseReason": { "type": "string" }, "pluginStatus": { "items": { "properties": { "backupCapabilities": { "items": { "type": "string" }, "type": "array" }, "capabilities": { "items": { "type": "string" }, "type": "array" }, "name": { "type": "string" }, "operatorCapabilities": { "items": { "type": "string" }, "type": "array" }, "restoreJobHookCapabilities": { "items": { "type": "string" }, "type": "array" }, "status": { "type": "string" }, "version": { "type": "string" }, "walCapabilities": { "items": { "type": "string" }, "type": "array" } }, "required": [ "name", "version" ], "type": "object" }, "type": "array" }, "poolerIntegrations": { "properties": { "pgBouncerIntegration": { "properties": { "secrets": { "items": { "type": "string" }, "type": "array" } }, "type": "object" } }, "type": "object" }, "pvcCount": { "format": "int32", "type": "integer" }, "readService": { "type": "string" }, "readyInstances": { "type": "integer" }, "resizingPVC": { "items": { "type": "string" }, "type": "array" }, "secretsResourceVersion": { "properties": { "applicationSecretVersion": { "type": "string" }, "barmanEndpointCA": { "type": "string" }, "caSecretVersion": { "type": "string" }, "clientCaSecretVersion": { "type": "string" }, "externalClusterSecretVersion": { "additionalProperties": { "type": "string" }, "type": "object" }, "managedRoleSecretVersion": { "additionalProperties": { "type": "string" }, "type": "object" }, "metrics": { "additionalProperties": { "type": "string" }, "type": "object" }, "replicationSecretVersion": { "type": "string" }, "serverCaSecretVersion": { "type": "string" }, "serverSecretVersion": { "type": "string" }, "superuserSecretVersion": { "type": "string" } }, "type": "object" }, "switchReplicaClusterStatus": { "properties": { "inProgress": { "type": "boolean" } }, "type": "object" }, "systemID": { "type": "string" }, "tablespacesStatus": { "items": { "properties": { "error": { "type": "string" }, "name": { "type": "string" }, "owner": { "type": "string" }, "state": { "type": "string" } }, "required": [ "name", "state" ], "type": "object" }, "type": "array" }, "targetPrimary": { "type": "string" }, "targetPrimaryTimestamp": { "type": "string" }, "timelineID": { "type": "integer" }, "topology": { "properties": { "instances": { "additionalProperties": { "additionalProperties": { "type": "string" }, "type": "object" }, "type": "object" }, "nodesUsed": { "format": "int32", "type": "integer" }, "successfullyExtracted": { "type": "boolean" } }, "type": "object" }, "unusablePVC": { "items": { "type": "string" }, "type": "array" }, "writeService": { "type": "string" } }, "type": "object" } }, "required": [ "metadata", "spec" ], "type": "object" }