Skip to content
This repository was archived by the owner on Dec 5, 2025. It is now read-only.
Open
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
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ RUN apt-get --no-install-recommends install -y comerr-dev \
manpages-dev \
libkrb5-dev \
libsasl2-dev libldap2-dev libssl-dev \
postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 \
postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 postgresql-18 \
jq \
openssl curl \
vim \
Expand Down
6 changes: 5 additions & 1 deletion docker/granular/configs.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,10 @@ def backups_storage(version=None):
storage_path = '/backup-storage/pg15/granular'
elif [16, 0] <= version < [17, 0]:
storage_path = '/backup-storage/pg16/granular'
elif version >= [17, 0]:
elif [17, 0] <= version < [18, 0]:
storage_path = '/backup-storage/pg17/granular'
elif version >= [18, 0]:
storage_path = '/backup-storage/pg18/granular'
return storage_path


Expand Down Expand Up @@ -176,6 +178,8 @@ def get_pgsql_bin_path(version):
return "/usr/lib/postgresql/16/bin"
elif major_version == 17:
return "/usr/lib/postgresql/17/bin"
elif major_version == 18:
return "/usr/lib/postgresql/18/bin"


def is_external_pg():
Expand Down
6 changes: 5 additions & 1 deletion docker/postgres/aws-s3-backup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,11 @@ function main() {

log "version of pgsql server is: ${version}"

if python -c "import sys; sys.exit(0 if float("${version}") >= 17.0 else 1)"; then
if python -c "import sys; sys.exit(0 if float("${version}") >= 18.0 else 1)"; then
log "Using pgsql 18 bins for pg_basebackup"
PG_BASEBACKUP="/usr/lib/postgresql/18/bin/pg_basebackup"
BACKUP_NAME="pg_backup_$(basename ${BACKUP_ID}).tar.gz"
elif python -c "import sys; sys.exit(0 if 17.0 <= float("${version}") < 18.0 else 1)"; then
log "Using pgsql 17 bins for pg_basebackup"
PG_BASEBACKUP="/usr/lib/postgresql/17/bin/pg_basebackup"
BACKUP_NAME="pg_backup_$(basename ${BACKUP_ID}).tar.gz"
Expand Down
6 changes: 5 additions & 1 deletion docker/postgres/postgres_backup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,11 @@ function main() {
version="$(PGPASSWORD=$POSTGRES_PASSWORD psql -h "${POSTGRES_HOST}" -p "${POSTGRES_PORT}" -U "${POSTGRES_USER}" -d postgres -c "SHOW SERVER_VERSION;" -tA | egrep -o '[0-9]{1,}\.[0-9]{1,}' | awk 'END{print $1}')"
REPLICATION_USER="replicator"
log "version of pgsql server is: ${version}"
if python -c "import sys; sys.exit(0 if float("${version}") >= 17.0 else 1)"; then
if python -c "import sys; sys.exit(0 if float("${version}") >= 18.0 else 1)"; then
log "Using pgsql 18 bins for pg_basebackup"
PG_BASEBACKUP="/usr/lib/postgresql/18/bin/pg_basebackup"
BACKUP_NAME="pg_backup_$(basename ${BACKUP_DESTINATION_DIRECTORY}).tar.gz"
elif python -c "import sys; sys.exit(0 if 17.0 <= float("${version}") < 18.0 else 1)"; then
log "Using pgsql 17 bins for pg_basebackup"
PG_BASEBACKUP="/usr/lib/postgresql/17/bin/pg_basebackup"
BACKUP_NAME="pg_backup_$(basename ${BACKUP_DESTINATION_DIRECTORY}).tar.gz"
Expand Down
4 changes: 3 additions & 1 deletion docker/postgres/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,10 @@ def get_version_of_pgsql_server():
return "pg15"
elif [16, 0] <= version_as_list < [17, 0]:
return "pg16"
elif version_as_list >= [17, 0]:
elif [17, 0] <= version_as_list < [18, 0]:
return "pg17"
elif version_as_list >= [18, 0]:
return "pg18"
return ""


Expand Down
Loading