[stable/zed] Improve CI reliability (#1413)
Signed-off-by: Mohammed Naser mnaser@vexxhost.com
diff --git a/build/lint-jobs.py b/build/lint-jobs.py
new file mode 100644
index 0000000..3edfe12
--- /dev/null
+++ b/build/lint-jobs.py
@@ -0,0 +1,42 @@
+import sys
+import glob
+import yaml
+
+
+def main():
+ passed = True
+
+ for file in glob.glob("zuul.d/container-images/*.yaml"):
+ with open(file, "r") as file:
+ configs = yaml.safe_load(file)
+
+ for config in configs:
+ if "job" in config:
+ job = config["job"]
+
+ # Check if build or upload jobs are missing 'atmosphere-buildset-registry' dependency
+ if (
+ "build-container-image-" in job["name"]
+ or "upload-container-image-" in job["name"]
+ ):
+ deps = job.get("dependencies", [])
+ if not any(
+ dep.get("name") == "atmosphere-buildset-registry"
+ for dep in deps
+ ):
+ print(
+ f"Job '{job['name']}' is missing 'atmosphere-buildset-registry' dependency."
+ )
+ passed = False
+
+ if passed:
+ print(
+ "All build and upload jobs have 'atmosphere-buildset-registry' dependency."
+ )
+ else:
+ print("Jobs missing 'atmosphere-buildset-registry' dependency.")
+ sys.exit(1)
+
+
+if __name__ == "__main__":
+ main()