[SCM] PostGIS branch master updated. 3.7.0beta1-286-g1fce5eae5f
git at osgeo.org
git at osgeo.org
Sun Aug 9 13:50:08 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 1fce5eae5fa48ee513913b0bce7c6ac6eee000b5 (commit)
via a17c85d5b9885b24f518cfbee86f6fd7c4ffb163 (commit)
from d7e291c966e15441130306b7c4a9c02b4800818d (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 1fce5eae5fa48ee513913b0bce7c6ac6eee000b5
Merge: d7e291c966 a17c85d5b9
Author: Darafei Praliaskouski <komzpa at gmail.com>
Date: Sun Aug 9 13:50:06 2026 -0700
Merge pull request 'ci: match Jenkins matrix children to parent build' (!700) from Komzpa/postgis:fix/master-jenkins-matrix-parent-20260810 into master
## Summary
- report only Jenkins matrix children belonging to the current parent build
- add a regression for stale child results from an earlier parent build
## Validation
- `python3 utils/docs/tests/test_ci_status.py`
- `git diff --check`
The live status page attributed failed PG14/PG15 children from parent #5208 to current master parent #5212. This retains the current PG18 running child and excludes the stale failures.
Reviewed-on: https://gitea.osgeo.org/postgis/postgis/pulls/700
commit a17c85d5b9885b24f518cfbee86f6fd7c4ffb163
Author: Darafei Praliaskouski <me at komzpa.net>
Date: Mon Aug 10 00:43:24 2026 +0400
ci: match Jenkins matrix children to parent build
diff --git a/utils/docs/ci_status/report.py b/utils/docs/ci_status/report.py
index 172adbd89d..7f4376d429 100644
--- a/utils/docs/ci_status/report.py
+++ b/utils/docs/ci_status/report.py
@@ -1058,7 +1058,7 @@ def jenkins_matrix_configuration_label(configuration, selected):
return configuration.get("name") or configuration.get("url") or "configuration"
-def jenkins_matrix_details(job_url, timeout):
+def jenkins_matrix_details(job_url, timeout, parent_build_number):
try:
configurations = jenkins_matrix_configurations(job_url, timeout)
except RECOVERABLE_PROVIDER_ERRORS:
@@ -1075,6 +1075,8 @@ def jenkins_matrix_details(job_url, timeout):
}
for configuration in configurations:
build = configuration.get("lastBuild") or {}
+ if build.get("number") != parent_build_number:
+ continue
status = normalize_jenkins_status(build)
if status == SUCCESS:
continue
@@ -1195,7 +1197,7 @@ def jenkins_check(check, branch, timeout):
message=f"build {current.get('number')}",
)
if result["status"] != SUCCESS:
- details = jenkins_matrix_details(job_url, timeout)
+ details = jenkins_matrix_details(job_url, timeout, current.get("number"))
if details:
result["message"] = f"{result['message']}; {details['message']}"
if details.get("url"):
diff --git a/utils/docs/tests/test_ci_status.py b/utils/docs/tests/test_ci_status.py
index 4249b539ca..6683ebb0f8 100644
--- a/utils/docs/tests/test_ci_status.py
+++ b/utils/docs/tests/test_ci_status.py
@@ -415,6 +415,58 @@ class CIStatusTest(unittest.TestCase):
self.assertEqual("build 7808", result["message"])
self.assertEqual("https://ci.example.test/job/PostGIS_Make_Dist/7808/", result["url"])
+ def test_jenkins_matrix_ignores_another_parent_build(self):
+ check_config = {
+ "name": "Jenkins / Debbie main",
+ "provider": "jenkins",
+ "required": True,
+ "job_url": "https://ci.example.test/job/PostGIS_trunk/",
+ }
+ branch = {
+ "name": "master",
+ "label": "master",
+ "version_or_trunk": "trunk",
+ }
+ current = {
+ "number": 5212,
+ "building": True,
+ "result": None,
+ "url": "https://ci.example.test/job/PostGIS_trunk/5212/",
+ }
+ matrix = [
+ {
+ "name": "PG_VER=14,OS_BUILD=64",
+ "lastBuild": {
+ "number": 5208,
+ "result": "FAILURE",
+ "url": "https://ci.example.test/job/PostGIS_trunk/PG_VER=14/5208/",
+ },
+ },
+ {
+ "name": "PG_VER=18,OS_BUILD=64",
+ "lastBuild": {
+ "number": 5212,
+ "building": True,
+ "result": None,
+ "url": "https://ci.example.test/job/PostGIS_trunk/PG_VER=18/5212/",
+ },
+ },
+ ]
+
+ with (
+ mock.patch.object(CI_STATUS, "jenkins_queued_check", return_value=None),
+ mock.patch.object(CI_STATUS, "jenkins_builds", return_value=[current]),
+ mock.patch.object(CI_STATUS, "jenkins_matrix_configurations", return_value=matrix),
+ ):
+ result = CI_STATUS.jenkins_check(check_config, branch, timeout=5)
+
+ self.assertEqual(CI_STATUS.IN_PROGRESS, result["status"])
+ self.assertEqual("build 5212; running: PG18", result["message"])
+ self.assertEqual(
+ "https://ci.example.test/job/PostGIS_trunk/PG_VER=18/5212/",
+ result["url"],
+ )
+
def test_jenkins_queue_prefers_current_branch_revision(self):
check_config = {
"name": "Jenkins / Berrie",
-----------------------------------------------------------------------
Summary of changes:
utils/docs/ci_status/report.py | 6 +++--
utils/docs/tests/test_ci_status.py | 52 ++++++++++++++++++++++++++++++++++++++
2 files changed, 56 insertions(+), 2 deletions(-)
hooks/post-receive
--
PostGIS
More information about the postgis-tickets
mailing list