blob: 8b6af694ec136c3fd53e1a5fedbc98e44da50dca [file] [log] [blame]
[
{
"cmd": [
"vpython3",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[START_DIR]/checkout/default.xml",
"/path/to/tmp/"
],
"infra_step": true,
"name": "read manifest",
"~followup_annotations": [
"@@@STEP_LOG_LINE@default.xml@<?xml version=\"1.0\" encoding=\"UTF-8\"?>@@@",
"@@@STEP_LOG_LINE@default.xml@<manifest>@@@",
"@@@STEP_LOG_LINE@default.xml@ <!-- single-line comment -->@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote name=\"foo\" fetch=\"sso://foo\" review=\"sso://foo\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote name=\"bar\" fetch=\"sso://bar\" review=\"sso://bar\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote name=\"host\" fetch=\"..\" review=\"sso://host\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote name=\"dotdot-prefix\" fetch=\"../prefix\" review=\"sso://host/prefix\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote name=\"host-prefix\" fetch=\"sso://host/prefix\"@@@",
"@@@STEP_LOG_LINE@default.xml@ review=\"sso://host/prefix\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <default remote=\"bar\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"a\" path=\"a1\" remote=\"foo\"@@@",
"@@@STEP_LOG_LINE@default.xml@ revision=\"1111111111111111111111111111111111111111\" upstream=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"b\" path=\"b2\"@@@",
"@@@STEP_LOG_LINE@default.xml@ revision=\"2222222222222222222222222222222222222222\" upstream=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <!--@@@",
"@@@STEP_LOG_LINE@default.xml@ multi@@@",
"@@@STEP_LOG_LINE@default.xml@ line@@@",
"@@@STEP_LOG_LINE@default.xml@ comment@@@",
"@@@STEP_LOG_LINE@default.xml@ -->@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"c\" path=\"c3\" revision=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"d\" path=\"d4\"@@@",
"@@@STEP_LOG_LINE@default.xml@ revision=\"0000000000111111111122222222223333333333\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"e5\" revision=\"refs/tags/e\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"f\" path=\"f6\" remote=\"host\" revision=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"g\" path=\"g7\" remote=\"dotdot-prefix\" revision=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"h\" path=\"h8\" remote=\"host-prefix\" revision=\"main\"/>@@@",
"@@@STEP_LOG_LINE@default.xml@</manifest>@@@",
"@@@STEP_LOG_END@default.xml@@@"
]
},
{
"cmd": [],
"name": "checkout b"
},
{
"cmd": [],
"name": "checkout b.options",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@remote: \"https://bar.googlesource.com/b\"\nbranch: \"main\"\n@@@"
]
},
{
"cmd": [],
"name": "checkout b.options with defaults",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@remote: \"https://bar.googlesource.com/b\"\nbranch: \"main\"\nmanifest_file: \"default.xml\"\nrepo_init_timeout_sec: 20\nrepo_sync_timeout_sec: 120\nnumber_of_attempts: 3\nsubmodule_timeout_sec: 600\n@@@"
]
},
{
"cmd": [],
"name": "checkout b.not matching branch names",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout b.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 b.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 b.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/bar.googlesource.com-b"
],
"infra_step": true,
"name": "checkout b.cache.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"init"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.cache.git init",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"remote.origin.url",
"https://bar.googlesource.com/b"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.cache.remote set-url",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"config",
"fetch.uriprotocols",
"https"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.cache.set fetch.uriprotocols",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout b.cache.timeout 10s",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"fetch",
"--prune",
"--tags",
"--jobs",
"4",
"origin",
"--no-recurse-submodules"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"merge",
"FETCH_HEAD"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.cache.git merge",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout b.cache.timeout 10s (2)",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"submodule",
"update",
"--recursive",
"--force",
"--jobs",
"4"
],
"cwd": "[CACHE]/git/bar.googlesource.com-b",
"infra_step": true,
"name": "checkout b.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 b.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/bar.googlesource.com-b",
"[START_DIR]/project"
],
"infra_step": true,
"name": "checkout b.copy from cache",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout b.git checkout",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [],
"name": "checkout b.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 b.git checkout.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"init"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout b.git checkout.git init",
"timeout": 300.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"remote",
"add",
"origin",
"https://bar.googlesource.com/b"
],
"cwd": "[START_DIR]/project",
"infra_step": true,
"name": "checkout b.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 b.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 b.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 b.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 b.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 b.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 b.git checkout.git clean",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
"name": "checkout b.git log",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"log",
"--oneline",
"-n",
"10"
],
"cwd": "[START_DIR]/project",
"name": "checkout b.git log.[START_DIR]/project",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [
"git",
"clean",
"-f",
"-f",
"-d"
],
"cwd": "[START_DIR]/project",
"name": "checkout b.git clean",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"status"
],
"cwd": "[START_DIR]/project",
"name": "checkout b.git 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",
"ensure-directory",
"--mode",
"0o777",
"[START_DIR]/snapshot"
],
"infra_step": true,
"name": "checkout b.mkdir",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"git",
"submodule",
"status",
"--recursive"
],
"cwd": "[START_DIR]/project",
"name": "checkout b.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 b.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 b.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 b.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": "git log",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@@@"
]
},
{
"cmd": [],
"name": "get roll direction",
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@forward@@@"
]
},
{
"cmd": [
"git",
"merge-base",
"--is-ancestor",
"2222222222222222222222222222222222222222",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
],
"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",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"2222222222222222222222222222222222222222"
],
"cwd": "[START_DIR]/project",
"name": "get roll direction.is backward",
"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",
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<manifest>\n <!-- single-line comment -->\n <remote fetch=\"sso://foo\" name=\"foo\" review=\"sso://foo\" />\n <remote fetch=\"sso://bar\" name=\"bar\" review=\"sso://bar\" />\n <remote fetch=\"..\" name=\"host\" review=\"sso://host\" />\n <remote fetch=\"../prefix\" name=\"dotdot-prefix\" review=\"sso://host/prefix\" />\n <remote fetch=\"sso://host/prefix\" name=\"host-prefix\" review=\"sso://host/prefix\" />\n <default remote=\"bar\" />\n <project name=\"a\" path=\"a1\" remote=\"foo\" revision=\"1111111111111111111111111111111111111111\" upstream=\"main\" />\n <project name=\"b\" path=\"b2\" revision=\"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\" upstream=\"main\" />\n <!--\n multi\n line\n comment\n -->\n <project name=\"c\" path=\"c3\" revision=\"main\" />\n <project name=\"d\" path=\"d4\" revision=\"0000000000111111111122222222223333333333\" />\n <project name=\"e5\" revision=\"refs/tags/e\" />\n <project name=\"f\" path=\"f6\" remote=\"host\" revision=\"main\" />\n <project name=\"g\" path=\"g7\" remote=\"dotdot-prefix\" revision=\"main\" />\n <project name=\"h\" path=\"h8\" remote=\"host-prefix\" revision=\"main\" />\n</manifest>\n",
"[START_DIR]/checkout/default.xml"
],
"infra_step": true,
"name": "write manifest",
"~followup_annotations": [
"@@@STEP_LOG_LINE@default.xml@<?xml version=\"1.0\" encoding=\"UTF-8\"?>@@@",
"@@@STEP_LOG_LINE@default.xml@<manifest>@@@",
"@@@STEP_LOG_LINE@default.xml@ <!-- single-line comment -->@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote fetch=\"sso://foo\" name=\"foo\" review=\"sso://foo\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote fetch=\"sso://bar\" name=\"bar\" review=\"sso://bar\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote fetch=\"..\" name=\"host\" review=\"sso://host\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote fetch=\"../prefix\" name=\"dotdot-prefix\" review=\"sso://host/prefix\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <remote fetch=\"sso://host/prefix\" name=\"host-prefix\" review=\"sso://host/prefix\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <default remote=\"bar\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"a\" path=\"a1\" remote=\"foo\" revision=\"1111111111111111111111111111111111111111\" upstream=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"b\" path=\"b2\" revision=\"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\" upstream=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <!--@@@",
"@@@STEP_LOG_LINE@default.xml@ multi@@@",
"@@@STEP_LOG_LINE@default.xml@ line@@@",
"@@@STEP_LOG_LINE@default.xml@ comment@@@",
"@@@STEP_LOG_LINE@default.xml@ -->@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"c\" path=\"c3\" revision=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"d\" path=\"d4\" revision=\"0000000000111111111122222222223333333333\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"e5\" revision=\"refs/tags/e\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"f\" path=\"f6\" remote=\"host\" revision=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"g\" path=\"g7\" remote=\"dotdot-prefix\" revision=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@ <project name=\"h\" path=\"h8\" remote=\"host-prefix\" revision=\"main\" />@@@",
"@@@STEP_LOG_LINE@default.xml@</manifest>@@@",
"@@@STEP_LOG_END@default.xml@@@"
]
},
{
"cmd": [],
"name": "change"
},
{
"cmd": [],
"name": "change.dir",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@[START_DIR]/project@@@"
]
},
{
"cmd": [],
"name": "change.old",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@2222222222222222222222222222222222222222@@@"
]
},
{
"cmd": [],
"name": "change.new",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@@@"
]
},
{
"cmd": [],
"name": "change.direction",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_SUMMARY_TEXT@Direction.FORWARD@@@"
]
},
{
"name": "$result"
}
]