diff --git a/scripts/pipeline.py b/scripts/pipeline.py index 0847da15f..02c53735b 100644 --- a/scripts/pipeline.py +++ b/scripts/pipeline.py @@ -405,7 +405,8 @@ def check_consistency( elif released is not None and not (v_names & released): print(f" {v_label}: {v_ok}/{v_total} (no release pack, served by the installer)") else: - print(f" {v_label}: {v_ok}/{v_total} (no separate pack)") + print(f" {v_label}: MISSING pack: verify judged {v_ok}/{v_total} " + "but the build wrote no pack for it") all_ok = False status = "OK" if all_ok else "FAILED" diff --git a/tests/test_release_packs.py b/tests/test_release_packs.py index 4e52ed197..4c357393a 100644 --- a/tests/test_release_packs.py +++ b/tests/test_release_packs.py @@ -167,9 +167,13 @@ class APlatformWithoutAPackFailsNoCheck(unittest.TestCase): import pipeline verify = self.VERIFY + "Batocera: 3/3 OK [md5]\n" - with contextlib.redirect_stdout(io.StringIO()): + with contextlib.redirect_stdout(io.StringIO()) as out: self.assertFalse(pipeline.check_consistency( verify, self.PACK, pipeline.release_pack_keys(PLATFORMS))) + # The failing line says it fails: "(no separate pack)" read like + # the installer-only note above it. + self.assertIn("Batocera: MISSING pack: verify judged 3/3 but the build wrote no pack for it", + out.getvalue()) def test_the_pipeline_passes_the_release_platforms(self): source = (REPO_ROOT / "scripts" / "pipeline.py").read_text(encoding="utf-8")