diff --git a/circleci/images/Makefile b/circleci/images/Makefile index 6b91a55..f7242d6 100644 --- a/circleci/images/Makefile +++ b/circleci/images/Makefile @@ -16,8 +16,11 @@ PG_UPGRADE_TESTER_VERSION=$(shell echo ${PG_VERSIONS}|tr ' ' '-'|sed 's/~//g') STYLE_CHECKER_TOOLS_VERSION=0.8.33 -# Upgrade tests for the PG major versions from PG_VERSIONS file -CITUS_UPGRADE_PG_VERSIONS=$(shell head PG_VERSIONS|cut -c 6-|tr '\n' ' ') +# Upgrade tests for the PG major versions from PG_VERSIONS file. +# PG19 is excluded because no Citus release supports it yet; filter it +# out by name so reordering PG_VERSIONS does not silently change which +# major is dropped. +CITUS_UPGRADE_PG_VERSIONS=$(shell grep -v '^PG19=' PG_VERSIONS|cut -c 6-|tr '\n' ' ') # 12.1.10 is the latest release of Citus 12 when the test is expanded to cover Citus 12 CITUS_UPGRADE_VERSIONS_16=v12.1.12 # Latest minor version of Citus 13 diff --git a/circleci/images/PG_VERSIONS b/circleci/images/PG_VERSIONS index 98c38dc..debcadf 100644 --- a/circleci/images/PG_VERSIONS +++ b/circleci/images/PG_VERSIONS @@ -1,3 +1,4 @@ -PG16=16.13 -PG17=17.9 -PG18=18.3 +PG16=16.14 +PG17=17.10 +PG18=18.4 +PG19=19~beta2 diff --git a/circleci/images/extbuilder/Dockerfile b/circleci/images/extbuilder/Dockerfile index d703a28..ade1bcd 100644 --- a/circleci/images/extbuilder/Dockerfile +++ b/circleci/images/extbuilder/Dockerfile @@ -48,7 +48,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +# The "19" component carries the PG19 beta packages, which are not in "main" yet. +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main 19" >> /etc/apt/sources.list.d/postgresql.list echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/exttester/Dockerfile b/circleci/images/exttester/Dockerfile index 4af0f75..2ee0369 100644 --- a/circleci/images/exttester/Dockerfile +++ b/circleci/images/exttester/Dockerfile @@ -153,7 +153,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +# The "19" component carries the PG19 beta packages, which are not in "main" yet. +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main 19" >> /etc/apt/sources.list.d/postgresql.list echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update @@ -168,8 +169,12 @@ apt-get install -y --no-install-recommends --allow-downgrades \ postgresql-${PG_MAJOR}=${pgdg_version} \ postgresql-client-${PG_MAJOR}=${pgdg_version} \ postgresql-${PG_MAJOR}-dbgsym=${pgdg_version} \ - postgresql-server-dev-${PG_MAJOR}=${pgdg_version} \ - postgresql-${PG_MAJOR}-wal2json + postgresql-server-dev-${PG_MAJOR}=${pgdg_version} + +# wal2json is not always published for pre-release majors (e.g. PG19 beta), so +# install it best-effort to avoid breaking the build before the package lands. +apt-get install -y --no-install-recommends postgresql-${PG_MAJOR}-wal2json \ + || echo "WARNING: postgresql-${PG_MAJOR}-wal2json not available for PG${PG_MAJOR}, continuing without it" apt-get install -y --no-install-recommends -t bookworm libdbd-pg-perl diff --git a/circleci/images/failtester/Dockerfile b/circleci/images/failtester/Dockerfile index ac68c87..2b76ef3 100644 --- a/circleci/images/failtester/Dockerfile +++ b/circleci/images/failtester/Dockerfile @@ -54,7 +54,8 @@ RUN <<'EOF' # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +# The "19" component carries the PG19 beta packages, which are not in "main" yet. +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main 19" >> /etc/apt/sources.list.d/postgresql.list echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update diff --git a/circleci/images/pgupgradetester/Dockerfile b/circleci/images/pgupgradetester/Dockerfile index 9e0237d..dbc908d 100644 --- a/circleci/images/pgupgradetester/Dockerfile +++ b/circleci/images/pgupgradetester/Dockerfile @@ -55,7 +55,8 @@ set -eux # install key and repositories curl -sf https://www.postgresql.org/media/keys/ACCC4CF8.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1 apt-key add - -echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >> /etc/apt/sources.list.d/postgresql.list +# The "19" component carries the PG19 beta packages, which are not in "main" yet. +echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main 19" >> /etc/apt/sources.list.d/postgresql.list echo "deb https://apt-archive.postgresql.org/pub/repos/apt bookworm-pgdg-archive main" >> /etc/apt/sources.list.d/postgresql.list apt-get update