Revert "Reland "Migrate device_lab_test recipes to shard_util v2.""

This reverts commit 948672df897ccf9341c7c26456246a050a656fcb.

Reason for revert: Dependencies are not installed in the subbuild,

Original change's description:
> Reland "Migrate device_lab_test recipes to shard_util v2."
>
> This is a reland of commit 5f1f48c449366bcc8d724434ea5100e7d20bc17e
>
> Original change's description:
> > Migrate device_lab_test recipes to shard_util v2.
> >
> > This is part of the cleanup required to support release_candidate
> > branches of recipes in a single place.
> >
> > Bug: https://github.com/flutter/flutter/issues/114943
> > Change-Id: Iaed28aad84e4aca7738f85e519ee8b500095cc8f
> > Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/36023
> > Reviewed-by: Keyong Han <keyonghan@google.com>
> > Commit-Queue: Godofredo Contreras <godofredoc@google.com>
>
> Bug: https://github.com/flutter/flutter/issues/114943
> Change-Id: I50c06cd0e714eb04e4a768f1fdcad5e073c9a42f
> Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/36027
> Reviewed-by: Keyong Han <keyonghan@google.com>
> Commit-Queue: Godofredo Contreras <godofredoc@google.com>

TBR=godofredoc@google.com,keyonghan@google.com,flutter-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I08274592f0bb2d14c19a815d1f12cfde32696fa2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/flutter/flutter/issues/114943
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/36140
Reviewed-by: Godofredo Contreras <godofredoc@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
diff --git a/recipes/devicelab/devicelab_drone_build_test.expected/artifact does not exist.json b/recipes/devicelab/devicelab_drone_build_test.expected/artifact does not exist.json
index 50450a5..3c10a31 100644
--- a/recipes/devicelab/devicelab_drone_build_test.expected/artifact does not exist.json
+++ b/recipes/devicelab/devicelab_drone_build_test.expected/artifact does not exist.json
@@ -11,7 +11,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -32,12 +32,12 @@
       "RECIPE_REPO[depot_tools]/gsutil.py",
       "----",
       "ls",
-      "gs://flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
+      "gs://flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
     ],
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -65,7 +65,7 @@
     ],
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -97,7 +97,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -123,7 +123,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -148,7 +148,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -177,7 +177,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -202,7 +202,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -229,7 +229,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -254,7 +254,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -285,7 +285,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -323,7 +323,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -363,7 +363,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -403,7 +403,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -454,7 +454,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -485,7 +485,7 @@
       "cp",
       "-r",
       "[CLEANUP]/tmp_tmp_2/*",
-      "gs://flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
+      "gs://flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
     ],
     "cwd": "[CLEANUP]/tmp_tmp_1/flutter sdk/dev/devicelab",
     "env": {
@@ -510,7 +510,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -522,7 +522,7 @@
     },
     "name": "gsutil upload artifacts",
     "~followup_annotations": [
-      "@@@STEP_LINK@artifacts@https://console.cloud.google.com/storage/browser/flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def@@@"
+      "@@@STEP_LINK@artifacts@https://console.cloud.google.com/storage/browser/flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def@@@"
     ]
   },
   {
@@ -557,7 +557,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -600,7 +600,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -643,7 +643,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -686,7 +686,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -729,7 +729,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -776,7 +776,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -789,10 +789,6 @@
     "name": "OS info (2)"
   },
   {
-    "cmd": [],
-    "name": "launch builds"
-  },
-  {
     "cmd": [
       "bb",
       "batch",
@@ -802,7 +798,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -812,17 +808,16 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"prod\", \"builder\": \"Linux Production Engine Drone\", \"project\": \"test\"}, \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gitilesCommit\": {\"host\": \"git.example.com\", \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", \"project\": \"test/repo\", \"ref\": \"refs/heads/main\"}, \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"build\": {\"drone_dimensions\": [], \"name\": \"abc\", \"properties\": {\"artifact\": \"def\", \"drone_dependencies\": [], \"git_branch\": \"master\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}}, \"drone_dependencies\": [], \"git_branch\": \"master\", \"git_ref\": \"refs/pull/1/head\", \"parent_builder\": \"Linux abc\", \"recipe\": \"devicelab/devicelab_test_drone\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "name": "buildbucket.schedule",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"ci\", \"builder\": \"Linux Devicelab Test Drone\", \"project\": \"test\"}, \"exe\": {\"cipdVersion\": \"refs/heads/master\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gitilesCommit\": {\"host\": \"git.example.com\", \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", \"project\": \"test/repo\", \"ref\": \"refs/heads/main\"}, \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"dependencies\": [], \"git_branch\": \"master\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
       "@@@STEP_LOG_LINE@json.output@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@json.output@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Production Engine Drone\", @@@",
+      "@@@STEP_LOG_LINE@json.output@          \"bucket\": \"ci\", @@@",
+      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Devicelab Test Drone\", @@@",
       "@@@STEP_LOG_LINE@json.output@          \"project\": \"test\"@@@",
       "@@@STEP_LOG_LINE@json.output@        }, @@@",
       "@@@STEP_LOG_LINE@json.output@        \"id\": \"8922054662172514000\"@@@",
@@ -836,12 +831,12 @@
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@request@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Production Engine Drone\", @@@",
+      "@@@STEP_LOG_LINE@request@          \"bucket\": \"ci\", @@@",
+      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Devicelab Test Drone\", @@@",
       "@@@STEP_LOG_LINE@request@          \"project\": \"test\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"exe\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/main\"@@@",
+      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/master\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"experimental\": \"NO\", @@@",
       "@@@STEP_LOG_LINE@request@        \"experiments\": {@@@",
@@ -857,23 +852,9 @@
       "@@@STEP_LOG_LINE@request@        \"priority\": 25, @@@",
       "@@@STEP_LOG_LINE@request@        \"properties\": {@@@",
       "@@@STEP_LOG_LINE@request@          \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"build\": {@@@",
-      "@@@STEP_LOG_LINE@request@            \"drone_dimensions\": [], @@@",
-      "@@@STEP_LOG_LINE@request@            \"name\": \"abc\", @@@",
-      "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
-      "@@@STEP_LOG_LINE@request@              \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"drone_dependencies\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"git_branch\": \"master\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"tags\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"task_name\": \"abc\"@@@",
-      "@@@STEP_LOG_LINE@request@            }@@@",
-      "@@@STEP_LOG_LINE@request@          }, @@@",
-      "@@@STEP_LOG_LINE@request@          \"drone_dependencies\": [], @@@",
+      "@@@STEP_LOG_LINE@request@          \"dependencies\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"git_branch\": \"master\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"git_ref\": \"refs/pull/1/head\", @@@",
       "@@@STEP_LOG_LINE@request@          \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"recipe\": \"devicelab/devicelab_test_drone\", @@@",
       "@@@STEP_LOG_LINE@request@          \"tags\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"task_name\": \"abc\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
@@ -901,14 +882,14 @@
   },
   {
     "cmd": [],
-    "name": "collect builds"
+    "name": "Task Shards",
+    "~followup_annotations": [
+      "@@@STEP_LINK@@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
+    ]
   },
   {
     "cmd": [],
-    "name": "collect builds.collect",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "buildbucket.collect"
   },
   {
     "cmd": [
@@ -917,13 +898,13 @@
       "-host",
       "cr-buildbucket.appspot.com",
       "-interval",
-      "20s",
+      "60s",
       "8922054662172514000"
     ],
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -933,10 +914,10 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "collect builds.collect.wait",
-    "timeout": 86400,
+    "name": "buildbucket.collect.wait",
+    "timeout": 10800,
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -949,7 +930,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -959,10 +940,10 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "collect builds.collect.get",
-    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
+    "name": "buildbucket.collect.get",
+    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
@@ -978,7 +959,7 @@
       "@@@STEP_LOG_LINE@request@  \"requests\": [@@@",
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"getBuild\": {@@@",
-      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
+      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
       "@@@STEP_LOG_LINE@request@        \"id\": \"8922054662172514000\"@@@",
       "@@@STEP_LOG_LINE@request@      }@@@",
       "@@@STEP_LOG_LINE@request@    }@@@",
@@ -990,16 +971,13 @@
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "display builds"
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds.abc",
+    "name": "display builds.",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LINK@8922054662172514000@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
     ]
   },
diff --git a/recipes/devicelab/devicelab_drone_build_test.expected/artifact exists.json b/recipes/devicelab/devicelab_drone_build_test.expected/artifact exists.json
index 4473780..2492bb3 100644
--- a/recipes/devicelab/devicelab_drone_build_test.expected/artifact exists.json
+++ b/recipes/devicelab/devicelab_drone_build_test.expected/artifact exists.json
@@ -9,18 +9,6 @@
       "%MEM"
     ],
     "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "test:prod"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
     "name": "OS info"
   },
   {
@@ -32,28 +20,12 @@
       "RECIPE_REPO[depot_tools]/gsutil.py",
       "----",
       "ls",
-      "gs://flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
+      "gs://flutter_devicelab/flutter//refs/pull/1/head/def"
     ],
     "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "test:prod"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
     "name": "gsutil list"
   },
   {
-    "cmd": [],
-    "name": "launch builds"
-  },
-  {
     "cmd": [
       "bb",
       "batch",
@@ -61,30 +33,15 @@
       "cr-buildbucket.appspot.com"
     ],
     "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "test:prod"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"prod\", \"builder\": \"Linux Production Engine Drone\", \"project\": \"test\"}, \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gitilesCommit\": {\"host\": \"git.example.com\", \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", \"project\": \"test/repo\", \"ref\": \"refs/heads/master\"}, \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"build\": {\"drone_dimensions\": [], \"name\": \"abc\", \"properties\": {\"artifact\": \"def\", \"drone_dependencies\": [], \"git_branch\": \"master\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}}, \"drone_dependencies\": [], \"git_branch\": \"master\", \"git_ref\": \"refs/pull/1/head\", \"git_url\": \"test/repo\", \"parent_builder\": \"Linux abc\", \"recipe\": \"devicelab/devicelab_test_drone\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "name": "buildbucket.schedule",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"builder\": \"Linux Devicelab Test Drone\"}, \"exe\": {\"cipdVersion\": \"refs/heads/master\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"dependencies\": [], \"git_branch\": \"master\", \"git_ref\": \"refs/pull/1/head\", \"git_url\": \"test/repo\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"0-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"0\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
       "@@@STEP_LOG_LINE@json.output@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@json.output@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Production Engine Drone\", @@@",
-      "@@@STEP_LOG_LINE@json.output@          \"project\": \"test\"@@@",
+      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Devicelab Test Drone\"@@@",
       "@@@STEP_LOG_LINE@json.output@        }, @@@",
       "@@@STEP_LOG_LINE@json.output@        \"id\": \"8922054662172514000\"@@@",
       "@@@STEP_LOG_LINE@json.output@      }@@@",
@@ -97,56 +54,35 @@
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@request@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Production Engine Drone\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"project\": \"test\"@@@",
+      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Devicelab Test Drone\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"exe\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/main\"@@@",
+      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/master\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"experimental\": \"NO\", @@@",
       "@@@STEP_LOG_LINE@request@        \"experiments\": {@@@",
       "@@@STEP_LOG_LINE@request@          \"luci.buildbucket.parent_tracking\": false@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", @@@",
-      "@@@STEP_LOG_LINE@request@        \"gitilesCommit\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"host\": \"git.example.com\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"project\": \"test/repo\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"ref\": \"refs/heads/master\"@@@",
-      "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"priority\": 25, @@@",
       "@@@STEP_LOG_LINE@request@        \"properties\": {@@@",
       "@@@STEP_LOG_LINE@request@          \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"build\": {@@@",
-      "@@@STEP_LOG_LINE@request@            \"drone_dimensions\": [], @@@",
-      "@@@STEP_LOG_LINE@request@            \"name\": \"abc\", @@@",
-      "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
-      "@@@STEP_LOG_LINE@request@              \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"drone_dependencies\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"git_branch\": \"master\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"tags\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"task_name\": \"abc\"@@@",
-      "@@@STEP_LOG_LINE@request@            }@@@",
-      "@@@STEP_LOG_LINE@request@          }, @@@",
-      "@@@STEP_LOG_LINE@request@          \"drone_dependencies\": [], @@@",
+      "@@@STEP_LOG_LINE@request@          \"dependencies\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"git_branch\": \"master\", @@@",
       "@@@STEP_LOG_LINE@request@          \"git_ref\": \"refs/pull/1/head\", @@@",
       "@@@STEP_LOG_LINE@request@          \"git_url\": \"test/repo\", @@@",
       "@@@STEP_LOG_LINE@request@          \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"recipe\": \"devicelab/devicelab_test_drone\", @@@",
       "@@@STEP_LOG_LINE@request@          \"tags\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"task_name\": \"abc\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
-      "@@@STEP_LOG_LINE@request@        \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", @@@",
+      "@@@STEP_LOG_LINE@request@        \"requestId\": \"0-00000000-0000-0000-0000-000000001337\", @@@",
       "@@@STEP_LOG_LINE@request@        \"swarming\": {@@@",
       "@@@STEP_LOG_LINE@request@          \"parentRunId\": \"fake-task-id\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"tags\": [@@@",
       "@@@STEP_LOG_LINE@request@          {@@@",
       "@@@STEP_LOG_LINE@request@            \"key\": \"parent_buildbucket_id\", @@@",
-      "@@@STEP_LOG_LINE@request@            \"value\": \"8945511751514863184\"@@@",
+      "@@@STEP_LOG_LINE@request@            \"value\": \"0\"@@@",
       "@@@STEP_LOG_LINE@request@          }, @@@",
       "@@@STEP_LOG_LINE@request@          {@@@",
       "@@@STEP_LOG_LINE@request@            \"key\": \"user_agent\", @@@",
@@ -163,14 +99,14 @@
   },
   {
     "cmd": [],
-    "name": "collect builds"
+    "name": "Task Shards",
+    "~followup_annotations": [
+      "@@@STEP_LINK@@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
+    ]
   },
   {
     "cmd": [],
-    "name": "collect builds.collect",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "buildbucket.collect"
   },
   {
     "cmd": [
@@ -179,26 +115,14 @@
       "-host",
       "cr-buildbucket.appspot.com",
       "-interval",
-      "20s",
+      "60s",
       "8922054662172514000"
     ],
     "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "test:prod"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "collect builds.collect.wait",
-    "timeout": 86400,
+    "name": "buildbucket.collect.wait",
+    "timeout": 10800,
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -209,22 +133,10 @@
       "cr-buildbucket.appspot.com"
     ],
     "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "test:prod"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "collect builds.collect.get",
-    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
+    "name": "buildbucket.collect.get",
+    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
@@ -240,7 +152,7 @@
       "@@@STEP_LOG_LINE@request@  \"requests\": [@@@",
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"getBuild\": {@@@",
-      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
+      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
       "@@@STEP_LOG_LINE@request@        \"id\": \"8922054662172514000\"@@@",
       "@@@STEP_LOG_LINE@request@      }@@@",
       "@@@STEP_LOG_LINE@request@    }@@@",
@@ -252,16 +164,13 @@
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "display builds"
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds.abc",
+    "name": "display builds.",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LINK@8922054662172514000@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
     ]
   },
diff --git a/recipes/devicelab/devicelab_drone_build_test.expected/local-engine.json b/recipes/devicelab/devicelab_drone_build_test.expected/local-engine.json
index 0fc1056..5423f86 100644
--- a/recipes/devicelab/devicelab_drone_build_test.expected/local-engine.json
+++ b/recipes/devicelab/devicelab_drone_build_test.expected/local-engine.json
@@ -11,7 +11,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -32,12 +32,12 @@
       "RECIPE_REPO[depot_tools]/gsutil.py",
       "----",
       "ls",
-      "gs://flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
+      "gs://flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
     ],
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -65,7 +65,7 @@
     ],
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -96,7 +96,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -122,7 +122,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -147,7 +147,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -176,7 +176,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -201,7 +201,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -228,7 +228,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -253,7 +253,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -283,7 +283,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -322,7 +322,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -353,7 +353,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -393,7 +393,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -423,7 +423,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -463,7 +463,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -505,7 +505,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -548,7 +548,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -604,7 +604,7 @@
     },
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -635,7 +635,7 @@
       "cp",
       "-r",
       "[CLEANUP]/tmp_tmp_2/*",
-      "gs://flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
+      "gs://flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def"
     ],
     "cwd": "[CLEANUP]/tmp_tmp_1/flutter sdk/dev/devicelab",
     "env": {
@@ -663,7 +663,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -675,7 +675,7 @@
     },
     "name": "gsutil upload artifacts",
     "~followup_annotations": [
-      "@@@STEP_LINK@artifacts@https://console.cloud.google.com/storage/browser/flutter_devicelab/flutter/prod/2d72510e447ab60a9728aeea2362d8be2cbd7789/def@@@"
+      "@@@STEP_LINK@artifacts@https://console.cloud.google.com/storage/browser/flutter_devicelab/flutter/ci/2d72510e447ab60a9728aeea2362d8be2cbd7789/def@@@"
     ]
   },
   {
@@ -713,7 +713,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -759,7 +759,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -805,7 +805,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -851,7 +851,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -897,7 +897,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -947,7 +947,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -960,10 +960,6 @@
     "name": "OS info (2)"
   },
   {
-    "cmd": [],
-    "name": "launch builds"
-  },
-  {
     "cmd": [
       "bb",
       "batch",
@@ -973,7 +969,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -983,17 +979,16 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"prod\", \"builder\": \"Linux Production Engine Drone\", \"project\": \"test\"}, \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gitilesCommit\": {\"host\": \"git.example.com\", \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", \"project\": \"test/repo\", \"ref\": \"refs/heads/master\"}, \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"build\": {\"drone_dimensions\": [], \"name\": \"abc\", \"properties\": {\"artifact\": \"def\", \"drone_dependencies\": [], \"git_branch\": \"master\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}}, \"drone_dependencies\": [], \"git_branch\": \"master\", \"local_engine\": \"host-release\", \"local_engine_cas_hash\": \"isolatehashlocalengine/22\", \"parent_builder\": \"Linux abc\", \"recipe\": \"devicelab/devicelab_test_drone\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "name": "buildbucket.schedule",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"ci\", \"builder\": \"Linux Devicelab Test Drone\", \"project\": \"test\"}, \"exe\": {\"cipdVersion\": \"refs/heads/master\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gitilesCommit\": {\"host\": \"git.example.com\", \"id\": \"2d72510e447ab60a9728aeea2362d8be2cbd7789\", \"project\": \"test/repo\", \"ref\": \"refs/heads/master\"}, \"priority\": 25, \"properties\": {\"artifact\": \"def\", \"dependencies\": [], \"git_branch\": \"master\", \"parent_builder\": \"Linux abc\", \"tags\": [], \"task_name\": \"abc\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
       "@@@STEP_LOG_LINE@json.output@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@json.output@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Production Engine Drone\", @@@",
+      "@@@STEP_LOG_LINE@json.output@          \"bucket\": \"ci\", @@@",
+      "@@@STEP_LOG_LINE@json.output@          \"builder\": \"Linux Devicelab Test Drone\", @@@",
       "@@@STEP_LOG_LINE@json.output@          \"project\": \"test\"@@@",
       "@@@STEP_LOG_LINE@json.output@        }, @@@",
       "@@@STEP_LOG_LINE@json.output@        \"id\": \"8922054662172514000\"@@@",
@@ -1007,12 +1002,12 @@
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"scheduleBuild\": {@@@",
       "@@@STEP_LOG_LINE@request@        \"builder\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"bucket\": \"prod\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Production Engine Drone\", @@@",
+      "@@@STEP_LOG_LINE@request@          \"bucket\": \"ci\", @@@",
+      "@@@STEP_LOG_LINE@request@          \"builder\": \"Linux Devicelab Test Drone\", @@@",
       "@@@STEP_LOG_LINE@request@          \"project\": \"test\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"exe\": {@@@",
-      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/main\"@@@",
+      "@@@STEP_LOG_LINE@request@          \"cipdVersion\": \"refs/heads/master\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
       "@@@STEP_LOG_LINE@request@        \"experimental\": \"NO\", @@@",
       "@@@STEP_LOG_LINE@request@        \"experiments\": {@@@",
@@ -1028,24 +1023,9 @@
       "@@@STEP_LOG_LINE@request@        \"priority\": 25, @@@",
       "@@@STEP_LOG_LINE@request@        \"properties\": {@@@",
       "@@@STEP_LOG_LINE@request@          \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"build\": {@@@",
-      "@@@STEP_LOG_LINE@request@            \"drone_dimensions\": [], @@@",
-      "@@@STEP_LOG_LINE@request@            \"name\": \"abc\", @@@",
-      "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
-      "@@@STEP_LOG_LINE@request@              \"artifact\": \"def\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"drone_dependencies\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"git_branch\": \"master\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@              \"tags\": [], @@@",
-      "@@@STEP_LOG_LINE@request@              \"task_name\": \"abc\"@@@",
-      "@@@STEP_LOG_LINE@request@            }@@@",
-      "@@@STEP_LOG_LINE@request@          }, @@@",
-      "@@@STEP_LOG_LINE@request@          \"drone_dependencies\": [], @@@",
+      "@@@STEP_LOG_LINE@request@          \"dependencies\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"git_branch\": \"master\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"local_engine\": \"host-release\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"local_engine_cas_hash\": \"isolatehashlocalengine/22\", @@@",
       "@@@STEP_LOG_LINE@request@          \"parent_builder\": \"Linux abc\", @@@",
-      "@@@STEP_LOG_LINE@request@          \"recipe\": \"devicelab/devicelab_test_drone\", @@@",
       "@@@STEP_LOG_LINE@request@          \"tags\": [], @@@",
       "@@@STEP_LOG_LINE@request@          \"task_name\": \"abc\"@@@",
       "@@@STEP_LOG_LINE@request@        }, @@@",
@@ -1073,14 +1053,14 @@
   },
   {
     "cmd": [],
-    "name": "collect builds"
+    "name": "Task Shards",
+    "~followup_annotations": [
+      "@@@STEP_LINK@@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
+    ]
   },
   {
     "cmd": [],
-    "name": "collect builds.collect",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "buildbucket.collect"
   },
   {
     "cmd": [
@@ -1089,13 +1069,13 @@
       "-host",
       "cr-buildbucket.appspot.com",
       "-interval",
-      "20s",
+      "60s",
       "8922054662172514000"
     ],
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -1105,10 +1085,10 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "collect builds.collect.wait",
-    "timeout": 86400,
+    "name": "buildbucket.collect.wait",
+    "timeout": 10800,
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -1121,7 +1101,7 @@
     "infra_step": true,
     "luci_context": {
       "realm": {
-        "name": "test:prod"
+        "name": "test:ci"
       },
       "resultdb": {
         "current_invocation": {
@@ -1131,10 +1111,10 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "collect builds.collect.get",
-    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
+    "name": "buildbucket.collect.get",
+    "stdin": "{\"requests\": [{\"getBuild\": {\"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", \"id\": \"8922054662172514000\"}}]}",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
       "@@@STEP_LOG_LINE@json.output@  \"responses\": [@@@",
       "@@@STEP_LOG_LINE@json.output@    {@@@",
@@ -1150,7 +1130,7 @@
       "@@@STEP_LOG_LINE@request@  \"requests\": [@@@",
       "@@@STEP_LOG_LINE@request@    {@@@",
       "@@@STEP_LOG_LINE@request@      \"getBuild\": {@@@",
-      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,infra.swarming.taskId,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
+      "@@@STEP_LOG_LINE@request@        \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,summaryMarkdown,updateTime\", @@@",
       "@@@STEP_LOG_LINE@request@        \"id\": \"8922054662172514000\"@@@",
       "@@@STEP_LOG_LINE@request@      }@@@",
       "@@@STEP_LOG_LINE@request@    }@@@",
@@ -1162,16 +1142,13 @@
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
+    "name": "display builds"
   },
   {
     "cmd": [],
-    "name": "collect builds.display builds.abc",
+    "name": "display builds.",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
+      "@@@STEP_NEST_LEVEL@1@@@",
       "@@@STEP_LINK@8922054662172514000@https://cr-buildbucket.appspot.com/build/8922054662172514000@@@"
     ]
   },
diff --git a/recipes/devicelab/devicelab_drone_build_test.expected/no-artifact-name.json b/recipes/devicelab/devicelab_drone_build_test.expected/no-artifact-name.json
index ef6e05a..3359ba7 100644
--- a/recipes/devicelab/devicelab_drone_build_test.expected/no-artifact-name.json
+++ b/recipes/devicelab/devicelab_drone_build_test.expected/no-artifact-name.json
@@ -19,7 +19,7 @@
       "The recipe has crashed at point 'Uncaught exception'!",
       "",
       "Traceback (most recent call last):",
-      "  File \"RECIPE_REPO[flutter]/recipes/devicelab/devicelab_drone_build_test.py\", line 66, in RunSteps",
+      "  File \"RECIPE_REPO[flutter]/recipes/devicelab/devicelab_drone_build_test.py\", line 67, in RunSteps",
       "    raise ValueError('An artifact property is required')",
       "ValueError('An artifact property is required')"
     ]
diff --git a/recipes/devicelab/devicelab_drone_build_test.expected/no-task-name.json b/recipes/devicelab/devicelab_drone_build_test.expected/no-task-name.json
index 1f0a929..b37d94c 100644
--- a/recipes/devicelab/devicelab_drone_build_test.expected/no-task-name.json
+++ b/recipes/devicelab/devicelab_drone_build_test.expected/no-task-name.json
@@ -19,7 +19,7 @@
       "The recipe has crashed at point 'Uncaught exception'!",
       "",
       "Traceback (most recent call last):",
-      "  File \"RECIPE_REPO[flutter]/recipes/devicelab/devicelab_drone_build_test.py\", line 61, in RunSteps",
+      "  File \"RECIPE_REPO[flutter]/recipes/devicelab/devicelab_drone_build_test.py\", line 62, in RunSteps",
       "    raise ValueError('A task_name property is required')",
       "ValueError('A task_name property is required')"
     ]
diff --git a/recipes/devicelab/devicelab_drone_build_test.py b/recipes/devicelab/devicelab_drone_build_test.py
index d62b8a1..fc6c601 100644
--- a/recipes/devicelab/devicelab_drone_build_test.py
+++ b/recipes/devicelab/devicelab_drone_build_test.py
@@ -14,6 +14,7 @@
     'flutter/osx_sdk',
     'flutter/repo_util',
     'flutter/retry',
+    'flutter/shard_util',
     'flutter/shard_util_v2',
     'flutter/test_utils',
     'flutter/token_util',
@@ -75,40 +76,50 @@
     build(api, task_name, artifact, artifact_gcs_path)
 
   # Run test step.
-  targets = test(
+  builds = test(
       api, task_name, api.properties.get('dependencies', []), artifact
   )
-  with api.step.nest('launch builds') as presentation:
-    tasks = api.shard_util_v2.schedule(targets, 'devicelab/devicelab_test_drone', presentation)
-  with api.step.nest('collect builds') as presentation:
-    build_results = api.shard_util_v2.collect(tasks, presentation)
-    api.display_util.display_subbuilds(
-        step_name='display builds',
-        subbuilds=build_results,
-        raise_on_failure=True,
-    )
+  builds = api.shard_util.collect_builds(builds)
+  api.display_util.display_builds(
+      step_name='display builds',
+      builds=builds,
+      raise_on_failure=True,
+  )
 
 
 def test(api, task_name, deps, artifact):
   '''Run devicelab test assuming build artifact is available.'''
+  git_branch = api.properties.get('git_branch')
+  bucket = api.buildbucket.build.builder.bucket
+  builder_name = 'Linux_android_staging test_drone' if bucket == 'staging' else 'Linux Devicelab Test Drone'
   reqs = []
   # Updates tuple to buildbucket API supported list.
   tags = [tag for tag in api.properties.get('tags', [])]
   # These are dependencies specified in the yaml file. We want to pass them down
   # to test so they also install these dependencies.
   test_props = {
-      'drone_dependencies': [api.shard_util_v2.unfreeze_dict(dep) for dep in deps],
+      'dependencies': [api.shard_util_v2.unfreeze_dict(dep) for dep in deps],
       'task_name': task_name,
       'parent_builder': api.properties.get('buildername'),
       'artifact': artifact,
       'git_branch': api.properties.get('git_branch'),
-      'tags': tags
+      'tags': tags,
   }
-  reqs.append(
-       {'name': task_name, 'properties': test_props,
-        'drone_dimensions': api.properties.get('drone_dimensions', [])}
+  if 'git_url' in api.properties and 'git_ref' in api.properties:
+    test_props['git_ref'] = api.properties['git_ref']
+    test_props['git_url'] = api.properties['git_url']
+
+  req = api.buildbucket.schedule_request(
+      swarming_parent_run_id=api.swarming.task_id,
+      builder=builder_name,
+      properties=test_props,
+      priority=25,
+      exe_cipd_version=api.properties.get(
+          'exe_cipd_version', 'refs/heads/%s' % git_branch
+      )
   )
-  return reqs
+  reqs.append(req)
+  return api.buildbucket.schedule(reqs)
 
 
 def build(api, task_name, artifact, artifact_gcs_dir):
@@ -218,12 +229,6 @@
           stdout=api.raw_io
           .output_text('gs://flutter_devicelab/flutter/refs/pull/1/head/def')
       ),
-      api.buildbucket.ci_build(
-          project='test',
-          bucket='prod',
-          git_repo='git.example.com/test/repo',
-          git_ref='refs/heads/master',
-      )
   )
   yield api.test(
       "artifact does not exist",
@@ -237,7 +242,6 @@
       api.repo_util.flutter_environment_data(checkout_dir=checkout_path),
       api.buildbucket.ci_build(
           project='test',
-          bucket='prod',
           git_repo='git.example.com/test/repo',
       ),
   )
@@ -253,7 +257,6 @@
       ), api.repo_util.flutter_environment_data(checkout_dir=checkout_path),
       api.buildbucket.ci_build(
           project='test',
-          bucket='prod',
           git_repo='git.example.com/test/repo',
           git_ref='refs/heads/master',
       )