--- apiVersion: postgresql.cnpg.io/v1 kind: Cluster metadata: name: woodpecker-postgres namespace: woodpecker spec: affinity: podAntiAffinityType: preferred bootstrap: initdb: database: woodpecker encoding: UTF8 localeCType: C localeCollate: C owner: woodpecker secret: name: woodpecker-postgres-credentials enablePDB: true enableSuperuserAccess: false failoverDelay: 0 imageName: ghcr.io/cloudnative-pg/postgresql:18.1-system-trixie instances: 3 logLevel: info maxSyncReplicas: 0 minSyncReplicas: 0 monitoring: customQueriesConfigMap: - key: queries name: cnpg-default-monitoring disableDefaultQueries: false enablePodMonitor: false postgresql: parameters: archive_mode: "on" archive_timeout: 5min dynamic_shared_memory_type: posix effective_cache_size: 512MB full_page_writes: "on" log_destination: csvlog log_directory: /controller/log log_filename: postgres log_rotation_age: "0" log_rotation_size: "0" log_truncate_on_rotation: "false" logging_collector: "on" max_connections: "200" max_parallel_workers: "32" max_replication_slots: "32" max_worker_processes: "32" shared_buffers: 128MB shared_memory_type: mmap shared_preload_libraries: "" ssl_max_protocol_version: TLSv1.3 ssl_min_protocol_version: TLSv1.3 wal_keep_size: 512MB wal_level: logical wal_log_hints: "on" wal_receiver_timeout: 5s wal_sender_timeout: 5s syncReplicaElectionConstraint: enabled: false primaryUpdateMethod: restart primaryUpdateStrategy: unsupervised probes: liveness: isolationCheck: connectionTimeout: 1000 enabled: true requestTimeout: 1000 replicationSlots: highAvailability: enabled: true slotPrefix: _cnpg_ synchronizeReplicas: enabled: true updateInterval: 30 resources: limits: cpu: "1" memory: 1Gi requests: cpu: 50m memory: 128Mi smartShutdownTimeout: 180 startDelay: 3600 stopDelay: 1800 storage: resizeInUseVolumes: true size: 20Gi storageClass: cephrbd-fast-delete switchoverDelay: 3600