diff --git a/.github/workflows/container.yaml b/.github/workflows/container.yaml index 21a4519..95e4618 100644 --- a/.github/workflows/container.yaml +++ b/.github/workflows/container.yaml @@ -23,24 +23,24 @@ jobs: container: arch: amd64 pgrx_pg_version: pg15 - pg_version: "15.13" - os_version: alpine3.21.3 + pg_version: "15.14" + os_version: alpine3.22.2 - triple: x86_64-unknown-linux-musl gh: runner: ubuntu-22.04 container: arch: amd64 pgrx_pg_version: pg16 - pg_version: "16.9" - os_version: alpine3.21.3 + pg_version: "16.10" + os_version: alpine3.22.2 - triple: x86_64-unknown-linux-musl gh: runner: ubuntu-22.04 container: arch: amd64 pgrx_pg_version: pg17 - pg_version: "17.5" - os_version: alpine3.21.3 + pg_version: "17.6" + os_version: alpine3.22.2 - triple: x86_64-unknown-linux-musl gh: runner: ubuntu-22.04 @@ -48,7 +48,7 @@ jobs: arch: amd64 pgrx_pg_version: pg18 pg_version: "18.0" - os_version: alpine3.21.3 + os_version: alpine3.22.2 steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - uses: docker/setup-qemu-action@v3 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 06ee586..a5eb117 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -32,15 +32,15 @@ jobs: - pgrx: pg-version: pg15 pg: - version: "15.13" + version: "15.14" - pgrx: pg-version: pg16 pg: - version: "16.9" + version: "16.10" - pgrx: pg-version: pg17 pg: - version: "17.5" + version: "17.6" - pgrx: pg-version: pg18 pg: @@ -69,15 +69,15 @@ jobs: - pgrx: pg-version: pg15 pg: - version: "15.13" + version: "15.14" - pgrx: pg-version: pg16 pg: - version: "16.9" + version: "16.10" - pgrx: pg-version: pg17 pg: - version: "17.5" + version: "17.6" - pgrx: pg-version: pg18 pg: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 039121e..c889b42 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -25,17 +25,17 @@ jobs: arch: x86_64 pgrx: pgrx-pg-version: pg15 - pkg-pg-version: 15.13 + pkg-pg-version: 15.14 - rpm: arch: x86_64 pgrx: pgrx-pg-version: pg16 - pkg-pg-version: 16.9 + pkg-pg-version: 16.10 - rpm: arch: x86_64 pgrx: pgrx-pg-version: pg17 - pkg-pg-version: 17.5 + pkg-pg-version: 17.6 - rpm: arch: x86_64 pgrx: @@ -63,17 +63,17 @@ jobs: arch: x86_64 pgrx: pgrx-pg-version: pg15 - pkg-pg-version: 15.13 + pkg-pg-version: 15.14 - rpm: arch: x86_64 pgrx: pgrx-pg-version: pg16 - pkg-pg-version: 16.9 + pkg-pg-version: 16.10 - rpm: arch: x86_64 pgrx: pgrx-pg-version: pg17 - pkg-pg-version: 17.5 + pkg-pg-version: 17.6 - rpm: arch: x86_64 pgrx: diff --git a/infra/docker/pg_idkit-pg15.14-alpine3.22.2-amd64.Dockerfile b/infra/docker/pg_idkit-pg15.14-alpine3.22.2-amd64.Dockerfile new file mode 100644 index 0000000..ac0ea4f --- /dev/null +++ b/infra/docker/pg_idkit-pg15.14-alpine3.22.2-amd64.Dockerfile @@ -0,0 +1,44 @@ +# +# NOTE: you must have the base packaging layer built for this image to work +# you can build this from scratch with `just build-base-pkg-image` +# +# `cargo pgrx init` is run in the base-pkg, so it contains the versions of pg that will be used. +# +FROM ghcr.io/vadosware/pg_idkit/base-pkg:0.1.x-alpine3.22.2-amd64 AS builder + +ARG USER +ENV USER=$USER + +ARG PGRX_PG_VERSION=pg15 +ENV PGRX_PG_VERSION=$PGRX_PG_VERSION + +ARG PKG_PG_VERSION=15.14 +ENV PKG_PG_VERSION=$PKG_PG_VERSION + +ENV PKG_TARBALL_SUFFIX="-musl" + +# Re-run the build with the latest code +WORKDIR /pg_idkit +COPY . . +RUN RUSTFLAGS="-Ctarget-feature=-crt-static" just build package + +FROM postgres:15.14-alpine3.22@sha256:64583b3cb4f2010277bdd9749456de78e5c36f8956466ba14b0b96922e510950 + +ARG PGRX_PG_VERSION=pg15 +ARG PGIDKIT_VERSION +ARG PGIDKIT_REVISION + +# Install packaged pg_idkit for system postgres +COPY --from=builder /pg_idkit/pg_idkit-*-musl.tar.gz /tmp +RUN tar -C /usr/local --strip-components=1 -xvf /tmp/pg_idkit-*-musl.tar.gz + +LABEL org.opencontainers.image.authors="Victor Adossi " +LABEL org.opencontainers.image.description="A distribution of the base postgres image, with pg_idkit pre-installed." +LABEL org.opencontainers.image.documentation="https://github.com/VADOSWARE/pg_idkit#readme" +LABEL org.opencontainers.image.licenses="Apache-2.0" +LABEL org.opencontainers.image.revision=$PGIDKIT_REVISION +LABEL org.opencontainers.image.source="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.title="Postgres + pg_idkit" +LABEL org.opencontainers.image.url="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.vendor="VADOSWARE" +LABEL org.opencontainers.image.version=v${PGIDKIT_VERSION} diff --git a/infra/docker/pg_idkit-pg16.10-alpine3.22.2-amd64.Dockerfile b/infra/docker/pg_idkit-pg16.10-alpine3.22.2-amd64.Dockerfile new file mode 100644 index 0000000..238a6f4 --- /dev/null +++ b/infra/docker/pg_idkit-pg16.10-alpine3.22.2-amd64.Dockerfile @@ -0,0 +1,44 @@ +# +# NOTE: you must have the base packaging layer built for this image to work +# you can build this from scratch with `just build-base-pkg-image` +# +FROM ghcr.io/vadosware/pg_idkit/base-pkg:0.1.x-alpine3.22.2-amd64 AS builder + +ARG USER +ENV USER=$USER + +ARG PGRX_PG_VERSION=pg16 +ENV PGRX_PG_VERSION=$PGRX_PG_VERSION + +ARG PKG_PG_VERSION=16.10 +ENV PKG_PG_VERSION=$PKG_PG_VERSION + +ENV PKG_TARBALL_SUFFIX="-musl" + +# Re-run the build with the latest code +WORKDIR /pg_idkit +COPY . . +RUN RUSTFLAGS="-Ctarget-feature=-crt-static" just build package + +FROM postgres:16.10-alpine3.22@sha256:029660641a0cfc575b14f336ba448fb8a75fd595d42e1fa316b9fb4378742297 + +ARG PGRX_PG_VERSION=pg16 +ENV PGRX_PG_VERSION=$PGRX_PG_VERSION + +# Install packaged pg_idkit for system postgres +COPY --from=builder /pg_idkit/pg_idkit-*-musl.tar.gz /tmp +RUN tar -C /usr/local --strip-components=1 -xvf /tmp/pg_idkit-*-musl.tar.gz + +ARG PGIDKIT_VERSION +ARG PGIDKIT_REVISION + +LABEL org.opencontainers.image.authors="Victor Adossi " +LABEL org.opencontainers.image.description="A distribution of the base postgres image, with pg_idkit pre-installed." +LABEL org.opencontainers.image.documentation="https://github.com/VADOSWARE/pg_idkit#readme" +LABEL org.opencontainers.image.licenses="Apache-2.0" +LABEL org.opencontainers.image.revision=${PGIDKIT_REVISION} +LABEL org.opencontainers.image.source="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.title="Postgres + pg_idkit" +LABEL org.opencontainers.image.url="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.vendor="VADOSWARE" +LABEL org.opencontainers.image.version=v${PGIDKIT_VERSION} diff --git a/infra/docker/pg_idkit-pg17.6-alpine3.22.2-amd64.Dockerfile b/infra/docker/pg_idkit-pg17.6-alpine3.22.2-amd64.Dockerfile new file mode 100644 index 0000000..a04851a --- /dev/null +++ b/infra/docker/pg_idkit-pg17.6-alpine3.22.2-amd64.Dockerfile @@ -0,0 +1,47 @@ +# +# NOTE: you must have the base packaging layer built for this image to work +# you can build this from scratch with `just build-base-pkg-image` +# +FROM ghcr.io/vadosware/pg_idkit/base-pkg:0.1.x-alpine3.22.2-amd64 AS builder + +ARG USER +ENV USER=$USER + +ARG PGRX_PG_VERSION=pg17 +ENV PGRX_PG_VERSION=$PGRX_PG_VERSION + +ARG PKG_PG_VERSION=17.6 +ENV PKG_PG_VERSION=$PKG_PG_VERSION + +ARG CARGO_FEATURES=pg17 +ENV CARGO_FEATURES=$CARGO_FEATURES + +ENV PKG_TARBALL_SUFFIX="-musl" + +# Re-run the build with the latest code +WORKDIR /pg_idkit +COPY . . +RUN RUSTFLAGS="-Ctarget-feature=-crt-static" just build package + +FROM postgres:17.6-alpine3.22@sha256:ef257d85f76e48da1c64832459b59fcaba1a4dac97bf5d7450c77753542eee94 + +ARG PGRX_PG_VERSION=pg17 +ENV PGRX_PG_VERSION=$PGRX_PG_VERSION + +# Install packaged pg_idkit for system postgres +COPY --from=builder /pg_idkit/pg_idkit-*-musl.tar.gz /tmp +RUN tar -C /usr/local --strip-components=1 -xvf /tmp/pg_idkit-*-musl.tar.gz + +ARG PGIDKIT_VERSION +ARG PGIDKIT_REVISION + +LABEL org.opencontainers.image.authors="Victor Adossi " +LABEL org.opencontainers.image.description="A distribution of the base postgres image, with pg_idkit pre-installed." +LABEL org.opencontainers.image.documentation="https://github.com/VADOSWARE/pg_idkit#readme" +LABEL org.opencontainers.image.licenses="Apache-2.0" +LABEL org.opencontainers.image.revision=${PGIDKIT_REVISION} +LABEL org.opencontainers.image.source="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.title="Postgres + pg_idkit" +LABEL org.opencontainers.image.url="https://github.com/VADOSWARE/pg_idkit" +LABEL org.opencontainers.image.vendor="VADOSWARE" +LABEL org.opencontainers.image.version=v${PGIDKIT_VERSION}