From 453442cdf50b1b8576c6c3826114ba6206662fa6 Mon Sep 17 00:00:00 2001 From: Horimoto Yasuhiro Date: Thu, 2 Oct 2025 16:32:12 +0900 Subject: [PATCH 1/5] alpine: add support for PostgreSQL 18 --- alpine/18-slim/Dockerfile | 39 +++++++++++++++++++++++++++++++++++++++ alpine/18/Dockerfile | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 alpine/18-slim/Dockerfile create mode 100644 alpine/18/Dockerfile diff --git a/alpine/18-slim/Dockerfile b/alpine/18-slim/Dockerfile new file mode 100644 index 0000000..3b0971e --- /dev/null +++ b/alpine/18-slim/Dockerfile @@ -0,0 +1,39 @@ +FROM postgres:18-alpine + +ENV PGROONGA_VERSION=4.0.4 \ + GROONGA_VERSION=15.1.7 + +COPY alpine/build.sh / +RUN \ + apk add --no-cache --virtual=.build-dependencies \ + apache-arrow-dev \ + build-base \ + clang19-dev \ + cmake \ + gettext-dev \ + linux-headers \ + llvm19 \ + lz4-dev \ + msgpack-c-dev \ + rapidjson-dev \ + ruby \ + samurai \ + xsimd-dev \ + xxhash-dev \ + zlib-dev \ + zstd-dev && \ + /build.sh ${PGROONGA_VERSION} ${GROONGA_VERSION} && \ + rm -f build.sh && \ + apk del .build-dependencies && \ + apk add --no-cache \ + libarrow \ + libgomp \ + libxxhash \ + msgpack-c \ + zlib \ + zstd && \ + rm -rf \ + /usr/local/include \ + /usr/local/lib/mecab/dic/naist-jdic/naist-jdic.csv \ + /usr/local/share/groonga/html \ + /usr/local/share/man diff --git a/alpine/18/Dockerfile b/alpine/18/Dockerfile new file mode 100644 index 0000000..02d8f7f --- /dev/null +++ b/alpine/18/Dockerfile @@ -0,0 +1,34 @@ +FROM postgres:18-alpine + +ENV PGROONGA_VERSION=4.0.4 \ + GROONGA_VERSION=15.1.7 + +COPY alpine/build.sh / +RUN \ + apk add --no-cache --virtual=.build-dependencies \ + apache-arrow-dev \ + build-base \ + clang19-dev \ + cmake \ + gettext-dev \ + linux-headers \ + llvm19 \ + lz4-dev \ + msgpack-c-dev \ + rapidjson-dev \ + ruby \ + samurai \ + xsimd-dev \ + xxhash-dev \ + zlib-dev \ + zstd-dev && \ + /build.sh ${PGROONGA_VERSION} ${GROONGA_VERSION} && \ + rm -f build.sh && \ + apk del .build-dependencies && \ + apk add --no-cache \ + libarrow \ + libgomp \ + libxxhash \ + msgpack-c \ + zlib \ + zstd From 586facb063379c7ca9561589a5e70c3d62664ed0 Mon Sep 17 00:00:00 2001 From: Horimoto Yasuhiro Date: Thu, 2 Oct 2025 16:34:05 +0900 Subject: [PATCH 2/5] ci: add support for PostgreSQL 18 --- .github/workflows/build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7becdb9..3305110 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -37,11 +37,13 @@ jobs: fail-fast: false matrix: id: + - "alpine-18" - "alpine-17" - "alpine-16" - "alpine-15" - "alpine-14" - "alpine-13" + - "alpine-18-slim" - "alpine-17-slim" - "alpine-16-slim" - "alpine-15-slim" From 430b1986f80e45c130b41a8483317c078500689d Mon Sep 17 00:00:00 2001 From: Horimoto Yasuhiro Date: Thu, 2 Oct 2025 16:41:51 +0900 Subject: [PATCH 3/5] test alpine: add support for PostgreSQL 18 --- .github/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5864016..3754501 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -23,11 +23,13 @@ jobs: fail-fast: false matrix: id: + - "alpine-18" - "alpine-17" - "alpine-16" - "alpine-15" - "alpine-14" - "alpine-13" + - "alpine-18-slim" - "alpine-17-slim" - "alpine-16-slim" - "alpine-15-slim" From ce3a4b5a5eabdd92c931a2808cd2d6ee606abcad Mon Sep 17 00:00:00 2001 From: Horimoto Yasuhiro Date: Thu, 2 Oct 2025 17:05:31 +0900 Subject: [PATCH 4/5] update the latest target --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3305110..c120078 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -78,7 +78,7 @@ jobs: esac tag="groonga/pgroonga:${version}-${{ matrix.id }}" tags="${tag}" - if [ ${{ matrix.id }} = "alpine-17" -a "${version}" = "latest" ]; then + if [ ${{ matrix.id }} = "alpine-18" -a "${version}" = "latest" ]; then tags="${tags},groonga/pgroonga:latest" fi echo "DOCKERFILE=${distribution}/${variant}/Dockerfile" >> ${GITHUB_ENV} From 86065bf23a02da5b3132c2878b872743094ad332 Mon Sep 17 00:00:00 2001 From: Horimoto Yasuhiro Date: Thu, 2 Oct 2025 17:24:16 +0900 Subject: [PATCH 5/5] Setting PGDATA explicitly --- .github/workflows/build.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c120078..367dc9f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -153,6 +153,7 @@ jobs: docker run \ --name pgroonga \ --detach \ + --env PGDATA=/var/lib/postgresql/${postgresql_version}/docker \ --env POSTGRES_DB=pgroonga \ --env POSTGRES_PASSWORD=${PGPASSWORD} \ --env POSTGRES_USER=pgroonga \ @@ -183,7 +184,7 @@ jobs: log_path=pgroonga-$(echo ${platform} | cut -d/ -f2).log docker exec pgroonga \ cp \ - /var/lib/postgresql/data/pgroonga.log \ + /var/lib/postgresql/${postgresql_version}/docker/pgroonga.log \ /host/${log_path} sudo chown ${USER}: ${log_path} docker kill --signal TERM pgroonga @@ -203,7 +204,7 @@ jobs: - name: Collect logs if: always() run: | - docker exec pgroonga cp /var/lib/postgresql/data/pgroonga.log /host/ || : + docker exec pgroonga cp /var/lib/postgresql/${postgresql_version}/docker/pgroonga.log /host/ || : sudo chown ${USER}: pgroonga.log || : - name: Upload logs if: always()