From 1e9eb19ff7d04597cda0a62cbece3791127d60a7 Mon Sep 17 00:00:00 2001 From: Johan Lorenzo Date: Mon, 25 May 2026 12:03:38 +0200 Subject: [PATCH] fix(lando): generate file-specific version_bump scopes (bug 2037926) --- src/mozilla_taskgraph/worker_types.py | 10 +++++++++- test/test_worker_types.py | 3 ++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/mozilla_taskgraph/worker_types.py b/src/mozilla_taskgraph/worker_types.py index 500acc4..b2f4d5a 100644 --- a/src/mozilla_taskgraph/worker_types.py +++ b/src/mozilla_taskgraph/worker_types.py @@ -335,6 +335,7 @@ def build_lando_payload(config, task, task_def): if worker.get("force-dry-run"): task_def["payload"]["dry_run"] = True + bump_files: list[str] = [] for action in worker["actions"]: if info := action.get("android-l10n-import"): android_l10n_import_info = dash_to_underscore(info) @@ -384,6 +385,7 @@ def build_lando_payload(config, task, task_def): bump_info = {} bump_info["next_version"] = release_config["next_version"] bump_info["files"] = info["bump-files"] + bump_files = info["bump-files"] task_def["payload"]["version_bump_info"] = bump_info actions.append("version_bump") @@ -423,7 +425,13 @@ def build_lando_payload(config, task, task_def): scopes = set(task_def.get("scopes", [])) scopes.add(f"project:releng:lando:repo:{worker['lando-repo']}") - scopes.update([f"project:releng:lando:action:{action}" for action in actions]) + scopes.update( + f"project:releng:lando:action:{a}" for a in actions if a != "version_bump" + ) + if "version_bump" in actions: + scopes.update( + f"project:releng:lando:action:version_bump:file:{f}" for f in bump_files + ) for matrix_room in worker.get("matrix-rooms", []): task_def.setdefault("routes", []) diff --git a/test/test_worker_types.py b/test/test_worker_types.py index e809a7e..4a5471e 100644 --- a/test/test_worker_types.py +++ b/test/test_worker_types.py @@ -750,7 +750,8 @@ def test_lando_version_bump(build_payload): }, }, "scopes": [ - "project:releng:lando:action:version_bump", + "project:releng:lando:action:version_bump:file:another/file.txt", + "project:releng:lando:action:version_bump:file:foo/bar/a.txt", "project:releng:lando:repo:testrepo", ], "tags": {"worker-implementation": "scriptworker"},