[SCM] PostGIS branch master updated. 3.7.0beta1-129-gf40b32c82f
git at osgeo.org
git at osgeo.org
Tue Jul 28 13:13:15 PDT 2026
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "PostGIS".
The branch, master has been updated
via f40b32c82fe127910724c5d19ebee6e44c402eb4 (commit)
via 6126d9167ed4998698fdfdb202f732a5b688c559 (commit)
from 5852e7ad5043d7cdb6367ad31a85b3b847b6f9ee (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit f40b32c82fe127910724c5d19ebee6e44c402eb4
Merge: 5852e7ad50 6126d9167e
Author: Darafei Praliaskouski <komzpa at gmail.com>
Date: Tue Jul 28 13:13:09 2026 -0700
Merge pull request 'Add Woodpecker arm64 QEMU tier' (!615) from Komzpa/postgis:ci/woodpecker-arm64-tier into master
## Summary
Add a Woodpecker `linux/arm64` QEMU tier so Woodpecker has a 64-bit ARM counterpart to Jenkins Berrie64.
The workflow is intentionally gated to pushes on `master`/`stable-*` and `cron`, not pull requests, because arm64 emulation is expensive. It carries the `qemu: "true"` scheduler label so it only lands on agents advertising foreign-architecture support.
This mostly fills the platform-parity gap rather than adding a new hostile ABI tier: unlike armhf it exercises the aarch64 64-bit ABI, and unlike s390x it stays little-endian.
Reviewed-on: https://gitea.osgeo.org/postgis/postgis/pulls/615
commit 6126d9167ed4998698fdfdb202f732a5b688c559
Author: Darafei Praliaskouski <me at komzpa.net>
Date: Tue Jul 28 23:24:29 2026 +0400
ci: add Woodpecker arm64 QEMU tier
diff --git a/.woodpecker/arm64.yml b/.woodpecker/arm64.yml
new file mode 100644
index 0000000000..a37119ad97
--- /dev/null
+++ b/.woodpecker/arm64.yml
@@ -0,0 +1,83 @@
+labels:
+ platform: linux/amd64
+ qemu: "true"
+when:
+ - event: push
+ branch:
+ - master
+ - stable-*
+ - event: cron
+
+# This workflow gives Woodpecker a 64-bit ARM row matching Jenkins Berrie64.
+# It catches little beyond that platform parity: unlike armhf it exercises the
+# aarch64 64-bit ABI, and unlike s390x it stays little-endian. Keep it off pull
+# requests because arm64 emulation is expensive.
+#
+# The image is pinned to the linux/arm64/v8 manifest digest. A tag-only pull
+# from an amd64 Docker backend can resolve an amd64 variant and fail before QEMU
+# is involved, so do not replace this with arm64v8/debian:trixie-slim alone.
+variables:
+ arm64-image: &arm64-image arm64v8/debian:trixie-slim at sha256:8b5033c95ca60cdffb0e0f4c446e5f714e82d8960a9ef4153c0eaf13e988b0ea
+ prepare-debian: &prepare-debian |
+ export DEBIAN_FRONTEND=noninteractive
+ apt-get update
+ apt-get install -y --no-install-recommends \
+ autoconf automake libtool build-essential ca-certificates pkg-config \
+ bison flex \
+ postgresql postgresql-server-dev-all \
+ libcunit1-dev libgeos-dev libproj-dev libgdal-dev libjson-c-dev \
+ libprotobuf-c-dev protobuf-c-compiler libxml2-dev gettext zlib1g-dev
+ rm -rf /var/lib/apt/lists/*
+ arm64-env: &arm64-env |
+ export SRCDIR=$${CI_WORKSPACE}
+ export BUILDDIR=$${SRCDIR}/build/arm64-qemu
+ export PG_MAJOR=$$(pg_config --version | awk '{print $$2}' | cut -d. -f1)
+ export PATH=/usr/lib/postgresql/$${PG_MAJOR}/bin:$${PATH}
+ export PGROOT=$$(mktemp -d)
+ export PGDATA=$${PGROOT}/data
+ export PGHOST=$${PGROOT}/socket
+ export PGUSER=postgres
+ export PGDATABASE=postgres
+ uname -m
+ dpkg-architecture -qDEB_HOST_GNU_TYPE
+ pg_config --version
+ start-postgresql: &start-postgresql |
+ chown postgres:postgres "$${PGROOT}"
+ runuser -u postgres -- mkdir "$${PGDATA}" "$${PGHOST}"
+ runuser -u postgres -- initdb -D "$${PGDATA}" -A trust --no-sync
+ runuser -u postgres -- pg_ctl -D "$${PGDATA}" \
+ -l "$${PGROOT}/postgresql.log" \
+ -o "-F -k $${PGHOST} -c synchronous_commit=off -c full_page_writes=off" \
+ -w start
+ trap 'runuser -u postgres -- pg_ctl -D "$${PGDATA}" -m fast -w stop || true' EXIT
+ psql -c 'select version()' template1
+
+clone:
+ git:
+ image: woodpeckerci/plugin-git
+ settings:
+ depth: 50
+ partial: false
+
+steps:
+ build-regress:
+ image: *arm64-image
+ pull: true
+ commands:
+ - uname -m | grep -E '^aarch64$'
+ - *prepare-debian
+ - *arm64-env
+ - *start-postgresql
+ - ./autogen.sh
+ - mkdir -p "$${BUILDDIR}"
+ - cd "$${BUILDDIR}"
+ - >-
+ "$${SRCDIR}/configure"
+ --with-raster
+ --without-topology
+ --without-sfcgal
+ --without-interrupt-tests
+ - make -j1
+ - make -C liblwgeom check-unit
+ - make install
+ - make -C regress check RUNTESTFLAGS="-v --extension"
diff --git a/NEWS b/NEWS
index d22b4a48c8..34c494e701 100644
--- a/NEWS
+++ b/NEWS
@@ -33,6 +33,8 @@ These are only changes since 3.7.0beta1.
* Enhancements *
+ - Add Woodpecker linux/arm64 build and regression coverage under
+ QEMU to match the Jenkins Berrie64 platform (Darafei Praliaskouski)
PostGIS 3.7.0beta1
2026/07/20
-----------------------------------------------------------------------
Summary of changes:
.woodpecker/arm64.yml | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++
NEWS | 2 ++
2 files changed, 85 insertions(+)
create mode 100644 .woodpecker/arm64.yml
hooks/post-receive
--
PostGIS
More information about the postgis-tickets
mailing list