blob: fb3321121715a8fe0a63c5e746ccd9c56d4df290 [file] [log] [blame]
[
{
"cmd": [
"git",
"ls-remote",
"--heads",
"https://foo.googlesource.com/foo",
"main"
],
"name": "git ls-remote",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_LOG_LINE@stdout@h3ll0\trefs/heads/main@@@",
"@@@STEP_LOG_END@stdout@@@"
]
},
{
"cmd": [],
"name": "checkout foo",
"~followup_annotations": [
"@@@STEP_LINK@applied foo:1234 (.)@https://foo-review.googlesource.com/c/1234@@@"
]
},
{
"cmd": [],
"name": "checkout foo.options",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@remote: \"https://foo.googlesource.com/foo\"\nbranch: \"main\"\nuse_trigger: true\n@@@"
]
},
{
"cmd": [],
"name": "checkout foo.options with defaults",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@remote: \"https://foo.googlesource.com/foo\"\nbranch: \"main\"\nmanifest_file: \"default.xml\"\nrepo_init_timeout_sec: 20\nrepo_sync_timeout_sec: 120\nnumber_of_attempts: 3\nsubmodule_timeout_sec: 600\nuse_trigger: true\n@@@"
]
},
{
"cmd": [],
"name": "checkout foo.change data",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"ls-remote",
"--heads",
"https://foo.googlesource.com/foo",
"main"
],
"name": "checkout foo.change data.git ls-remote",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@stdout@h3ll0\trefs/heads/main@@@",
"@@@STEP_LOG_END@stdout@@@"
]
},
{
"cmd": [],
"name": "checkout foo.change data.ensure infra/tools/luci/gerrit/${platform}",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.change data.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,
"name": "checkout foo.change data.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": "checkout foo.change data.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,
"name": "checkout foo.change data.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,
"name": "checkout foo.change data.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://foo-review.googlesource.com",
"-input",
"{\"params\": {\"q\": \"commit:h3ll0\"}}",
"-output",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "checkout foo.change data.number",
"timeout": 30,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@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 foo.change data.changes",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.change data.changes.foo:1234",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@3@@@",
"@@@STEP_SUMMARY_TEXT@Change(number=1234, remote='https://foo.googlesource.com/foo', ref='h3ll0', rebase=False, project=None, branch='main', gerrit_name='foo', submitted=True, patchset=None, path=None, base=None, base_type=None, is_merge=False, commit_message='', topic=None, current_revision=None)@@@"
]
},
{
"cmd": [],
"name": "checkout foo.not matching branch names",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.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,
"name": "checkout foo.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,
"name": "checkout foo.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/foo.googlesource.com-foo"
],
"infra_step": true,
"name": "checkout foo.cache.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"init"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.cache.git init",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"remote.origin.url",
"https://foo.googlesource.com/foo"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.cache.remote set-url",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"fetch.uriprotocols",
"https"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.cache.set fetch.uriprotocols",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.cache.timeout 10s",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"fetch",
"--prune",
"--tags",
"--jobs",
"4",
"origin",
"--no-recurse-submodules"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"merge",
"FETCH_HEAD"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.cache.git merge",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.cache.timeout 10s (2)",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"submodule",
"update",
"--recursive",
"--force",
"--jobs",
"4"
],
"cwd": "[CACHE]/git/foo.googlesource.com-foo",
"infra_step": true,
"name": "checkout foo.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,
"name": "checkout foo.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/foo.googlesource.com-foo",
"[START_DIR]/project"
],
"infra_step": true,
"name": "checkout foo.copy from cache",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.git checkout",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.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]/project"
],
"infra_step": true,
"luci_context": {
"deadline": {
"grace_period": 30.0,
"soft_deadline": 1337000019.0
}
},
"name": "checkout foo.git checkout.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"init"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git init",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"remote",
"add",
"origin",
"https://foo.googlesource.com/foo"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git remote",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"core.longpaths",
"true"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.set core.longpaths",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"fetch.uriprotocols",
"https"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.set fetch.uriprotocols",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"fetch",
"--tags",
"--jobs",
"4",
"origin",
"main"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"checkout",
"-f",
"FETCH_HEAD"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git checkout",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"rev-parse",
"HEAD"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git rev-parse",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"clean",
"-f",
"-d",
"-x"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.git checkout.git clean",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"rev-parse",
"HEAD"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.git rev-parse",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.apply foo:1234",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LINK@gerrit@https://foo-review.googlesource.com/c/1234@@@",
"@@@STEP_LINK@gitiles@https://foo.googlesource.com/foo/+/h3ll0@@@"
]
},
{
"cmd": [],
"name": "checkout foo.apply foo:1234.timeout 10s",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"fetch",
"--jobs",
"4",
"https://foo.googlesource.com/foo",
"h3ll0",
"--no-recurse-submodules"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.git fetch patch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"checkout",
"--force",
"-b",
"working",
"FETCH_HEAD"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.git checkout patch",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"remote",
"add",
"https___foo_googlesource_com_foo",
"https://foo.googlesource.com/foo"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.git remote add",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.apply foo:1234.timeout 10s (2)",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"fetch",
"--jobs",
"4",
"https___foo_googlesource_com_foo",
"refs/heads/main"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.git fetch branch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"branch",
"--set-upstream-to=https___foo_googlesource_com_foo/main"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.git set upstream",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"rev-parse",
"HEAD"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.apply foo:1234.git rev-parse",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"log",
"--oneline",
"-n",
"10"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.apply foo:1234.post-rebase log",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.apply foo:1234.timeout 10s (3)",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"checkout",
"--detach"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.apply foo:1234.detach",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"submodule",
"update",
"--init",
"--recursive",
"--jobs",
"4"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.apply foo:1234.git submodule update",
"timeout": 600,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"checkout",
"-"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.apply foo:1234.reattach",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"python3",
"RECIPE_MODULE[pigweed::checkout]/resources/submodule_status.py",
"[START_DIR]/project",
"/path/to/tmp/json",
"--recursive"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.submodule status",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "checkout foo.matching foo:1234",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@no matching submodules@@@",
"@@@STEP_LINK@gerrit@https://foo-review.googlesource.com/c/1234@@@",
"@@@STEP_LINK@gitiles@https://foo.googlesource.com/foo/+/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\": \"main\", \"commit_message\": \"\", \"current_revision\": null, \"gerrit_name\": \"foo\", \"is_merge\": false, \"number\": 1234, \"patchset\": null, \"path\": \".\", \"project\": null, \"rebase\": false, \"ref\": \"h3ll0\", \"remote\": \"https://foo.googlesource.com/foo\", \"submitted\": true, \"topic\": null}]",
"[CLEANUP]/tmp_tmp_1"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout foo.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\": \"main\", \"commit_message\": \"\", \"current_revision\": null, \"gerrit_name\": \"foo\", \"is_merge\": false, \"number\": 1234, \"patchset\": null, \"path\": \".\", \"project\": null, \"rebase\": false, \"ref\": \"h3ll0\", \"remote\": \"https://foo.googlesource.com/foo\", \"submitted\": true, \"topic\": null}]@@@",
"@@@STEP_LOG_END@tmp_tmp_1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.git log",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"log",
"--oneline",
"-n",
"10"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.git log.[START_DIR]/project",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout foo.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]/project",
"name": "checkout foo.git clean",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"status"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.git status",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout foo.status",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@applied [Change(number=1234, remote='https://foo.googlesource.com/foo', ref='h3ll0', rebase=False, project=None, branch='main', gerrit_name='foo', 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=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,
"name": "checkout foo.mkdir",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"submodule",
"status",
"--recursive"
],
"cwd": "[START_DIR]/project",
"name": "checkout foo.submodule-status",
"timeout": 600.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,
"name": "checkout foo.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]/project",
"name": "checkout foo.log",
"timeout": 600.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,
"name": "checkout foo.write git log",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_END@git.log@@@"
]
},
{
"cmd": [
"git",
"log",
"--max-count=1",
"--pretty=format:%H"
],
"cwd": "[START_DIR]/project",
"name": "get new revision",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@2222222222222222222222222222222222222222@@@"
]
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[START_DIR]/checkout/foo.txt",
"/path/to/tmp/"
],
"infra_step": true,
"name": "read old revision",
"~followup_annotations": [
"@@@STEP_LOG_LINE@foo.txt@1111111111111111111111111111111111111111@@@",
"@@@STEP_LOG_END@foo.txt@@@"
]
},
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"2222222222222222222222222222222222222222\n",
"[START_DIR]/checkout/foo.txt"
],
"infra_step": true,
"name": "write new revision",
"~followup_annotations": [
"@@@STEP_LOG_LINE@foo.txt@2222222222222222222222222222222222222222@@@",
"@@@STEP_LOG_END@foo.txt@@@"
]
},
{
"cmd": [],
"name": "get roll direction",
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@backward@@@"
]
},
{
"cmd": [
"git",
"merge-base",
"--is-ancestor",
"1111111111111111111111111111111111111111",
"2222222222222222222222222222222222222222"
],
"cwd": "[START_DIR]/project",
"name": "get roll direction.is forward",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"merge-base",
"--is-ancestor",
"2222222222222222222222222222222222222222",
"1111111111111111111111111111111111111111"
],
"cwd": "[START_DIR]/project",
"name": "get roll direction.is backward",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "cancelling roll",
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@not updating from 1111111 to 2222222 because 1111111 is newer than 2222222@@@",
"@@@STEP_LINK@1111111111111111111111111111111111111111@https://foo.googlesource.com/foo/+/1111111111111111111111111111111111111111@@@",
"@@@STEP_LINK@2222222222222222222222222222222222222222@https://foo.googlesource.com/foo/+/2222222222222222222222222222222222222222@@@"
]
},
{
"cmd": [],
"name": "nothing to roll, exiting"
},
{
"name": "$result"
}
]