Mohammed Naser | 7270870 | 2024-06-20 00:07:56 -0400 | [diff] [blame] | 1 | import sys |
| 2 | import glob |
| 3 | import yaml |
| 4 | |
| 5 | |
| 6 | def main(): |
| 7 | passed = True |
| 8 | |
| 9 | for file in glob.glob("zuul.d/container-images/*.yaml"): |
| 10 | with open(file, "r") as file: |
| 11 | configs = yaml.safe_load(file) |
| 12 | |
| 13 | for config in configs: |
| 14 | if "job" in config: |
| 15 | job = config["job"] |
| 16 | |
Mohammed Naser | 62c0743 | 2025-01-15 17:08:19 -0500 | [diff] [blame^] | 17 | # Check if build jobs are missing 'atmosphere-buildset-registry' dependency |
| 18 | if "build-container-image-" in job["name"]: |
Mohammed Naser | 7270870 | 2024-06-20 00:07:56 -0400 | [diff] [blame] | 19 | deps = job.get("dependencies", []) |
| 20 | if not any( |
| 21 | dep.get("name") == "atmosphere-buildset-registry" |
| 22 | for dep in deps |
| 23 | ): |
| 24 | print( |
| 25 | f"Job '{job['name']}' is missing 'atmosphere-buildset-registry' dependency." |
| 26 | ) |
| 27 | passed = False |
| 28 | |
| 29 | if passed: |
Mohammed Naser | 62c0743 | 2025-01-15 17:08:19 -0500 | [diff] [blame^] | 30 | print("All build jobs have 'atmosphere-buildset-registry' dependency.") |
Mohammed Naser | 7270870 | 2024-06-20 00:07:56 -0400 | [diff] [blame] | 31 | else: |
| 32 | print("Jobs missing 'atmosphere-buildset-registry' dependency.") |
| 33 | sys.exit(1) |
| 34 | |
| 35 | |
| 36 | if __name__ == "__main__": |
| 37 | main() |