Switch api.git.checkout calls to api.git_checkout
The fuchsia recipe `api.git.checkout*()` functions are deprecated in
favor of `api.git_checkout()`, so switch to using that instead.
Bug: fuchsia:99125
Change-Id: I58451112b9f32733b0a932babc83a11944fe18e8
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/29461
Commit-Queue: Oliver Newman <olivernewman@google.com>
Reviewed-by: Casey Hillers <chillers@google.com>
diff --git a/recipe_modules/repo_util/api.py b/recipe_modules/repo_util/api.py
index daa1f7b..ff4d982 100644
--- a/recipe_modules/repo_util/api.py
+++ b/recipe_modules/repo_util/api.py
@@ -167,7 +167,7 @@
if self.m.properties.get('git_branch', '') in ['beta', 'stable']:
branches = self.current_commit_branches(checkout_path)
branches = [b for b in branches if b.startswith('flutter')]
- # The following paragraph justifies why we need to write in the logic as one - liners
+ # The following paragraph justifies why we need to write in the logic as one - liners
# the way these tests work are that they will not execute the actual command, but execute a placeholder command
# given its original format of if statement, the closest I can get to trigger the logic is the following:
# release_checkout_path = api.path['start_dir'].join('release')
diff --git a/recipes/infra/luci_config.expected/basic.json b/recipes/infra/luci_config.expected/basic.json
index 946c7bd..25a46f1 100644
--- a/recipes/infra/luci_config.expected/basic.json
+++ b/recipes/infra/luci_config.expected/basic.json
@@ -1,5 +1,9 @@
[
{
+ "cmd": [],
+ "name": "checkout"
+ },
+ {
"cmd": [
"vpython",
"-u",
@@ -9,19 +13,26 @@
"ensure-directory",
"--mode",
"0777",
- "[START_DIR]/flutter-infra"
+ "[START_DIR]/infra"
],
"infra_step": true,
- "name": "makedirs"
+ "name": "checkout.makedirs",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
"git",
"init"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git init",
- "timeout": 60.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git init",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -31,9 +42,13 @@
"origin",
"https://flutter.googlesource.com/infra"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git remote",
- "timeout": 600.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git remote",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -42,13 +57,20 @@
"fetch.uriprotocols",
"https"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "set fetch.uriprotocols",
- "timeout": 60.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.set fetch.uriprotocols",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [],
- "name": "cache"
+ "name": "checkout.cache",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -62,11 +84,11 @@
"0777",
"[CACHE]/git"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.ensure git cache dir",
+ "name": "checkout.cache.ensure git cache dir",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -80,11 +102,11 @@
"",
"[CACHE]/git/.GUARD_FILE"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.write git cache guard file",
+ "name": "checkout.cache.write git cache guard file",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -99,11 +121,11 @@
"0777",
"[CACHE]/git/flutter.googlesource.com-infra"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.makedirs",
+ "name": "checkout.cache.makedirs",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -113,10 +135,11 @@
"--bare"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-infra",
- "name": "cache.git init",
+ "infra_step": true,
+ "name": "checkout.cache.git init",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -127,10 +150,11 @@
"https://flutter.googlesource.com/infra"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-infra",
- "name": "cache.remote set-url",
+ "infra_step": true,
+ "name": "checkout.cache.remote set-url",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -141,10 +165,11 @@
"https"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-infra",
- "name": "cache.set fetch.uriprotocols",
+ "infra_step": true,
+ "name": "checkout.cache.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -157,10 +182,11 @@
"\\+refs/heads/\\*:.*"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-infra",
- "name": "cache.replace fetch configs",
+ "infra_step": true,
+ "name": "checkout.cache.replace fetch configs",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -172,10 +198,11 @@
"origin"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-infra",
- "name": "cache.git fetch",
+ "infra_step": true,
+ "name": "checkout.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -188,13 +215,13 @@
"ensure-directory",
"--mode",
"0777",
- "[START_DIR]/flutter-infra/.git/objects/info"
+ "[START_DIR]/infra/.git/objects/info"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.makedirs object/info",
+ "name": "checkout.cache.makedirs object/info",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -206,13 +233,13 @@
"/path/to/tmp/json",
"copy",
"[CACHE]/git/flutter.googlesource.com-infra/objects\n",
- "[START_DIR]/flutter-infra/.git/objects/info/alternates"
+ "[START_DIR]/infra/.git/objects/info/alternates"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.alternates",
+ "name": "checkout.cache.alternates",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-infra/objects@@@",
"@@@STEP_LOG_END@alternates@@@"
]
@@ -227,11 +254,11 @@
"remove",
"[CACHE]/git/.GUARD_FILE"
],
- "cwd": "[START_DIR]/flutter-infra",
+ "cwd": "[START_DIR]/infra",
"infra_step": true,
- "name": "cache.remove git cache guard file",
+ "name": "checkout.cache.remove git cache guard file",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -242,9 +269,13 @@
"origin",
"main"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git fetch",
- "timeout": 1200.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -253,9 +284,13 @@
"-f",
"FETCH_HEAD"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git checkout",
- "timeout": 600.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git checkout",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -263,9 +298,13 @@
"rev-parse",
"HEAD"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git rev-parse",
- "timeout": 60.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git rev-parse",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -275,13 +314,20 @@
"-d",
"-x"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "git clean",
- "timeout": 600.0
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.git clean",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [],
- "name": "submodule"
+ "name": "checkout.submodule",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -289,11 +335,12 @@
"submodule",
"sync"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "submodule.git submodule sync",
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.submodule.git submodule sync",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -305,11 +352,12 @@
"--jobs",
"4"
],
- "cwd": "[START_DIR]/flutter-infra",
- "name": "submodule.git submodule update",
+ "cwd": "[START_DIR]/infra",
+ "infra_step": true,
+ "name": "checkout.submodule.git submodule update",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
diff --git a/recipes/infra/luci_config.expected/cq.json b/recipes/infra/luci_config.expected/cq.json
index 1037dfb..7707174 100644
--- a/recipes/infra/luci_config.expected/cq.json
+++ b/recipes/infra/luci_config.expected/cq.json
@@ -1,7 +1,7 @@
[
{
"cmd": [],
- "name": "fetch refs/heads/main"
+ "name": "checkout"
},
{
"cmd": [
@@ -28,7 +28,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.makedirs",
+ "name": "checkout.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
@@ -39,6 +39,7 @@
"init"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -51,7 +52,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git init",
+ "name": "checkout.git init",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -63,9 +64,10 @@
"remote",
"add",
"origin",
- "https://flutter.googlesource.com/recipes"
+ "https://flutter.googlesource.com/infra"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -78,7 +80,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git remote",
+ "name": "checkout.git remote",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -92,6 +94,7 @@
"https"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -104,7 +107,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.set fetch.uriprotocols",
+ "name": "checkout.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -112,7 +115,7 @@
},
{
"cmd": [],
- "name": "fetch refs/heads/main.cache",
+ "name": "checkout.cache",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
@@ -143,7 +146,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.ensure git cache dir",
+ "name": "checkout.cache.ensure git cache dir",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -173,7 +176,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.write git cache guard file",
+ "name": "checkout.cache.write git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -188,7 +191,7 @@
"ensure-directory",
"--mode",
"0777",
- "[CACHE]/git/flutter.googlesource.com-recipes"
+ "[CACHE]/git/flutter.googlesource.com-infra"
],
"cwd": "[START_DIR]/infra",
"infra_step": true,
@@ -204,7 +207,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.makedirs",
+ "name": "checkout.cache.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -215,7 +218,8 @@
"init",
"--bare"
],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "cwd": "[CACHE]/git/flutter.googlesource.com-infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -228,7 +232,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.git init",
+ "name": "checkout.cache.git init",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -239,9 +243,10 @@
"git",
"config",
"remote.origin.url",
- "https://flutter.googlesource.com/recipes"
+ "https://flutter.googlesource.com/infra"
],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "cwd": "[CACHE]/git/flutter.googlesource.com-infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -254,7 +259,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.remote set-url",
+ "name": "checkout.cache.remote set-url",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -267,7 +272,8 @@
"fetch.uriprotocols",
"https"
],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "cwd": "[CACHE]/git/flutter.googlesource.com-infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -280,7 +286,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.set fetch.uriprotocols",
+ "name": "checkout.cache.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -295,7 +301,8 @@
"+refs/heads/*:refs/heads/*",
"\\+refs/heads/\\*:.*"
],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "cwd": "[CACHE]/git/flutter.googlesource.com-infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -308,7 +315,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.replace fetch configs",
+ "name": "checkout.cache.replace fetch configs",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -322,7 +329,8 @@
"--tags",
"origin"
],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "cwd": "[CACHE]/git/flutter.googlesource.com-infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -335,7 +343,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.git fetch",
+ "name": "checkout.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -367,7 +375,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.makedirs object/info",
+ "name": "checkout.cache.makedirs object/info",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -380,7 +388,7 @@
"--json-output",
"/path/to/tmp/json",
"copy",
- "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
+ "[CACHE]/git/flutter.googlesource.com-infra/objects\n",
"[START_DIR]/infra/.git/objects/info/alternates"
],
"cwd": "[START_DIR]/infra",
@@ -397,10 +405,10 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.alternates",
+ "name": "checkout.cache.alternates",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
- "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
+ "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-infra/objects@@@",
"@@@STEP_LOG_END@alternates@@@"
]
},
@@ -428,7 +436,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.cache.remove git cache guard file",
+ "name": "checkout.cache.remove git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -442,6 +450,7 @@
"main"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -454,7 +463,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git fetch",
+ "name": "checkout.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -468,6 +477,7 @@
"FETCH_HEAD"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -480,7 +490,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git checkout",
+ "name": "checkout.git checkout",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -493,6 +503,7 @@
"HEAD"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -505,7 +516,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git rev-parse",
+ "name": "checkout.git rev-parse",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -520,6 +531,7 @@
"-x"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -532,7 +544,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.git clean",
+ "name": "checkout.git clean",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
@@ -540,7 +552,7 @@
},
{
"cmd": [],
- "name": "fetch refs/heads/main.submodule",
+ "name": "checkout.submodule",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
@@ -552,6 +564,7 @@
"sync"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -564,7 +577,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.submodule.git submodule sync",
+ "name": "checkout.submodule.git submodule sync",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -580,6 +593,7 @@
"4"
],
"cwd": "[START_DIR]/infra",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -592,7 +606,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch refs/heads/main.submodule.git submodule update",
+ "name": "checkout.submodule.git submodule update",
"timeout": 600.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -600,564 +614,6 @@
},
{
"cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/infra"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "makedirs"
- },
- {
- "cmd": [
- "git",
- "config",
- "--remove-section",
- "remote.origin"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "remove section",
- "timeout": 60.0
- },
- {
- "cmd": [
- "git",
- "remote",
- "add",
- "origin",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git remote",
- "timeout": 600.0
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "set fetch.uriprotocols",
- "timeout": 60.0
- },
- {
- "cmd": [],
- "name": "cache"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.write git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[CACHE]/git/flutter.googlesource.com-recipes"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "init",
- "--bare"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git init",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "remote.origin.url",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remote set-url",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.set fetch.uriprotocols",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "--replace-all",
- "remote.origin.fetch",
- "+refs/heads/*:refs/heads/*",
- "\\+refs/heads/\\*:.*"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.replace fetch configs",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--prune",
- "--tags",
- "origin"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git fetch",
- "timeout": 1200.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/infra/.git/objects/info"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs object/info",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
- "[START_DIR]/infra/.git/objects/info/alternates"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.alternates",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
- "@@@STEP_LOG_END@alternates@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "remove",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remove git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--tags",
- "origin",
- "refs/changes/56/123456/7"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git fetch",
- "timeout": 1200.0
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git checkout",
- "timeout": 600.0
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git rev-parse",
- "timeout": 60.0
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git clean",
- "timeout": 600.0
- },
- {
- "cmd": [],
- "name": "submodule"
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "submodule.git submodule sync",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--jobs",
- "4"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "submodule.git submodule update",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rebase",
- "deadbeef"
- ],
- "cwd": "[START_DIR]/infra",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git rebase",
- "timeout": 60.0
- },
- {
- "cmd": [
"git",
"log",
"--oneline",
diff --git a/recipes/infra/luci_config.py b/recipes/infra/luci_config.py
index e026497..510f0bd 100644
--- a/recipes/infra/luci_config.py
+++ b/recipes/infra/luci_config.py
@@ -8,6 +8,7 @@
DEPS = [
'fuchsia/git',
+ 'fuchsia/git_checkout',
'recipe_engine/buildbucket',
'recipe_engine/context',
'recipe_engine/path',
@@ -19,15 +20,7 @@
start_path = api.path['start_dir']
infra_path = start_path.join('infra')
# Checkout flutter/infra
- bb_input = api.buildbucket.build.input
- if bb_input.gerrit_changes:
- api.git.checkout_cl(
- bb_input.gerrit_changes[0], infra_path, onto='refs/heads/main'
- )
- else:
- api.git.checkout(
- 'https://flutter.googlesource.com/infra', ref='refs/heads/main'
- )
+ api.git_checkout('https://flutter.googlesource.com/infra', path=infra_path)
with api.context(cwd=infra_path):
api.git('log', 'log', '--oneline', '-n', '10')
# Validate LUCI config
diff --git a/recipes/recipes.expected/ci.json b/recipes/recipes.expected/ci.json
index 8277f1e..6e5a4b3 100644
--- a/recipes/recipes.expected/ci.json
+++ b/recipes/recipes.expected/ci.json
@@ -1,45 +1,11 @@
[
{
"cmd": [],
- "name": "ensure gerrit"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "RECIPE_MODULE[fuchsia::gerrit]/resources/tool_manifest.json",
- "/path/to/tmp/json"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.read manifest",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@{@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@ \"path\": \"path/to/gerrit\",@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@ \"version\": \"version:pinned-version\"@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@}@@@",
- "@@@STEP_LOG_END@tool_manifest.json@@@"
- ]
+ "name": "checkout"
},
{
"cmd": [],
- "name": "ensure gerrit.install path/to/gerrit",
+ "name": "checkout.fetch refs/heads/main",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
@@ -54,135 +20,6 @@
"ensure-directory",
"--mode",
"0777",
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.install path/to/gerrit.ensure package directory",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "cipd",
- "ensure",
- "-root",
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version",
- "-ensure-file",
- "path/to/gerrit version:pinned-version",
- "-max-threads",
- "0",
- "-json-output",
- "/path/to/tmp/json"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.install path/to/gerrit.ensure_installed",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@",
- "@@@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\": \"path/to/gerrit\"@@@",
- "@@@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/path/to/gerrit/version%3Apinned-version/gerrit",
- "change-detail",
- "-host",
- "https://flutter-review.googlesource.com",
- "-input",
- "{\"change_id\": \"123456\", \"params\": {\"o\": [\"CURRENT_COMMIT\", \"CURRENT_REVISION\"]}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "details",
- "timeout": 30,
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"branch\": \"main\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"current_revision\": \"ffffffffffffffffffffffffffffffffffffffff\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"revisions\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"ffffffffffffffffffffffffffffffffffffffff\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"commit\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"parents\": [@@@",
- "@@@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@ }@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"123456\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_COMMIT\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_REVISION\"@@@",
- "@@@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://flutter-review.googlesource.com/q/123456@@@"
- ]
- },
- {
- "cmd": [],
- "name": "fetch main"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
"[START_DIR]/recipes"
],
"infra_step": true,
@@ -198,9 +35,9 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.makedirs",
+ "name": "checkout.fetch refs/heads/main.makedirs",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -209,6 +46,7 @@
"init"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -221,10 +59,10 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.git init",
+ "name": "checkout.fetch refs/heads/main.git init",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -236,6 +74,7 @@
"https://flutter.googlesource.com/recipes"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -248,10 +87,10 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.git remote",
+ "name": "checkout.fetch refs/heads/main.git remote",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -262,6 +101,7 @@
"https"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -274,17 +114,17 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.set fetch.uriprotocols",
+ "name": "checkout.fetch refs/heads/main.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
- "name": "fetch main.cache",
+ "name": "checkout.fetch refs/heads/main.cache",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -313,9 +153,9 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.ensure git cache dir",
+ "name": "checkout.fetch refs/heads/main.cache.ensure git cache dir",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
+ "@@@STEP_NEST_LEVEL@3@@@"
]
},
{
@@ -343,7 +183,587 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.write git cache guard file",
+ "name": "checkout.fetch refs/heads/main.cache.write git cache guard file",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[CACHE]/git/flutter.googlesource.com-recipes"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.makedirs",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "init",
+ "--bare"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.git init",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "remote.origin.url",
+ "https://flutter.googlesource.com/recipes"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.remote set-url",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "fetch.uriprotocols",
+ "https"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.set fetch.uriprotocols",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "--replace-all",
+ "remote.origin.fetch",
+ "+refs/heads/*:refs/heads/*",
+ "\\+refs/heads/\\*:.*"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.replace fetch configs",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "fetch",
+ "--prune",
+ "--tags",
+ "origin"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[START_DIR]/recipes/.git/objects/info"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.makedirs object/info",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
+ "[START_DIR]/recipes/.git/objects/info/alternates"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.alternates",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@",
+ "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
+ "@@@STEP_LOG_END@alternates@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "remove",
+ "[CACHE]/git/.GUARD_FILE"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.remove git cache guard file",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "fetch",
+ "--tags",
+ "origin",
+ "main"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "checkout",
+ "-f",
+ "FETCH_HEAD"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git checkout",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "rev-parse",
+ "HEAD"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git rev-parse",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "clean",
+ "-f",
+ "-d",
+ "-x"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git clean",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "checkout.fetch refs/heads/main.submodule",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "submodule",
+ "sync"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.submodule.git submodule sync",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "submodule",
+ "update",
+ "--init",
+ "--jobs",
+ "4"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.submodule.git submodule update",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[START_DIR]/recipes"
+ ],
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.makedirs",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "--remove-section",
+ "remote.origin"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.remove section",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "remote",
+ "add",
+ "origin",
+ "https://flutter.googlesource.com/recipes"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.git remote",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "fetch.uriprotocols",
+ "https"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.set fetch.uriprotocols",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "checkout.cache",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "",
+ "[CACHE]/git/.GUARD_FILE"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.cache.write git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -374,7 +794,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.makedirs",
+ "name": "checkout.cache.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -386,6 +806,7 @@
"--bare"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -398,7 +819,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.git init",
+ "name": "checkout.cache.git init",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -412,6 +833,7 @@
"https://flutter.googlesource.com/recipes"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -424,7 +846,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.remote set-url",
+ "name": "checkout.cache.remote set-url",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -438,6 +860,7 @@
"https"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -450,7 +873,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.set fetch.uriprotocols",
+ "name": "checkout.cache.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -466,6 +889,7 @@
"\\+refs/heads/\\*:.*"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -478,7 +902,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.replace fetch configs",
+ "name": "checkout.cache.replace fetch configs",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -493,6 +917,7 @@
"origin"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -505,7 +930,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.git fetch",
+ "name": "checkout.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -537,7 +962,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.makedirs object/info",
+ "name": "checkout.cache.makedirs object/info",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -567,7 +992,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.alternates",
+ "name": "checkout.cache.alternates",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
@@ -598,7 +1023,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.remove git cache guard file",
+ "name": "checkout.cache.remove git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -609,560 +1034,10 @@
"fetch",
"--tags",
"origin",
- "main"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git fetch",
- "timeout": 1200.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git checkout",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git rev-parse",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git clean",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "fetch main.submodule",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.submodule.git submodule sync",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--jobs",
- "4"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.submodule.git submodule update",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/recipes"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "makedirs"
- },
- {
- "cmd": [
- "git",
- "config",
- "--remove-section",
- "remote.origin"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "remove section",
- "timeout": 60.0
- },
- {
- "cmd": [
- "git",
- "remote",
- "add",
- "origin",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git remote",
- "timeout": 600.0
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "set fetch.uriprotocols",
- "timeout": 60.0
- },
- {
- "cmd": [],
- "name": "cache"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.write git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[CACHE]/git/flutter.googlesource.com-recipes"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "init",
- "--bare"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git init",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "remote.origin.url",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remote set-url",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.set fetch.uriprotocols",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "--replace-all",
- "remote.origin.fetch",
- "+refs/heads/*:refs/heads/*",
- "\\+refs/heads/\\*:.*"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.replace fetch configs",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--prune",
- "--tags",
- "origin"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git fetch",
- "timeout": 1200.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/recipes/.git/objects/info"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs object/info",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
- "[START_DIR]/recipes/.git/objects/info/alternates"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.alternates",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
- "@@@STEP_LOG_END@alternates@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "remove",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remove git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--tags",
- "origin",
"refs/changes/56/123456/7"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1175,8 +1050,11 @@
"hostname": "rdbhost"
}
},
- "name": "git fetch",
- "timeout": 1200.0
+ "name": "checkout.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1186,6 +1064,7 @@
"FETCH_HEAD"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1198,8 +1077,11 @@
"hostname": "rdbhost"
}
},
- "name": "git checkout",
- "timeout": 600.0
+ "name": "checkout.git checkout",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1208,6 +1090,7 @@
"HEAD"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1220,8 +1103,11 @@
"hostname": "rdbhost"
}
},
- "name": "git rev-parse",
- "timeout": 60.0
+ "name": "checkout.git rev-parse",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1232,6 +1118,7 @@
"-x"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1244,12 +1131,18 @@
"hostname": "rdbhost"
}
},
- "name": "git clean",
- "timeout": 600.0
+ "name": "checkout.git clean",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [],
- "name": "submodule"
+ "name": "checkout.submodule",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1258,6 +1151,7 @@
"sync"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1270,10 +1164,10 @@
"hostname": "rdbhost"
}
},
- "name": "submodule.git submodule sync",
+ "name": "checkout.submodule.git submodule sync",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -1286,6 +1180,7 @@
"4"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1298,10 +1193,10 @@
"hostname": "rdbhost"
}
},
- "name": "submodule.git submodule update",
+ "name": "checkout.submodule.git submodule update",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -1311,6 +1206,7 @@
"deadbeef"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1323,8 +1219,11 @@
"hostname": "rdbhost"
}
},
- "name": "git rebase",
- "timeout": 60.0
+ "name": "checkout.git rebase",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
diff --git a/recipes/recipes.expected/cq_try.json b/recipes/recipes.expected/cq_try.json
index 8277f1e..6e5a4b3 100644
--- a/recipes/recipes.expected/cq_try.json
+++ b/recipes/recipes.expected/cq_try.json
@@ -1,45 +1,11 @@
[
{
"cmd": [],
- "name": "ensure gerrit"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "RECIPE_MODULE[fuchsia::gerrit]/resources/tool_manifest.json",
- "/path/to/tmp/json"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.read manifest",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@{@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@ \"path\": \"path/to/gerrit\",@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@ \"version\": \"version:pinned-version\"@@@",
- "@@@STEP_LOG_LINE@tool_manifest.json@}@@@",
- "@@@STEP_LOG_END@tool_manifest.json@@@"
- ]
+ "name": "checkout"
},
{
"cmd": [],
- "name": "ensure gerrit.install path/to/gerrit",
+ "name": "checkout.fetch refs/heads/main",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
@@ -54,135 +20,6 @@
"ensure-directory",
"--mode",
"0777",
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.install path/to/gerrit.ensure package directory",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "cipd",
- "ensure",
- "-root",
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version",
- "-ensure-file",
- "path/to/gerrit version:pinned-version",
- "-max-threads",
- "0",
- "-json-output",
- "/path/to/tmp/json"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "ensure gerrit.install path/to/gerrit.ensure_installed",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@",
- "@@@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\": \"path/to/gerrit\"@@@",
- "@@@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/path/to/gerrit/version%3Apinned-version/gerrit",
- "change-detail",
- "-host",
- "https://flutter-review.googlesource.com",
- "-input",
- "{\"change_id\": \"123456\", \"params\": {\"o\": [\"CURRENT_COMMIT\", \"CURRENT_REVISION\"]}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "details",
- "timeout": 30,
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"branch\": \"main\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"current_revision\": \"ffffffffffffffffffffffffffffffffffffffff\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"revisions\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"ffffffffffffffffffffffffffffffffffffffff\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"commit\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"parents\": [@@@",
- "@@@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@ }@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"123456\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_COMMIT\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_REVISION\"@@@",
- "@@@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://flutter-review.googlesource.com/q/123456@@@"
- ]
- },
- {
- "cmd": [],
- "name": "fetch main"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
"[START_DIR]/recipes"
],
"infra_step": true,
@@ -198,9 +35,9 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.makedirs",
+ "name": "checkout.fetch refs/heads/main.makedirs",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -209,6 +46,7 @@
"init"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -221,10 +59,10 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.git init",
+ "name": "checkout.fetch refs/heads/main.git init",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -236,6 +74,7 @@
"https://flutter.googlesource.com/recipes"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -248,10 +87,10 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.git remote",
+ "name": "checkout.fetch refs/heads/main.git remote",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -262,6 +101,7 @@
"https"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -274,17 +114,17 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.set fetch.uriprotocols",
+ "name": "checkout.fetch refs/heads/main.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
"cmd": [],
- "name": "fetch main.cache",
+ "name": "checkout.fetch refs/heads/main.cache",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -313,9 +153,9 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.ensure git cache dir",
+ "name": "checkout.fetch refs/heads/main.cache.ensure git cache dir",
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
+ "@@@STEP_NEST_LEVEL@3@@@"
]
},
{
@@ -343,7 +183,587 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.write git cache guard file",
+ "name": "checkout.fetch refs/heads/main.cache.write git cache guard file",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[CACHE]/git/flutter.googlesource.com-recipes"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.makedirs",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "init",
+ "--bare"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.git init",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "remote.origin.url",
+ "https://flutter.googlesource.com/recipes"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.remote set-url",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "fetch.uriprotocols",
+ "https"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.set fetch.uriprotocols",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "--replace-all",
+ "remote.origin.fetch",
+ "+refs/heads/*:refs/heads/*",
+ "\\+refs/heads/\\*:.*"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.replace fetch configs",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "fetch",
+ "--prune",
+ "--tags",
+ "origin"
+ ],
+ "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[START_DIR]/recipes/.git/objects/info"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.makedirs object/info",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
+ "[START_DIR]/recipes/.git/objects/info/alternates"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.alternates",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@",
+ "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
+ "@@@STEP_LOG_END@alternates@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "remove",
+ "[CACHE]/git/.GUARD_FILE"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.cache.remove git cache guard file",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "fetch",
+ "--tags",
+ "origin",
+ "main"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "checkout",
+ "-f",
+ "FETCH_HEAD"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git checkout",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "rev-parse",
+ "HEAD"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git rev-parse",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "clean",
+ "-f",
+ "-d",
+ "-x"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.git clean",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "checkout.fetch refs/heads/main.submodule",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "submodule",
+ "sync"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.submodule.git submodule sync",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "submodule",
+ "update",
+ "--init",
+ "--jobs",
+ "4"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.fetch refs/heads/main.submodule.git submodule update",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "ensure-directory",
+ "--mode",
+ "0777",
+ "[START_DIR]/recipes"
+ ],
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.makedirs",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "--remove-section",
+ "remote.origin"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.remove section",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "remote",
+ "add",
+ "origin",
+ "https://flutter.googlesource.com/recipes"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.git remote",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "git",
+ "config",
+ "fetch.uriprotocols",
+ "https"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.set fetch.uriprotocols",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "checkout.cache",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "",
+ "[CACHE]/git/.GUARD_FILE"
+ ],
+ "cwd": "[START_DIR]/recipes",
+ "infra_step": true,
+ "luci_context": {
+ "realm": {
+ "name": "project:try"
+ },
+ "resultdb": {
+ "current_invocation": {
+ "name": "invocations/build:8945511751514863184",
+ "update_token": "token"
+ },
+ "hostname": "rdbhost"
+ }
+ },
+ "name": "checkout.cache.write git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -374,7 +794,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.makedirs",
+ "name": "checkout.cache.makedirs",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -386,6 +806,7 @@
"--bare"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -398,7 +819,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.git init",
+ "name": "checkout.cache.git init",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -412,6 +833,7 @@
"https://flutter.googlesource.com/recipes"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -424,7 +846,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.remote set-url",
+ "name": "checkout.cache.remote set-url",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -438,6 +860,7 @@
"https"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -450,7 +873,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.set fetch.uriprotocols",
+ "name": "checkout.cache.set fetch.uriprotocols",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -466,6 +889,7 @@
"\\+refs/heads/\\*:.*"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -478,7 +902,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.replace fetch configs",
+ "name": "checkout.cache.replace fetch configs",
"timeout": 60.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -493,6 +917,7 @@
"origin"
],
"cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -505,7 +930,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.git fetch",
+ "name": "checkout.cache.git fetch",
"timeout": 1200.0,
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
@@ -537,7 +962,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.makedirs object/info",
+ "name": "checkout.cache.makedirs object/info",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -567,7 +992,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.alternates",
+ "name": "checkout.cache.alternates",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
@@ -598,7 +1023,7 @@
"hostname": "rdbhost"
}
},
- "name": "fetch main.cache.remove git cache guard file",
+ "name": "checkout.cache.remove git cache guard file",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@"
]
@@ -609,560 +1034,10 @@
"fetch",
"--tags",
"origin",
- "main"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git fetch",
- "timeout": 1200.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git checkout",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git rev-parse",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.git clean",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "fetch main.submodule",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.submodule.git submodule sync",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--jobs",
- "4"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "fetch main.submodule.git submodule update",
- "timeout": 600.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@2@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/recipes"
- ],
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "makedirs"
- },
- {
- "cmd": [
- "git",
- "config",
- "--remove-section",
- "remote.origin"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "remove section",
- "timeout": 60.0
- },
- {
- "cmd": [
- "git",
- "remote",
- "add",
- "origin",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "git remote",
- "timeout": 600.0
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[START_DIR]/recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "set fetch.uriprotocols",
- "timeout": 60.0
- },
- {
- "cmd": [],
- "name": "cache"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.write git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[CACHE]/git/flutter.googlesource.com-recipes"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "init",
- "--bare"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git init",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "remote.origin.url",
- "https://flutter.googlesource.com/recipes"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remote set-url",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "fetch.uriprotocols",
- "https"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.set fetch.uriprotocols",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "config",
- "--replace-all",
- "remote.origin.fetch",
- "+refs/heads/*:refs/heads/*",
- "\\+refs/heads/\\*:.*"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.replace fetch configs",
- "timeout": 60.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--prune",
- "--tags",
- "origin"
- ],
- "cwd": "[CACHE]/git/flutter.googlesource.com-recipes",
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.git fetch",
- "timeout": 1200.0,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[START_DIR]/recipes/.git/objects/info"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.makedirs object/info",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "[CACHE]/git/flutter.googlesource.com-recipes/objects\n",
- "[START_DIR]/recipes/.git/objects/info/alternates"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.alternates",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@alternates@[CACHE]/git/flutter.googlesource.com-recipes/objects@@@",
- "@@@STEP_LOG_END@alternates@@@"
- ]
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "remove",
- "[CACHE]/git/.GUARD_FILE"
- ],
- "cwd": "[START_DIR]/recipes",
- "infra_step": true,
- "luci_context": {
- "realm": {
- "name": "project:try"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cache.remove git cache guard file",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "--tags",
- "origin",
"refs/changes/56/123456/7"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1175,8 +1050,11 @@
"hostname": "rdbhost"
}
},
- "name": "git fetch",
- "timeout": 1200.0
+ "name": "checkout.git fetch",
+ "timeout": 1200.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1186,6 +1064,7 @@
"FETCH_HEAD"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1198,8 +1077,11 @@
"hostname": "rdbhost"
}
},
- "name": "git checkout",
- "timeout": 600.0
+ "name": "checkout.git checkout",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1208,6 +1090,7 @@
"HEAD"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1220,8 +1103,11 @@
"hostname": "rdbhost"
}
},
- "name": "git rev-parse",
- "timeout": 60.0
+ "name": "checkout.git rev-parse",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1232,6 +1118,7 @@
"-x"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1244,12 +1131,18 @@
"hostname": "rdbhost"
}
},
- "name": "git clean",
- "timeout": 600.0
+ "name": "checkout.git clean",
+ "timeout": 600.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [],
- "name": "submodule"
+ "name": "checkout.submodule",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
@@ -1258,6 +1151,7 @@
"sync"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1270,10 +1164,10 @@
"hostname": "rdbhost"
}
},
- "name": "submodule.git submodule sync",
+ "name": "checkout.submodule.git submodule sync",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -1286,6 +1180,7 @@
"4"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1298,10 +1193,10 @@
"hostname": "rdbhost"
}
},
- "name": "submodule.git submodule update",
+ "name": "checkout.submodule.git submodule update",
"timeout": 600.0,
"~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
+ "@@@STEP_NEST_LEVEL@2@@@"
]
},
{
@@ -1311,6 +1206,7 @@
"deadbeef"
],
"cwd": "[START_DIR]/recipes",
+ "infra_step": true,
"luci_context": {
"realm": {
"name": "project:try"
@@ -1323,8 +1219,11 @@
"hostname": "rdbhost"
}
},
- "name": "git rebase",
- "timeout": 60.0
+ "name": "checkout.git rebase",
+ "timeout": 60.0,
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
},
{
"cmd": [
diff --git a/recipes/recipes.py b/recipes/recipes.py
index 2f70856..3f62cc2 100644
--- a/recipes/recipes.py
+++ b/recipes/recipes.py
@@ -15,6 +15,7 @@
DEPS = [
'fuchsia/commit_queue',
'fuchsia/git',
+ 'fuchsia/git_checkout',
'fuchsia/recipe_testing',
'fuchsia/status_check',
'fuchsia/gerrit',
@@ -124,33 +125,9 @@
use_buildbucket = attr.ib(default=False)
-def GetBranch(api, change):
- details = api.gerrit.change_details(
- 'details',
- change_id=str(change.change),
- host=change.host,
- max_attempts=5,
- query_params=['CURRENT_COMMIT', 'CURRENT_REVISION',],
- timeout=30,
- test_data=api.json.test_api.output(
- {
- 'branch': 'main',
- 'current_revision': 'f' * 40,
- 'revisions': {'f' * 40: {'commit': {'parents': [{}],},},},
- }
- ),
- ).json.output
- return details['branch']
-
-
def RunSteps(api, remote, unittest_only):
checkout_path = api.path['start_dir'].join('recipes')
- bb_input = api.buildbucket.build.input
- branch = GetBranch(api, bb_input.gerrit_changes[0])
- api.git.checkout_cl(
- bb_input.gerrit_changes[0], checkout_path,
- onto=branch
- )
+ api.git_checkout(remote, path=checkout_path)
with api.context(cwd=checkout_path):
api.git('log', 'log', '--oneline', '-n', '10')
api.recipe_testing.projects = ('flutter',)
@@ -173,7 +150,7 @@
api.recipe_testing
.build_data('flutter/try/flutter-bar', 'flutter', skip=True) +
api.recipe_testing
- .build_data('flutter/try/flutter-baz', 'project', skip=True) +
+ .build_data('flutter/try/flutter-baz', 'project', skip=True) +
api.buildbucket.try_build(
git_repo='https://flutter.googlesource.com/recipes'
)