summaryrefslogtreecommitdiff
path: root/.gitlab-ci
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2022-10-26 10:43:07 -0400
committerXavier Claessens <xavier.claessens@collabora.com>2022-10-26 11:55:56 -0400
commit9ba01dc7fcc690be39543da4e9f1917dc9f2df4f (patch)
treef21bbf182f08749ccd6905eca063b6943572e97f /.gitlab-ci
parentb8a0ffa1b95a70b29388195b7ba44d8b39d2401e (diff)
downloadglib-9ba01dc7fcc690be39543da4e9f1917dc9f2df4f.tar.gz
ci: Fix check for missing install tag
Better check the installation plan json file instead of parsing logs.
Diffstat (limited to '.gitlab-ci')
-rwxr-xr-x.gitlab-ci/check-missing-install-tag.py19
1 files changed, 11 insertions, 8 deletions
diff --git a/.gitlab-ci/check-missing-install-tag.py b/.gitlab-ci/check-missing-install-tag.py
index dd122e8e5..1bf89a9c9 100755
--- a/.gitlab-ci/check-missing-install-tag.py
+++ b/.gitlab-ci/check-missing-install-tag.py
@@ -6,6 +6,7 @@ missing installation tag.
"""
import argparse
+import json
from pathlib import Path
@@ -14,14 +15,16 @@ def main():
parser.add_argument("builddir", type=Path)
args = parser.parse_args()
- logfile = args.builddir / "meson-logs" / "meson-log.txt"
- with logfile.open(encoding="utf-8") as f:
- if "Failed to guess install tag" in f.read():
- print(
- f"Some files are missing install_tag, see {logfile} for details." # no-qa
- )
- return 1
- return 0
+ success = True
+ path = args.builddir / "meson-info" / "intro-install_plan.json"
+ with path.open(encoding="utf-8") as f:
+ install_plan = json.load(f)
+ for target in install_plan.values():
+ for info in target.values():
+ if not info["tag"]:
+ print('Missing install_tag for', info["destination"])
+ success = False
+ return 0 if success else 1
if __name__ == "__main__":