roller: Support matching branches When triggering off a branch name that appears in both the submodule and the top-level project, and when match_triggering_branch is set, roll into that branch on the top-level project. Also remove some earlier code that was trying to do something similar. Bug: b/509549918 Change-Id: I9d74e3f420213b02875df823f4b67e0e4bdf674e Reviewed-on: https://pigweed-review.googlesource.com/c/infra/recipes/+/409294
diff --git a/recipe_modules/checkout/api.py b/recipe_modules/checkout/api.py index 741e078..f92dac2 100644 --- a/recipe_modules/checkout/api.py +++ b/recipe_modules/checkout/api.py
@@ -737,6 +737,7 @@ ctx: CheckoutContext, remote: str = None, branch: str = None, + fallback_to_head: bool = True, ) -> tuple[Change, ...]: bb_input: build_pb.Build.Input = self.m.buildbucket.build.input results: list[Change] = [] @@ -791,7 +792,7 @@ ) ) - if not results: + if not results and fallback_to_head: # If not triggered by a gitiles_poller gitiles_commit may be # empty. In that case treat the most recent commit on the # remote as the triggering commit. This is a good assumption @@ -1743,12 +1744,17 @@ return remote1 in equivalent_remotes.get(remote2, ()) - def triggering_changes(self, options: Options): + def triggering_changes(self, options: Options) -> tuple[Change]: ctx = CheckoutContext(self.m) ctx.options = options ctx.changes = [] - return self._change_data(ctx, options.remote, options.branch) + return self._change_data( + ctx, + remote=options.remote, + branch=options.branch, + fallback_to_head=False, + ) def __call__( self,
diff --git a/recipe_modules/checkout/tests/git.expected/not_in_gerrit.json b/recipe_modules/checkout/tests/git.expected/not_in_gerrit.json index c62f88d..cf60d75 100644 --- a/recipe_modules/checkout/tests/git.expected/not_in_gerrit.json +++ b/recipe_modules/checkout/tests/git.expected/not_in_gerrit.json
@@ -1457,64 +1457,6 @@ "name": "change data" }, { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://pigweed.googlesource.com/pigweed/pigweed", - "main" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "change data.git ls-remote", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@stdout@h3ll0\trefs/heads/main@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-query", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"params\": {\"q\": \"commit:h3ll0\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "change data.number", - "timeout": 30, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@[@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": \"1234\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"branch\": \"main\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"project\": \"pigweed\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@]@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"q\": \"commit:h3ll0\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@" - ] - }, - { "cmd": [], "name": "change data.changes", "~followup_annotations": [ @@ -1522,14 +1464,6 @@ ] }, { - "cmd": [], - "name": "change data.changes.pigweed:1234", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_SUMMARY_TEXT@Change(number=1234, remote='https://pigweed.googlesource.com/pigweed/pigweed', ref='h3ll0', rebase=False, project=None, branch='main', gerrit_name='pigweed', submitted=True, patchset=None, path=None, base=None, base_type=None, is_merge=False, commit_message='', topic=None, current_revision=None, primary=False, submit_requirements={}, uploader=None)@@@" - ] - }, - { "name": "$result" } ] \ No newline at end of file
diff --git a/recipe_modules/checkout/tests/git.expected/other.json b/recipe_modules/checkout/tests/git.expected/other.json index f53127e..9ca9d0f 100644 --- a/recipe_modules/checkout/tests/git.expected/other.json +++ b/recipe_modules/checkout/tests/git.expected/other.json
@@ -1463,64 +1463,6 @@ "name": "change data" }, { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://pigweed.googlesource.com/pigweed/pigweed", - "main" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "change data.git ls-remote", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@stdout@h3ll0\trefs/heads/main@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-query", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"params\": {\"q\": \"commit:h3ll0\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "change data.number", - "timeout": 30, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@[@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": \"1234\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"branch\": \"main\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"project\": \"pigweed\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@]@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"q\": \"commit:h3ll0\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@" - ] - }, - { "cmd": [], "name": "change data.changes", "~followup_annotations": [ @@ -1528,14 +1470,6 @@ ] }, { - "cmd": [], - "name": "change data.changes.pigweed:1234", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_SUMMARY_TEXT@Change(number=1234, remote='https://pigweed.googlesource.com/pigweed/pigweed', ref='h3ll0', rebase=False, project=None, branch='main', gerrit_name='pigweed', submitted=True, patchset=None, path=None, base=None, base_type=None, is_merge=False, commit_message='', topic=None, current_revision=None, primary=False, submit_requirements={}, uploader=None)@@@" - ] - }, - { "name": "$result" } ] \ No newline at end of file
diff --git a/recipe_modules/submodule_roll/api.py b/recipe_modules/submodule_roll/api.py index 581cafe..4427e5e 100644 --- a/recipe_modules/submodule_roll/api.py +++ b/recipe_modules/submodule_roll/api.py
@@ -207,45 +207,22 @@ ) ) - is_release_branch = False if not submodule.branch: - if ( - submodule_entry.release_branch_prefix - and checkout.options.branch - and checkout.options.branch.startswith( - submodule_entry.release_branch_prefix - ) - ): - submodule.branch = checkout.options.branch - is_release_branch = True - else: - try: - submodule.branch = gitmodules.get(section, 'branch') - except configparser.NoOptionError: - submodule.branch = 'main' + try: + submodule.branch = gitmodules.get(section, 'branch') + except configparser.NoOptionError: + submodule.branch = 'main' submodule.remote = self.m.git_roll_util.normalize_remote( gitmodules.get(section, 'url'), checkout.options.remote, ) - try: - new_revision = self.m.git_roll_util.resolve_new_revision( - submodule.remote, - submodule.branch, - checkout.remotes_equivalent, - ) - except self.m.step.StepFailure: - if is_release_branch: - self.m.step.empty( - 'skip missing release branch', - step_text=( - f'Branch {submodule.branch} not found in ' - f'{submodule.remote}' - ), - ) - return [] - raise + new_revision = self.m.git_roll_util.resolve_new_revision( + submodule.remote, + submodule.branch, + checkout.remotes_equivalent, + ) change = self.update_pin( checkout,
diff --git a/recipe_modules/submodule_roll/submodule.proto b/recipe_modules/submodule_roll/submodule.proto index 2a7c8d7..5d01475 100644 --- a/recipe_modules/submodule_roll/submodule.proto +++ b/recipe_modules/submodule_roll/submodule.proto
@@ -29,8 +29,4 @@ // Timeout for 'git submodule update'. Default: 10 minutes. int32 timeout_sec = 4; - - // Prefix for release branches. If set, builds on release branches will be - // skipped if the branch doesn't exist in the downstream repo. - string release_branch_prefix = 5; }
diff --git a/recipe_modules/submodule_roll/test_api.py b/recipe_modules/submodule_roll/test_api.py index 8709c1b..4014ef3 100644 --- a/recipe_modules/submodule_roll/test_api.py +++ b/recipe_modules/submodule_roll/test_api.py
@@ -33,14 +33,8 @@ path: str, name: str | None = None, branch: str | None = None, - release_branch_prefix: str | None = None, ) -> SubmoduleEntry: - return SubmoduleEntry( - path=path, - name=name or path, - branch=branch or '', - release_branch_prefix=release_branch_prefix or '', - ) + return SubmoduleEntry(path=path, name=name or path, branch=branch or '') def gitmodules( self,
diff --git a/recipe_modules/submodule_roll/tests/full.expected/release_branch.json b/recipe_modules/submodule_roll/tests/full.expected/release_branch.json deleted file mode 100644 index d9693cd..0000000 --- a/recipe_modules/submodule_roll/tests/full.expected/release_branch.json +++ /dev/null
@@ -1,572 +0,0 @@ -[ - { - "cmd": [], - "name": "a1" - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "[START_DIR]/checkout/.gitmodules", - "/path/to/tmp/" - ], - "infra_step": true, - "name": "a1.read .gitmodules", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@.gitmodules@[submodule \"a1\"]@@@", - "@@@STEP_LOG_LINE@.gitmodules@\tpath = a1@@@", - "@@@STEP_LOG_LINE@.gitmodules@\turl = sso://foo/a1@@@", - "@@@STEP_LOG_END@.gitmodules@@@" - ] - }, - { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://foo.googlesource.com/a1", - "release_20260430" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git ls-remote", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@stdout@h3ll0\trefs/heads/release_20260430@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "update", - "--init", - "--jobs", - "4", - "[START_DIR]/checkout/a1" - ], - "cwd": "[START_DIR]/checkout", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git submodule update", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "log", - "--max-count=1", - "--pretty=format:%H" - ], - "cwd": "[START_DIR]/checkout/a1", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.get old revision", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@1111111111111111111111111111111111111111@@@" - ] - }, - { - "cmd": [], - "name": "a1.ensure infra/tools/luci/gitiles/${platform}", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "a1.ensure infra/tools/luci/gitiles/${platform}.get packages", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "RECIPE_MODULE[fuchsia::gitiles]/resources/cipd.ensure", - "/path/to/tmp/" - ], - "infra_step": true, - "name": "a1.ensure infra/tools/luci/gitiles/${platform}.get packages.read ensure file", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@cipd.ensure@infra/tools/luci/gitiles/${platform} version:pinned-version@@@", - "@@@STEP_LOG_END@cipd.ensure@@@" - ] - }, - { - "cmd": [], - "name": "a1.ensure infra/tools/luci/gitiles/${platform}.install infra/tools/luci/gitiles", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[START_DIR]/cipd_tool/infra/tools/luci/gitiles/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07" - ], - "infra_step": true, - "name": "a1.ensure infra/tools/luci/gitiles/${platform}.install infra/tools/luci/gitiles.ensure package directory", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "cipd", - "ensure", - "-root", - "[START_DIR]/cipd_tool/infra/tools/luci/gitiles/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07", - "-ensure-file", - "infra/tools/luci/gitiles/${platform} version:pinned-version", - "-max-threads", - "0", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "a1.ensure infra/tools/luci/gitiles/${platform}.install infra/tools/luci/gitiles.ensure_installed", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/gitiles/resolved-platform\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gitiles/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gitiles", - "log", - "-json-output", - "/path/to/tmp/json", - "-limit", - "500", - "https://foo.googlesource.com/a1", - "1111111111111111111111111111111111111111..h3ll0" - ], - "infra_step": true, - "name": "a1.log a1", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@[@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"author\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_0.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"committer\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_0.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"id\": \"3e30158f2a7caccb7a9f6632a60011e7a44e1e5c\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"message\": \"fake A msg 0\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"parents\": [@@@", - "@@@STEP_LOG_LINE@json.output@ \"83a7614b3b60951511be50db1b9561daff4bb447\"@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree\": \"1b6412b24ec3add84836c8fdd1af5ac8e35b61d9\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree_diff\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_id\": \"8bea05ad53680fce6937543f0d98cd48e295b8ff\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_mode\": 33188,@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_path\": \"a.py\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_id\": \"0000000000000000000000000000000000000000\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_mode\": 0,@@@", - "@@@STEP_LOG_LINE@json.output@ \"type\": \"add\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"author\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_1.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"committer\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_1.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"id\": \"3380b83c11e029b7291c83c44e7b1ce09d465fd1\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"message\": \"fake A msg 1\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"parents\": [@@@", - "@@@STEP_LOG_LINE@json.output@ \"8675a52c73c701cb0b2c48f5ed4a9058c624e6cd\"@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree\": \"a1b1e6aa501915989b45a95e1224ec2a88655eb3\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree_diff\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_id\": \"06bc4c79002f278528aaddae4e056a11f58c19ad\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_mode\": 33188,@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_path\": \"b.py\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_id\": \"0000000000000000000000000000000000000000\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_mode\": 0,@@@", - "@@@STEP_LOG_LINE@json.output@ \"type\": \"add\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"author\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_2.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"committer\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"fake_A@fake_2.email.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"name\": \"Fake A\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"time\": \"Mon Jan 01 00:00:00 2015\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"id\": \"363caa907186de786cb5292cd1ab7245da954815\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"message\": \"fake A msg 2\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"parents\": [@@@", - "@@@STEP_LOG_LINE@json.output@ \"255c6325c4c654e17e6b35142e3912c86f1718f2\"@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree\": \"e84d4ad259e69da73d2b842e2b9709f08e8b22bd\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"tree_diff\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_id\": \"d7f478bf423219f2f47c1a6ed344fc597a8bf18f\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_mode\": 33188,@@@", - "@@@STEP_LOG_LINE@json.output@ \"new_path\": \"c.py\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_id\": \"0000000000000000000000000000000000000000\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"old_mode\": 0,@@@", - "@@@STEP_LOG_LINE@json.output@ \"type\": \"add\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@]@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.old revision", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_SUMMARY_TEXT@255c6325c4c654e17e6b35142e3912c86f1718f2@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.new revision", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_SUMMARY_TEXT@3e30158f2a7caccb7a9f6632a60011e7a44e1e5c@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.3 commits", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}.get packages", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "RECIPE_MODULE[fuchsia::gerrit]/resources/cipd.ensure", - "/path/to/tmp/" - ], - "infra_step": true, - "luci_context": { - "deadline": { - "grace_period": 30.0, - "soft_deadline": 1337000021.5 - } - }, - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}.get packages.read ensure file", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@", - "@@@STEP_LOG_LINE@cipd.ensure@infra/tools/luci/gerrit/${platform} version:pinned-version@@@", - "@@@STEP_LOG_END@cipd.ensure@@@" - ] - }, - { - "cmd": [], - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07" - ], - "infra_step": true, - "luci_context": { - "deadline": { - "grace_period": 30.0, - "soft_deadline": 1337000021.5 - } - }, - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure package directory", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@" - ] - }, - { - "cmd": [ - "cipd", - "ensure", - "-root", - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07", - "-ensure-file", - "infra/tools/luci/gerrit/${platform} version:pinned-version", - "-max-threads", - "0", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "deadline": { - "grace_period": 30.0, - "soft_deadline": 1337000021.5 - } - }, - "name": "a1.get gerrit change numbers for a1.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure_installed", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/gerrit/resolved-platform\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-detail", - "-host", - "https://foo-review.googlesource.com", - "-input", - "{\"change_id\": \"3e30158f2a7caccb7a9f6632a60011e7a44e1e5c\"}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "a1.get gerrit change numbers for a1.change details for 3e30158:https://foo.googlesource.com/a1/+/3e30158f2a7caccb7a9f6632a60011e7a44e1e5c", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 12345@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"3e30158f2a7caccb7a9f6632a60011e7a44e1e5c\"@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://foo-review.googlesource.com/q/3e30158f2a7caccb7a9f6632a60011e7a44e1e5c@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-detail", - "-host", - "https://foo-review.googlesource.com", - "-input", - "{\"change_id\": \"3380b83c11e029b7291c83c44e7b1ce09d465fd1\"}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "a1.get gerrit change numbers for a1.change details for 3380b83:https://foo.googlesource.com/a1/+/3380b83c11e029b7291c83c44e7b1ce09d465fd1", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 12345@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"3380b83c11e029b7291c83c44e7b1ce09d465fd1\"@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://foo-review.googlesource.com/q/3380b83c11e029b7291c83c44e7b1ce09d465fd1@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-detail", - "-host", - "https://foo-review.googlesource.com", - "-input", - "{\"change_id\": \"363caa907186de786cb5292cd1ab7245da954815\"}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "name": "a1.get gerrit change numbers for a1.change details for 363caa9:https://foo.googlesource.com/a1/+/363caa907186de786cb5292cd1ab7245da954815", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 12345@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"363caa907186de786cb5292cd1ab7245da954815\"@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://foo-review.googlesource.com/q/363caa907186de786cb5292cd1ab7245da954815@@@" - ] - }, - { - "cmd": [ - "git", - "fetch", - "origin", - "h3ll0" - ], - "cwd": "[START_DIR]/checkout/a1", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git fetch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "checkout", - "FETCH_HEAD" - ], - "cwd": "[START_DIR]/checkout/a1", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git checkout", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "commit message", - "~followup_annotations": [ - "@@@STEP_SUMMARY_TEXT@roll: a1 255c632..3e30158 (3 commits)\n\n3e30158:https://foo-review.googlesource.com/c/a1/+/12345 fake A msg 0\n3380b83:https://foo-review.googlesource.com/c/a1/+/12345 fake A msg 1\n363caa9:https://foo-review.googlesource.com/c/a1/+/12345 fake A msg 2\n\nRolled-Repo: https://foo.googlesource.com/a1\nRolled-Commits: 255c6325c4c654..3e30158f2a7cac@@@" - ] - }, - { - "name": "$result" - } -] \ No newline at end of file
diff --git a/recipe_modules/submodule_roll/tests/full.expected/release_branch_missing.json b/recipe_modules/submodule_roll/tests/full.expected/release_branch_missing.json deleted file mode 100644 index 2a73252..0000000 --- a/recipe_modules/submodule_roll/tests/full.expected/release_branch_missing.json +++ /dev/null
@@ -1,70 +0,0 @@ -[ - { - "cmd": [], - "name": "a1", - "~followup_annotations": [ - "@@@STEP_FAILURE@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "[START_DIR]/checkout/.gitmodules", - "/path/to/tmp/" - ], - "infra_step": true, - "name": "a1.read .gitmodules", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@.gitmodules@[submodule \"a1\"]@@@", - "@@@STEP_LOG_LINE@.gitmodules@\tpath = a1@@@", - "@@@STEP_LOG_LINE@.gitmodules@\turl = sso://foo/a1@@@", - "@@@STEP_LOG_END@.gitmodules@@@" - ] - }, - { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://foo.googlesource.com/a1", - "release_20260430" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git ls-remote", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_FAILURE@@@" - ] - }, - { - "cmd": [], - "name": "a1.skip missing release branch", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_TEXT@Branch release_20260430 not found in https://foo.googlesource.com/a1@@@" - ] - }, - { - "cmd": [], - "name": "nothing to roll, exiting" - }, - { - "name": "$result" - } -] \ No newline at end of file
diff --git a/recipe_modules/submodule_roll/tests/full.expected/resolve_failure.json b/recipe_modules/submodule_roll/tests/full.expected/resolve_failure.json deleted file mode 100644 index 8e18593..0000000 --- a/recipe_modules/submodule_roll/tests/full.expected/resolve_failure.json +++ /dev/null
@@ -1,62 +0,0 @@ -[ - { - "cmd": [], - "name": "a1", - "~followup_annotations": [ - "@@@STEP_FAILURE@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "[START_DIR]/checkout/.gitmodules", - "/path/to/tmp/" - ], - "infra_step": true, - "name": "a1.read .gitmodules", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@.gitmodules@[submodule \"a1\"]@@@", - "@@@STEP_LOG_LINE@.gitmodules@\tpath = a1@@@", - "@@@STEP_LOG_LINE@.gitmodules@\turl = sso://foo/a1@@@", - "@@@STEP_LOG_END@.gitmodules@@@" - ] - }, - { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://foo.googlesource.com/a1", - "main" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "name": "a1.git ls-remote", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_FAILURE@@@" - ] - }, - { - "failure": { - "failure": {}, - "humanReason": "Step('a1.git ls-remote') (retcode: 1)" - }, - "name": "$result" - } -] \ No newline at end of file
diff --git a/recipe_modules/submodule_roll/tests/full.py b/recipe_modules/submodule_roll/tests/full.py index 6100d6a..9f0a510 100644 --- a/recipe_modules/submodule_roll/tests/full.py +++ b/recipe_modules/submodule_roll/tests/full.py
@@ -35,8 +35,6 @@ message InputProperties { // Submodules to update. recipe_modules.pigweed.submodule_roll.SubmoduleEntry submodule = 1; - - string branch = 2; } """ @@ -48,8 +46,6 @@ props: InputProperties, ): checkout = api.checkout.fake_context() - if props.branch: - checkout.options.branch = props.branch rolls = api.submodule_roll.update(checkout, props.submodule) @@ -98,40 +94,3 @@ api.submodule_roll.gitmodules('b2', a1='sso://foo/a1'), status='FAILURE', ) - - yield api.test( - 'release_branch', - properties( - api.submodule_roll.entry('a1', release_branch_prefix='release_'), - branch='release_20260430', - ), - api.submodule_roll.gitmodules( - 'a1', - a1='sso://foo/a1', - ), - api.gitiles.log('a1.log a1', 'A'), - ) - - yield api.test( - 'release_branch_missing', - properties( - api.submodule_roll.entry('a1', release_branch_prefix='release_'), - branch='release_20260430', - ), - api.submodule_roll.gitmodules( - 'a1', - a1='sso://foo/a1', - ), - api.step_data('a1.git ls-remote', retcode=1), - ) - - yield api.test( - 'resolve_failure', - properties(api.submodule_roll.entry('a1')), - api.submodule_roll.gitmodules( - 'a1', - a1='sso://foo/a1', - ), - api.step_data('a1.git ls-remote', retcode=1), - status='FAILURE', - )
diff --git a/recipes/roller.expected/release_branch_trigger.json b/recipes/roller.expected/release_branch_trigger.json deleted file mode 100644 index 05d9d43..0000000 --- a/recipes/roller.expected/release_branch_trigger.json +++ /dev/null
@@ -1,3363 +0,0 @@ -[ - { - "cmd": [], - "name": "abandon old changes" - }, - { - "cmd": [], - "name": "abandon old changes.pigweed", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}.get packages", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "RECIPE_MODULE[fuchsia::gerrit]/resources/cipd.ensure", - "/path/to/tmp/" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}.get packages.read ensure file", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@", - "@@@STEP_LOG_LINE@cipd.ensure@infra/tools/luci/gerrit/${platform} version:pinned-version@@@", - "@@@STEP_LOG_END@cipd.ensure@@@" - ] - }, - { - "cmd": [], - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure package directory", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@" - ] - }, - { - "cmd": [ - "cipd", - "ensure", - "-root", - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07", - "-ensure-file", - "infra/tools/luci/gerrit/${platform} version:pinned-version", - "-max-threads", - "0", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure_installed", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/gerrit/resolved-platform\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-query", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"params\": {\"q\": \"is:open owner:None age:30d \"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.get old changes", - "timeout": 30, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@[@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 1001@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 1002@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@]@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"q\": \"is:open owner:None age:30d \"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-abandon", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"change_id\": \"1001\", \"input\": {\"message\": \"Abandoning orphaned roll change.\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.abandon 1001", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_END@json.output (invalid)@@@", - "@@@STEP_LOG_LINE@json.output (exception)@Expecting value: line 1 column 1 (char 0)@@@", - "@@@STEP_LOG_END@json.output (exception)@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"1001\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"input\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"message\": \"Abandoning orphaned roll change.\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://pigweed-review.googlesource.com/q/1001@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-abandon", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"change_id\": \"1002\", \"input\": {\"message\": \"Abandoning orphaned roll change.\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon old changes.pigweed.abandon 1002", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_END@json.output (invalid)@@@", - "@@@STEP_LOG_LINE@json.output (exception)@Expecting value: line 1 column 1 (char 0)@@@", - "@@@STEP_LOG_END@json.output (exception)@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"1002\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"input\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"message\": \"Abandoning orphaned roll change.\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://pigweed-review.googlesource.com/q/1002@@@" - ] - }, - { - "cmd": [], - "name": "abandon old changes.pigweed.success", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "not ready", - "~followup_annotations": [ - "@@@SET_BUILD_PROPERTY@ready_to_upload@false@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed", - "~followup_annotations": [ - "@@@STEP_LINK@applied pigweed:1234 (.)@https://pigweed-review.googlesource.com/c/1234@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.options", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@remote: \"https://pigweed.googlesource.com/pigweed/pigweed\"\nbranch: \"main\"\ninitialize_submodules: true\nmatch_branch: true\nuse_trigger: true\n@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.options with defaults", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@remote: \"https://pigweed.googlesource.com/pigweed/pigweed\"\nbranch: \"main\"\nmanifest_file: \"default.xml\"\ninitialize_submodules: true\nrepo_init_timeout_sec: 120\nrepo_sync_timeout_sec: 900\nnumber_of_attempts: 3\nmatch_branch: true\nsubmodule_timeout_sec: 600\nuse_trigger: true\nmax_attempts: 2\n@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.change data", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.change data.process gitiles commit", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-query", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"params\": {\"q\": \"commit:h3ll0\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.change data.process gitiles commit.number", - "timeout": 30, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@[@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": \"1234\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"branch\": \"main\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"project\": \"pigweed\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@]@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"q\": \"commit:h3ll0\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.change data.changes", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.change data.changes.pigweed:1234", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_SUMMARY_TEXT@Change(number=1234, remote='https://pigweed.googlesource.com/pigweed/pigweed', ref='h3ll0', rebase=False, project='pigweed', branch='releases/google/test_20260501', gerrit_name='pigweed', submitted=True, patchset=None, path=None, base=None, base_type=None, is_merge=False, commit_message='', topic=None, current_revision='h3ll0', primary=True, submit_requirements={}, uploader=None)@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.branch names", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@['releases/google/test_20260501']@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.superproject has branch", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "ls-remote", - "--heads", - "https://pigweed.googlesource.com/pigweed/pigweed", - "releases/google/test_20260501" - ], - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.superproject has branch.git ls-remote releases/google/test_20260501", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@stdout@@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.superproject has branch.head", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_SUMMARY_TEXT@''@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.no branch names match", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.cache", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@miss@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[CACHE]/git" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.ensure git cache dir", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "", - "[CACHE]/git/.GUARD_FILE" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.write git cache guard file", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.makedirs", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.cache.miss", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@SET_BUILD_PROPERTY@checkout https://pigweed.googlesource.com/pigweed/pigweed@\"cache miss\"@@@" - ] - }, - { - "cmd": [ - "git", - "init" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.git init", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "config", - "remote.origin.url", - "https://pigweed.googlesource.com/pigweed/pigweed" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.remote set-url", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "config", - "fetch.uriprotocols", - "https" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.enable packfiles", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.cache.timeout 10s", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "fetch", - "--prune", - "--tags", - "--jobs", - "4", - "origin", - "--recurse-submodules" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.git fetch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "merge", - "FETCH_HEAD" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.git merge", - "timeout": 600.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "sync", - "--recursive" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.git submodule sync", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.cache.timeout 10s (2)", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "update", - "--init", - "--recursive", - "--force", - "--jobs", - "4" - ], - "cwd": "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.git submodule update", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "remove", - "[CACHE]/git/.GUARD_FILE" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.cache.remove git cache guard file", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copytree", - "--symlinks", - "[CACHE]/git/pigweed.googlesource.com-pigweed-pigweed", - "[START_DIR]/co" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.copy from cache", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.git checkout", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.git checkout.timeout 10s", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[START_DIR]/co" - ], - "infra_step": true, - "luci_context": { - "deadline": { - "grace_period": 30.0, - "soft_deadline": 1337000019.0 - }, - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.makedirs", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "init" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git init", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "remote", - "add", - "origin", - "https://pigweed.googlesource.com/pigweed/pigweed" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git remote", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "config", - "core.longpaths", - "true" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.set core.longpaths", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "config", - "fetch.uriprotocols", - "https" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.enable packfiles", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "fetch", - "--tags", - "--jobs", - "4", - "origin", - "main", - "--recurse-submodules" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git fetch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "checkout", - "-f", - "FETCH_HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git checkout", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "rev-parse", - "HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git rev-parse", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "clean", - "-f", - "-d", - "-x" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.git clean", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.git checkout.submodule", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.git checkout.submodule.submodule", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "sync" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.submodule.submodule.git submodule sync", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "update", - "--init", - "--recursive", - "--force", - "--jobs", - "4" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git checkout.submodule.submodule.git submodule update", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@4@@@" - ] - }, - { - "cmd": [ - "git", - "rev-parse", - "HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git rev-parse", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.apply pigweed:1234", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LINK@gerrit@https://pigweed-review.googlesource.com/c/1234@@@", - "@@@STEP_LINK@gitiles@https://pigweed.googlesource.com/pigweed/pigweed/+/h3ll0@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.apply pigweed:1234.timeout 10s", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "fetch", - "--jobs", - "4", - "https://pigweed.googlesource.com/pigweed/pigweed", - "h3ll0", - "--no-recurse-submodules" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git fetch patch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "checkout", - "--force", - "-b", - "working", - "FETCH_HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git checkout patch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "remote", - "add", - "https___pigweed_googlesource_com_pigweed_pigweed", - "https://pigweed.googlesource.com/pigweed/pigweed" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git remote add", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.apply pigweed:1234.timeout 10s (2)", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "fetch", - "--jobs", - "4", - "https___pigweed_googlesource_com_pigweed_pigweed", - "refs/heads/releases/google/test_20260501" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git fetch branch", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "branch", - "--set-upstream-to=https___pigweed_googlesource_com_pigweed_pigweed/releases/google/test_20260501" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git set upstream", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "rev-parse", - "HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git rev-parse", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "log", - "--oneline", - "-n", - "10" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.post-rebase log", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.apply pigweed:1234.timeout 10s (3)", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "checkout", - "--detach" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.detach", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "sync", - "--recursive" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git submodule sync", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "update", - "--init", - "--recursive", - "--jobs", - "4" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.git submodule update", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "git", - "checkout", - "-" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.apply pigweed:1234.reattach", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "python3", - "RECIPE_MODULE[pigweed::checkout]/resources/submodule_status.py", - "[START_DIR]/co", - "/path/to/tmp/json", - "--recursive" - ], - "cwd": "[START_DIR]/co", - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.submodule status", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@{}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.matching pigweed:1234", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@no matching submodules@@@", - "@@@STEP_LINK@gerrit@https://pigweed-review.googlesource.com/c/1234@@@", - "@@@STEP_LINK@gitiles@https://pigweed.googlesource.com/pigweed/pigweed/+/h3ll0@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "[{\"applied\": true, \"base\": \"HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_\", \"base_type\": \"submitted_commit_hash\", \"branch\": \"releases/google/test_20260501\", \"commit_message\": \"\", \"current_revision\": \"h3ll0\", \"gerrit_name\": \"pigweed\", \"is_merge\": false, \"number\": 1234, \"patchset\": null, \"path\": \".\", \"primary\": true, \"project\": \"pigweed\", \"rebase\": false, \"ref\": \"h3ll0\", \"remote\": \"https://pigweed.googlesource.com/pigweed/pigweed\", \"submitted\": true, \"topic\": null, \"uploader\": null}]", - "[CLEANUP]/tmp_tmp_1" - ], - "cwd": "[START_DIR]/co", - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.write changes.json", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@tmp_tmp_1@[{\"applied\": true, \"base\": \"HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_\", \"base_type\": \"submitted_commit_hash\", \"branch\": \"releases/google/test_20260501\", \"commit_message\": \"\", \"current_revision\": \"h3ll0\", \"gerrit_name\": \"pigweed\", \"is_merge\": false, \"number\": 1234, \"patchset\": null, \"path\": \".\", \"primary\": true, \"project\": \"pigweed\", \"rebase\": false, \"ref\": \"h3ll0\", \"remote\": \"https://pigweed.googlesource.com/pigweed/pigweed\", \"submitted\": true, \"topic\": null, \"uploader\": null}]@@@", - "@@@STEP_LOG_END@tmp_tmp_1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.git log", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "log", - "--oneline", - "-n", - "10" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git log.[START_DIR]/co", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.base", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@SET_BUILD_PROPERTY@got_revision@\"HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_\"@@@", - "@@@SET_BUILD_PROPERTY@got_revision_type@\"submitted_commit_hash\"@@@" - ] - }, - { - "cmd": [ - "git", - "clean", - "-f", - "-f", - "-d" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git clean", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "status" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.git status", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "checkout pigweed.status", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@applied [Change(number=1234, remote='https://pigweed.googlesource.com/pigweed/pigweed', ref='h3ll0', rebase=False, project='pigweed', branch='releases/google/test_20260501', gerrit_name='pigweed', submitted=True, patchset=None, path='.', base='HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_HEAD_', base_type='submitted_commit_hash', is_merge=False, commit_message='', topic=None, current_revision='h3ll0', primary=True, submit_requirements={}, uploader=None)]\nnot applied []@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "ensure-directory", - "--mode", - "0o777", - "[START_DIR]/snapshot" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.mkdir", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "git", - "submodule", - "status", - "--recursive" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.submodule-status", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "submodule status filler text", - "[START_DIR]/snapshot/submodules.log" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.write submodule snapshot", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@submodules.log@submodule status filler text@@@", - "@@@STEP_LOG_END@submodules.log@@@" - ] - }, - { - "cmd": [ - "git", - "log", - "--oneline", - "-n", - "10" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.log", - "timeout": 1200.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "", - "[START_DIR]/snapshot/git.log" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "checkout pigweed.write git log", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_END@git.log@@@" - ] - }, - { - "cmd": [], - "name": "cipd" - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "[START_DIR]/co/pw_env_setup/py/pw_env_setup/cipd_setup/pigweed.json", - "/path/to/tmp/" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.read pigweed.json", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@pigweed.json@{@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"packages\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ {@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"_comment\": \"comments should be preserved\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"path\": \"cipd/${platform}\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"platforms\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"linux-amd64\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"windows-amd64\"@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ],@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"git_revision:123\"@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ]@@@", - "@@@STEP_LOG_LINE@pigweed.json@ }@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ]@@@", - "@@@STEP_LOG_LINE@pigweed.json@}@@@", - "@@@STEP_LOG_END@pigweed.json@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/linux-amd64", - "-version", - "latest", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.cipd describe cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/linux-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/windows-amd64", - "-version", - "latest", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.cipd describe cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/windows-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.common tags", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@git_revision:397a2597cdc237f3026e6143b683be4b9ab60540@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check number of instances", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/linux-amd64", - "-version", - "git_revision:397a2597cdc237f3026e6143b683be4b9ab60540", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.check number of instances.cipd describe cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:397\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/linux-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/windows-amd64", - "-version", - "git_revision:397a2597cdc237f3026e6143b683be4b9ab60540", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.check number of instances.cipd describe cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:397\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/windows-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.new version", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@git_revision:397a2597cdc237f3026e6143b683be4b9ab60540@@@", - "@@@STEP_LOG_LINE@old version@git_revision:123@@@", - "@@@STEP_LOG_END@old version@@@" - ] - }, - { - "cmd": [], - "name": "cipd.checking against old version", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "cipd.checking against old version.cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/linux-amd64", - "-version", - "git_revision:123", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.checking against old version.cipd/linux-amd64.cipd describe cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:123\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/linux-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.checking against old version.cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/windows-amd64", - "-version", - "git_revision:123", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.checking against old version.cipd/windows-amd64.cipd describe cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:123\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/windows-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check package uploader", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check package uploader.cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/linux-amd64", - "-version", - "git_revision:397a2597cdc237f3026e6143b683be4b9ab60540", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.check package uploader.cipd/linux-amd64.cipd describe cipd/linux-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:397\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/linux-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check package uploader.cipd/linux-amd64.allowlist empty", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check package uploader.cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@" - ] - }, - { - "cmd": [ - "cipd", - "describe", - "cipd/windows-amd64", - "-version", - "git_revision:397a2597cdc237f3026e6143b683be4b9ab60540", - "-json-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.check package uploader.cipd/windows-amd64.cipd describe cipd/windows-amd64", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"pin\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:397\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"package\": \"cipd/windows-amd64\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"refs\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"modified_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"ref\": \"latest\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"buildbot_build:some.waterfall/builder/1234\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_repository:https://chromium.googlesource.com/some/repo\"@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_by\": \"user:44-blablbla@developer.gserviceaccount.com\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"registered_ts\": 1446574210,@@@", - "@@@STEP_LOG_LINE@json.output@ \"tag\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ]@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@" - ] - }, - { - "cmd": [], - "name": "cipd.check package uploader.cipd/windows-amd64.allowlist empty", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@3@@@" - ] - }, - { - "cmd": [ - "vpython3", - "-u", - "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", - "--json-output", - "/path/to/tmp/json", - "copy", - "{\n \"packages\": [\n {\n \"_comment\": \"comments should be preserved\",\n \"path\": \"cipd/${platform}\",\n \"platforms\": [\n \"linux-amd64\",\n \"windows-amd64\"\n ],\n \"tags\": [\n \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"\n ]\n }\n ]\n}\n", - "[START_DIR]/co/pw_env_setup/py/pw_env_setup/cipd_setup/pigweed.json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "cipd.write pigweed.json", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@pigweed.json@{@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"packages\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ {@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"_comment\": \"comments should be preserved\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"path\": \"cipd/${platform}\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"platforms\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"linux-amd64\",@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"windows-amd64\"@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ],@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"tags\": [@@@", - "@@@STEP_LOG_LINE@pigweed.json@ \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\"@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ]@@@", - "@@@STEP_LOG_LINE@pigweed.json@ }@@@", - "@@@STEP_LOG_LINE@pigweed.json@ ]@@@", - "@@@STEP_LOG_LINE@pigweed.json@}@@@", - "@@@STEP_LOG_END@pigweed.json@@@" - ] - }, - { - "cmd": [], - "name": "commit message", - "~followup_annotations": [ - "@@@STEP_LOG_LINE@commit message@roll: cipd@@@", - "@@@STEP_LOG_LINE@commit message@@@@", - "@@@STEP_LOG_LINE@commit message@From git_revision:123@@@", - "@@@STEP_LOG_LINE@commit message@To git_revision:397a2597cdc237f3026e6143b683be4b9ab60540@@@", - "@@@STEP_LOG_LINE@commit message@@@@", - "@@@STEP_LOG_LINE@commit message@Roll-Count: 1@@@", - "@@@STEP_LOG_END@commit message@@@", - "@@@SET_BUILD_PROPERTY@_roll_count@1@@@", - "@@@SET_BUILD_PROPERTY@_roll_names@[\"cipd\"]@@@" - ] - }, - { - "cmd": [], - "name": "commit message.cipd", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_SUMMARY_TEXT@{'name': 'cipd', 'spec': 'cipd/${platform}', 'old': 'git_revision:123', 'new': 'git_revision:397a2597cdc237f3026e6143b683be4b9ab60540'}@@@", - "@@@SET_BUILD_PROPERTY@cipd@{\"name\": \"cipd\", \"new\": \"git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\", \"old\": \"git_revision:123\", \"spec\": \"cipd/${platform}\"}@@@" - ] - }, - { - "cmd": [], - "name": "ready_to_upload", - "~followup_annotations": [ - "@@@SET_BUILD_PROPERTY@ready_to_upload@true@@@" - ] - }, - { - "cmd": [ - "git", - "ls-files", - "--modified", - "--deleted", - "--exclude-standard" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "check for no-op commit: unstaged / ignored files", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_LOG_LINE@stdout@hello@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [ - "git", - "diff", - "HEAD", - "--cached", - "--name-only" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "check for no-op commit: staged files", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_LOG_LINE@stdout@staged-foo.txt@@@", - "@@@STEP_LOG_LINE@stdout@staged-bar.txt@@@", - "@@@STEP_LOG_END@stdout@@@" - ] - }, - { - "cmd": [ - "git", - "add", - "--update" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "git add", - "timeout": 300.0 - }, - { - "cmd": [ - "git", - "rev-parse", - "HEAD" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "git rev-parse", - "timeout": 300.0 - }, - { - "cmd": [], - "name": "calculate Change-Id", - "~followup_annotations": [ - "@@@STEP_TEXT@I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@" - ] - }, - { - "cmd": [ - "git", - "diff", - "--unified=0", - "--cached" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "calculate Change-Id.git diff", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/foo.txt b/foo.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@--- a/foo.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/foo.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@@@ -16 +16 @@@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@- foo = 5@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@+ foo = 6@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/bar.txt b/bar.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@--- a/bar.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/bar.txt@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@@@ -5 +5 @@@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@- bar = 0@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@+ bar = 1@@@", - "@@@STEP_LOG_LINE@diff (without hashes)@@@@", - "@@@STEP_LOG_END@diff (without hashes)@@@" - ] - }, - { - "cmd": [ - "git", - "hash-object", - "diff --git a/foo.txt b/foo.txt\n--- a/foo.txt\n+++ b/foo.txt\n@@ -16 +16 @@\n- foo = 5\n+ foo = 6\ndiff --git a/bar.txt b/bar.txt\n--- a/bar.txt\n+++ b/bar.txt\n@@ -5 +5 @@\n- bar = 0\n+ bar = 1\n####builder########" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "calculate Change-Id.git hash-object", - "timeout": 300.0, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-query", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"params\": {\"o\": [\"MESSAGES\", \"DETAILED_ACCOUNTS\"], \"q\": \"change:pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\"}}", - "-output", - "/path/to/tmp/json" - ], - "cwd": "[START_DIR]/co", - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "check for identical roll", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_LOG_LINE@json.output@[]@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@", - "@@@STEP_LOG_LINE@json.input@ \"MESSAGES\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"DETAILED_ACCOUNTS\"@@@", - "@@@STEP_LOG_LINE@json.input@ ],@@@", - "@@@STEP_LOG_LINE@json.input@ \"q\": \"change:pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@" - ] - }, - { - "cmd": [ - "git", - "commit", - "-m", - "roll: cipd\n\nFrom git_revision:123\nTo git_revision:397a2597cdc237f3026e6143b683be4b9ab60540\n\nRoll-Count: 1\nRoller-URL: https://cr-buildbucket.appspot.com/build/8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c", - "-a", - "--no-verify" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "git commit", - "timeout": 1200.0 - }, - { - "cmd": [ - "git", - "push", - "--push-option", - "nokeycheck", - "https://pigweed.googlesource.com/pigweed/pigweed", - "HEAD:refs/for/main%l=Commit-Queue+1,hashtag=roll%2dcipd" - ], - "cwd": "[START_DIR]/co", - "env": { - "GIT_ADVICE": "0", - "GIT_CONFIG_COUNT": "3", - "GIT_CONFIG_KEY_0": "gc.auto", - "GIT_CONFIG_KEY_1": "gc.autoDetach", - "GIT_CONFIG_KEY_2": "gc.autoPackLimit", - "GIT_CONFIG_VALUE_0": "0", - "GIT_CONFIG_VALUE_1": "0", - "GIT_CONFIG_VALUE_2": "0" - }, - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "git push", - "timeout": 180.0, - "~followup_annotations": [ - "@@@STEP_LOG_LINE@stdout@@@@", - "@@@STEP_LOG_END@stdout@@@", - "@@@STEP_LINK@gerrit link@https://pigweed-review.googlesource.com/q/pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@" - ] - }, - { - "cmd": [], - "name": "output gerrit change id", - "~followup_annotations": [ - "@@@SET_BUILD_PROPERTY@gerrit_changes@[{\"change_id\": \"pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\", \"dry_run\": true, \"host\": \"pigweed-review.googlesource.com\"}]@@@" - ] - }, - { - "cmd": [], - "name": "check for completion" - }, - { - "cmd": [], - "name": "check for completion.check if done (0)", - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@1@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-detail", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"change_id\": \"pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\", \"params\": {\"o\": [\"CURRENT_REVISION\", \"DETAILED_ACCOUNTS\", \"SUBMITTABLE\"]}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "check for completion.check if done (0).status", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_NEST_LEVEL@2@@@", - "@@@STEP_LOG_LINE@json.output@{@@@", - "@@@STEP_LOG_LINE@json.output@ \"_number\": 123456,@@@", - "@@@STEP_LOG_LINE@json.output@ \"current_revision\": \"abc123\",@@@", - "@@@STEP_LOG_LINE@json.output@ \"current_revision_number\": 3,@@@", - "@@@STEP_LOG_LINE@json.output@ \"labels\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"Commit-Queue\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"all\": [@@@", - "@@@STEP_LOG_LINE@json.output@ {@@@", - "@@@STEP_LOG_LINE@json.output@ \"value\": 2@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ ],@@@", - "@@@STEP_LOG_LINE@json.output@ \"approved\": {@@@", - "@@@STEP_LOG_LINE@json.output@ \"email\": \"roller@fuchsia-service-account.com\"@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ }@@@", - "@@@STEP_LOG_LINE@json.output@ },@@@", - "@@@STEP_LOG_LINE@json.output@ \"status\": \"MERGED\"@@@", - "@@@STEP_LOG_LINE@json.output@}@@@", - "@@@STEP_LOG_END@json.output@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@", - "@@@STEP_LOG_LINE@json.input@ \"CURRENT_REVISION\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"DETAILED_ACCOUNTS\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"SUBMITTABLE\"@@@", - "@@@STEP_LOG_LINE@json.input@ ]@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://pigweed-review.googlesource.com/q/pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@" - ] - }, - { - "cmd": [ - "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit", - "change-abandon", - "-host", - "https://pigweed-review.googlesource.com", - "-input", - "{\"change_id\": \"pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\", \"input\": {\"message\": \"Dry run passed.\"}}", - "-output", - "/path/to/tmp/json" - ], - "infra_step": true, - "luci_context": { - "realm": { - "name": "project:ci" - }, - "resultdb": { - "current_invocation": { - "name": "invocations/build:8945511751514863184", - "update_token": "token" - }, - "hostname": "rdbhost" - } - }, - "name": "abandon roll", - "timeout": 600, - "~followup_annotations": [ - "@@@STEP_TEXT@dry run passed@@@", - "@@@STEP_LOG_END@json.output (invalid)@@@", - "@@@STEP_LOG_LINE@json.output (exception)@Expecting value: line 1 column 1 (char 0)@@@", - "@@@STEP_LOG_END@json.output (exception)@@@", - "@@@STEP_LOG_LINE@json.input@{@@@", - "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\",@@@", - "@@@STEP_LOG_LINE@json.input@ \"input\": {@@@", - "@@@STEP_LOG_LINE@json.input@ \"message\": \"Dry run passed.\"@@@", - "@@@STEP_LOG_LINE@json.input@ }@@@", - "@@@STEP_LOG_LINE@json.input@}@@@", - "@@@STEP_LOG_END@json.input@@@", - "@@@STEP_LINK@gerrit link@https://pigweed-review.googlesource.com/q/pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@" - ] - }, - { - "name": "$result", - "summaryMarkdown": "Dry run succeeded. [gerrit link](https://pigweed-review.googlesource.com/q/pigweed/pigweed~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c)" - } -] \ No newline at end of file
diff --git a/recipes/roller.proto b/recipes/roller.proto index bd05427..1a735f6 100644 --- a/recipes/roller.proto +++ b/recipes/roller.proto
@@ -111,4 +111,13 @@ // Id of the multi_roller build that launched this builder, if applicable. // String because large ints don't always get preserved through JSON. string parent_build_id = 23; + + // Whether to match the destination branch to the triggering branch. This is + // useful for rollers of release branches where the downstream change is on + // 'refs/heads/releases/$RELEASE', the destination repo has that branch, but + // we don't want to configure a separate roller for each release branch. + // If this is set then auto_roller_options.upstream_ref, + // override_auto_roller_options.upstream_ref, and checkout_options.branch will + // be overwritten. + string match_triggering_branch = 24; }
diff --git a/recipes/roller.py b/recipes/roller.py index af3582b..bb24a6d 100644 --- a/recipes/roller.py +++ b/recipes/roller.py
@@ -33,6 +33,7 @@ import contextlib import itertools +import re from collections.abc import Iterator, Sequence from typing import Any @@ -42,9 +43,6 @@ from PB.go.chromium.org.luci.buildbucket.proto import build as build_pb from PB.go.chromium.org.luci.buildbucket.proto import common as common_pb -from PB.go.chromium.org.luci.scheduler.api.scheduler.v1 import ( - triggers as triggers_pb, -) from PB.recipe_engine import result as result_pb from PB.recipe_modules.fuchsia.auto_roller.options import ( Options as AutoRollerOptions, @@ -91,8 +89,8 @@ 'pigweed/variable_roll', 'recipe_engine/buildbucket', 'recipe_engine/file', + 'recipe_engine/json', 'recipe_engine/properties', - 'recipe_engine/scheduler', 'recipe_engine/step', 'recipe_engine/time', ] @@ -122,9 +120,27 @@ not_ready = api.step.empty('not ready').presentation not_ready.properties['ready_to_upload'] = False - if api.properties.get('release_branch_prefix'): - props.checkout_options.use_trigger = True - props.checkout_options.match_branch = True + if props.match_triggering_branch: + triggering_changes = api.checkout.triggering_changes( + props.checkout_options + ) + if len(triggering_changes) != 1: + api.step.empty( + f'len(triggering_changes) {len(triggering_changes)} != 1', + status='FAILURE', + ) + + change = triggering_changes[0] + if not change.submitted: + api.step.empty( + f'triggering change {change} is not submitted', + status='FAILURE', + ) + + props.checkout_options.branch = change.branch + props.auto_roller_options.upstream_ref = change.branch + props.override_auto_roller_options.upstream_ref = change.branch + checkout = api.checkout(props.checkout_options) env: api.checkout.Environment | None = None @@ -496,6 +512,101 @@ ) yield api.test( + 'match_triggering_branch_success', + api.buildbucket.ci_build( + git_repo=api.checkout.pigweed_repo, + git_ref='refs/heads/release-1.0', + ), + api.override_step_data( + 'change data.process gitiles commit.number', + api.json.output( + [ + { + '_number': '1234', + 'branch': 'release-1.0', + 'project': 'pigweed/pigweed', + } + ] + ), + ), + properties( + cipd_packages=api.cipd_roll.package_props('cipd/${platform}'), + match_triggering_branch='true', + ), + api.cipd_roll.read_file_step_data( + 'cipd', + 'pigweed.json', + api.cipd_roll.package( + 'cipd/${platform}', + 'git_revision:123', + platforms=['linux-amd64', 'windows-amd64'], + ), + ), + expected_roll( + 'cipd', + old='git_revision:123', + new='git_revision:397a2597cdc237f3026e6143b683be4b9ab60540', + ), + api.auto_roller.dry_run_success(), + api.post_check(post_process.PropertyEquals, '_roll_count', 1), + api.post_check( + post_process.StepCommandContains, + 'git push', + [re.compile(r'refs/for/release-1.0')], + ), + api.post_process(post_process.DropExpectation), + ) + + yield api.test( + 'match_triggering_branch_not_submitted', + api.checkout.try_test_data(), + properties( + cipd_packages=api.cipd_roll.package_props('cipd/${platform}'), + match_triggering_branch='true', + ), + api.post_check( + post_process.MustRunRE, + r'.*triggering change .* is not submitted', + ), + api.post_process(post_process.DropExpectation), + status='FAILURE', + ) + + yield api.test( + 'match_triggering_branch_multiple_changes', + api.checkout.try_test_data( + gerrit_changes=[ + api.checkout.cl('host1', 'proj1', 123), + api.checkout.cl('host2', 'proj2', 456), + ] + ), + properties( + cipd_packages=api.cipd_roll.package_props('cipd/${platform}'), + match_triggering_branch='true', + ), + api.post_check( + post_process.MustRun, + 'len(triggering_changes) 2 != 1', + ), + api.post_process(post_process.DropExpectation), + status='FAILURE', + ) + + yield api.test( + 'match_triggering_branch_no_changes', + properties( + cipd_packages=api.cipd_roll.package_props('cipd/${platform}'), + match_triggering_branch='true', + ), + api.post_check( + post_process.MustRun, + 'len(triggering_changes) 0 != 1', + ), + api.post_process(post_process.DropExpectation), + status='FAILURE', + ) + + yield api.test( 'mega', api.buildbucket.ci_build( tags=[common_pb.StringPair(key='user_agent', value='bisector')], @@ -591,36 +702,3 @@ api.post_check(post_process.PropertyEquals, '_roll_count', 10), # api.post_process(post_process.DropExpectation), ) - - yield api.test( - 'release_branch_trigger', - api.buildbucket.ci_build( - git_repo='https://pigweed.googlesource.com/pigweed/pigweed', - revision='h3ll0', - ), - api.scheduler( - triggers=[ - triggers_pb.Trigger( - gitiles=triggers_pb.GitilesTrigger( - repo='https://pigweed.googlesource.com/pigweed/pigweed', - revision='h3ll0', - ref='refs/heads/releases/google/test_20260501', - ), - ), - ], - ), - api.properties(release_branch_prefix='releases/'), - properties( - cipd_packages=api.cipd_roll.package_props('cipd/${platform}'), - ), - api.cipd_roll.read_file_step_data( - 'cipd', - 'pigweed.json', - api.cipd_roll.package( - 'cipd/${platform}', - 'git_revision:123', - platforms=['linux-amd64', 'windows-amd64'], - ), - ), - api.auto_roller.success(), - )
diff --git a/recipes/workflows.proto b/recipes/workflows.proto index 93d70c2..0a30830 100644 --- a/recipes/workflows.proto +++ b/recipes/workflows.proto
@@ -41,8 +41,4 @@ // Version of Bazel to use. If empty, bazelisk uses the .bazelversion file. // Cannot be set if the pigweed.latest_bazel experiment is active. string bazel_version = 7; - - // Prefix for release branches. If set, builds on release branches will be - // skipped if the branch doesn't exist in the downstream repo. - string release_branch_prefix = 8; }
diff --git a/recipes/workflows.py b/recipes/workflows.py index 15abf7a..e0c3154 100644 --- a/recipes/workflows.py +++ b/recipes/workflows.py
@@ -28,7 +28,6 @@ recipe_test_api, ) -from PB.go.chromium.org.luci.buildbucket.proto import common as common_pb from PB.pigweed.pw_build.proto import build_driver as build_driver_pb from PB.pigweed.pw_build.proto import workflows as workflows_pb from PB.recipe_engine import result as result_pb @@ -102,28 +101,7 @@ if res := api.ci_status.exit_early_in_recipe_testing_if_failing(): return res # pragma: no cover - is_release_branch = False - if props.release_branch_prefix and props.checkout_options.branch: - if props.checkout_options.branch.startswith( - props.release_branch_prefix - ): - is_release_branch = True - - try: - checkout = api.checkout(props.checkout_options) - except api.step.StepFailure as e: - if is_release_branch: - step_text = f'Branch {props.checkout_options.branch} not found in downstream repo or checkout failed' - pres = api.step.empty( - 'skip missing release branch', - step_text=step_text, - ).presentation - pres.properties['early_exit_reason'] = 'skip missing release branch' - return result_pb.RawResult( - summary_markdown=step_text, - status=common_pb.SUCCESS, - ) - raise e + checkout = api.checkout(props.checkout_options) if res := api.roll_tryjob_reuse.exit_early_if_applicable(checkout.changes): return res # pragma: no cover @@ -447,17 +425,9 @@ def GenTests( api: recipe_test_api.RecipeTestApi, ) -> Iterator[recipe_test_api.TestData]: - def properties( - checkout_overrides=None, **kwargs: Any - ) -> recipe_test_api.TestData: + def properties(**kwargs: Any) -> recipe_test_api.TestData: props = InputProperties(**kwargs) - if not props.HasField('checkout_options'): - props.checkout_options.CopyFrom( - api.checkout.git_options(**(checkout_overrides or {})) - ) - elif checkout_overrides: - for k, v in checkout_overrides.items(): - setattr(props.checkout_options, k, v) + props.checkout_options.CopyFrom(api.checkout.git_options()) return api.properties(props) def must_upload( @@ -520,51 +490,3 @@ ), api.post_process(post_process.DropExpectation), ) - - yield api.test( - 'release_branch_success', - properties( - release_branch_prefix='releases/', - checkout_overrides=dict( - branch='releases/foo', - ), - ), - api.buildbucket.try_build(), - api.checkout.try_test_data(), - api.post_process(post_process.DropExpectation), - ) - - yield api.test( - 'release_branch_missing', - properties( - release_branch_prefix='releases/', - checkout_overrides=dict( - branch='releases/foo', - ), - ), - api.buildbucket.try_build(), - api.checkout.try_test_data(), - api.step_data('checkout pigweed.git checkout.git checkout', retcode=1), - api.post_process(post_process.DropExpectation), - ) - - yield api.test( - 'checkout_failure', - properties(), - api.buildbucket.try_build(), - api.checkout.try_test_data(), - api.step_data('checkout pigweed.git checkout.git checkout', retcode=1), - api.post_process(post_process.DropExpectation), - status='INFRA_FAILURE', - ) - - yield api.test( - 'checkout_overrides_with_options', - properties( - checkout_options=api.checkout.git_options(branch='main'), - checkout_overrides=dict(branch='overridden'), - ), - api.buildbucket.try_build(), - api.checkout.try_test_data(), - api.post_process(post_process.DropExpectation), - )