[ci.yaml] Add dependencies (#87694)

diff --git a/.ci.yaml b/.ci.yaml
index 46dea3b..6c8ef9b 100644
--- a/.ci.yaml
+++ b/.ci.yaml
@@ -16,7 +16,12 @@
     properties:
       caches: >-
         [
-          {"name":"builder_linux_framework","path":"builder"}
+          {"name":"builder_linux_framework","path":"builder"},
+          {"name":"android_sdk","path":"android"},
+          {"name":"chrome_and_driver","path":"chrome"},
+          {"name":"flutter_sdk","path":"flutter sdk"},
+          {"name":"openjdk","path":"java"},
+          {"name":"pub_cache","path":".pub-cache"}
         ]
       dependencies: >-
         [
@@ -29,10 +34,18 @@
       caches: >-
         [
           {"name":"builder_linux_devicelab","path":"builder"},
+          {"name":"android_sdk","path":"android"},
+          {"name":"chrome_and_driver","path":"chrome"},
+          {"name":"flutter_sdk","path":"flutter sdk"},
+          {"name":"gradle","path":"gradle"},
+          {"name":"openjdk","path":"java"},
+          {"name":"pub_cache","path":".pub-cache"}
         ]
       dependencies: >-
         [
-          {"dependency": "curl"}
+          {"dependency": "android_sdk"},
+          {"dependency": "curl"},
+          {"dependency": "open_jdk"}
         ]
       os: Android
       device_os: "N"
@@ -40,7 +53,19 @@
     properties:
       caches: >-
         [
-          {"name":"builder_mac_framework","path":"builder"}
+          {"name":"builder_mac_framework","path":"builder"},
+          {"name":"android_sdk","path":"android"},
+          {"name":"chrome_and_driver","path":"chrome"},
+          {"name":"flutter_sdk","path":"flutter sdk"},
+          {"name":"openjdk","path":"java"},
+          {"name":"osx_sdk","path":"osx_sdk"},
+          {"name":"pub_cache","path":".pub-cache"},
+          {"name":"xcode_binary","path":"xcode_binary"}
+        ]
+      dependencies: >-
+        [
+          {"dependency": "gems"},
+          {"dependency": "xcode"}
         ]
       os: Mac-10.15
       device_type: none
@@ -51,15 +76,40 @@
       caches: >-
           [
             {"name":"builder_mac_devicelab","path":"builder"},
+            {"name":"android_sdk","path":"android"},
+            {"name":"chrome_and_driver","path":"chrome"},
+            {"name":"flutter_sdk","path":"flutter sdk"},
+            {"name":"gradle","path":"gradle"},
+            {"name":"openjdk","path":"java"},
+            {"name":"pub_cache","path":".pub-cache"}
           ]
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       os: Mac-10.15
       device_os: N
   mac_ios:
     properties:
       caches: >-
           [
-            {"name":"builder_mac_devicelab","path":"builder"}
+            {"name":"builder_mac_devicelab","path":"builder"},
+            {"name":"chrome_and_driver","path":"chrome"},
+            {"name":"flutter_sdk","path":"flutter sdk"},
+            {"name":"gradle","path":"gradle"},
+            {"name":"openjdk","path":"java"},
+            {"name":"pub_cache","path":".pub-cache"},
+            {"name":"xcode_binary","path":"xcode_binary"},
+            {"name":"osx_sdk","path":"osx_sdk"}
           ]
+      dependencies: >-
+        [
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "ios_signing"}
+        ]
       os: Mac-10.15
       device_os: iOS-14.4.2
       xcode: 12a7209
@@ -67,8 +117,21 @@
     properties:
       caches: >-
           [
-            {"name":"builder_mac_devicelab","path":"builder"}
+            {"name":"builder_mac_devicelab","path":"builder"},
+            {"name":"chrome_and_driver","path":"chrome"},
+            {"name":"flutter_sdk","path":"flutter sdk"},
+            {"name":"gradle","path":"gradle"},
+            {"name":"openjdk","path":"java"},
+            {"name":"pub_cache","path":".pub-cache"},
+            {"name":"xcode_binary","path":"xcode_binary"},
+            {"name":"osx_sdk","path":"osx_sdk"}
           ]
+      dependencies: >-
+        [
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "ios_signing"}
+        ]
       os: Mac-10.15
       device_os: iOS-9.3.6
       xcode: 12a7209
@@ -76,11 +139,17 @@
     properties:
       caches: >-
           [
-            {"name":"builder_win_framework","path":"builder"}
+            {"name":"builder_win_framework","path":"builder"},
+            {"name":"android_sdk","path":"android"},
+            {"name":"chrome_and_driver","path":"chrome"},
+            {"name":"flutter_sdk","path":"flutter sdk"},
+            {"name":"openjdk","path":"java"},
+            {"name":"pub_cache","path":".pub-cache"},
+            {"name":"vsbuild","path":"vsbuild"}
           ]
       dependencies: >-
           [
-            {"dependency": "certs"},
+            {"dependency": "certs"}
           ]
       os: Windows-10
       device_type: none
@@ -88,11 +157,20 @@
     properties:
       caches: >-
           [
-            {"name":"builder_win_devicelab","path":"builder"}
+            {"name":"builder_win_devicelab","path":"builder"},
+            {"name":"android_sdk","path":"android"},
+            {"name":"chrome_and_driver","path":"chrome"},
+            {"name":"flutter_sdk","path":"flutter sdk"},
+            {"name":"gradle","path":"gradle"},
+            {"name":"openjdk","path":"java"},
+            {"name":"pub_cache","path":".pub-cache"}
           ]
       dependencies: >-
           [
+            {"dependency": "android_sdk"},
             {"dependency": "certs"},
+            {"dependency": "chrome_and_driver"},
+            {"dependency": "open_jdk"}
           ]
       os: Windows-10
       device_os: N
@@ -113,6 +191,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: build_aar_module_test
@@ -126,6 +209,16 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "clang"},
+          {"dependency": "cmake"},
+          {"dependency": "ninja"}
+        ]
       shard: build_tests
       subshard: "1_2"
       tags: >
@@ -136,6 +229,16 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "clang"},
+          {"dependency": "cmake"},
+          {"dependency": "ninja"}
+        ]
       shard: build_tests
       subshard: "2_2"
       tags: >
@@ -159,6 +262,11 @@
     presubmit: false
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "dashing"},
+          {"dependency": "firebase"}
+        ]
       tags: >
         ["framework","hostonly"]
       validation: docs
@@ -171,6 +279,12 @@
     recipe: flutter/flutter
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "dashing"}
+        ]
+      firebase_project: ""
+      release_ref: ""
       tags: >
         ["framework","hostonly"]
       validation: docs
@@ -188,6 +302,10 @@
     recipe: firebaselab
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"}
+        ]
       tags: >
         ["firebaselab"]
       task_name: abstract_method_smoke_test
@@ -197,6 +315,10 @@
     recipe: firebaselab
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"}
+        ]
       tags: >
         ["firebaselab"]
       task_name: android_embedding_v2_smoke_test
@@ -206,6 +328,10 @@
     recipe: firebaselab
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"}
+        ]
       tags: >
         ["firebaselab"]
       task_name: release_smoke_test
@@ -225,6 +351,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: libraries
       tags: >
@@ -246,6 +376,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: misc
       tags: >
@@ -267,6 +401,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: widgets
       tags: >
@@ -298,6 +436,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_desugar_classes_test
@@ -310,6 +453,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_java8_compile_test
@@ -322,6 +470,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_bundle_test
@@ -334,6 +487,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_fat_apk_test
@@ -346,6 +504,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_light_apk_test
@@ -358,6 +521,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_custom_host_app_name_test
@@ -371,6 +539,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_host_with_custom_build_test
@@ -384,6 +557,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_test
@@ -397,6 +575,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_dependencies_test
@@ -410,6 +593,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_test
@@ -441,14 +629,17 @@
     presubmit: false
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: technical_debt__cost
     scheduler: luci
 
   - name: Linux test_ownership
-    enabled_branches:
-      - master
     recipe: infra/test_ownership
     bringup: true
     timeout: 60
@@ -464,6 +655,13 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "1_4"
       tags: >
@@ -480,6 +678,13 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "2_4"
       tags: >
@@ -495,6 +700,13 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "3_4"
       tags: >
@@ -510,6 +722,13 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "4_4"
       tags: >
@@ -525,6 +744,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: commands
       tags: >
@@ -540,6 +764,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: general
       tags: >
@@ -555,6 +784,11 @@
     presubmit: false
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: web_benchmarks_canvaskit
@@ -564,6 +798,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"}
+        ]
       tags: >
         ["devicelab"]
     scheduler: luci
@@ -575,6 +814,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_long_running_tests
       subshard: "1_5"
       tags: >
@@ -589,6 +834,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_long_running_tests
       subshard: "2_5"
       tags: >
@@ -603,6 +854,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_long_running_tests
       subshard: "3_5"
       tags: >
@@ -617,6 +874,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_long_running_tests
       subshard: "4_5"
       tags: >
@@ -631,6 +894,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_long_running_tests
       subshard: "5_5"
       tags: >
@@ -645,6 +914,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "0"
       tags: >
@@ -659,6 +934,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "1"
       tags: >
@@ -673,6 +954,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "2"
       tags: >
@@ -687,6 +974,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "3"
       tags: >
@@ -701,6 +994,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "4"
       tags: >
@@ -715,6 +1014,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "5"
       tags: >
@@ -729,6 +1034,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "6"
       tags: >
@@ -743,6 +1054,12 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tests
       subshard: "7_last"
       tags: >
@@ -757,6 +1074,13 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tool_tests
       subshard: web
       tags: >
@@ -1253,6 +1577,12 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: build_aar_module_test
@@ -1266,6 +1596,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: build_ios_framework_module_test
@@ -1280,6 +1617,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: build_tests
       subshard: "1_4"
       tags: >
@@ -1291,6 +1637,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: build_tests
       subshard: "2_4"
       tags: >
@@ -1302,6 +1657,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: build_tests
       subshard: "3_4"
       tags: >
@@ -1313,6 +1677,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: build_tests
       subshard: "4_4"
       tags: >
@@ -1334,6 +1707,11 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: dart_plugin_registry_test
@@ -1347,6 +1725,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: libraries
       tags: >
@@ -1368,6 +1750,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: misc
       tags: >
@@ -1389,6 +1775,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: widgets
       tags: >
@@ -1410,6 +1800,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_bundle_test
@@ -1422,6 +1819,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_fat_apk_test
@@ -1434,6 +1838,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_light_apk_test
@@ -1446,6 +1857,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_custom_host_app_name_test
@@ -1459,6 +1877,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_host_with_custom_build_test
@@ -1472,6 +1897,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_test
@@ -1486,6 +1918,13 @@
     bringup: true
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_test_ios
@@ -1499,6 +1938,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_dependencies_test
@@ -1512,6 +1958,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_lint_mac
@@ -1524,6 +1977,13 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_test
@@ -1538,6 +1998,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "1_4"
       tags: >
@@ -1553,6 +2022,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "2_4"
       tags: >
@@ -1568,6 +2046,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "3_4"
       tags: >
@@ -1583,6 +2070,15 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "gems"},
+          {"dependency": "goldctl"}
+        ]
       shard: tool_integration_tests
       subshard: "4_4"
       tags: >
@@ -1598,6 +2094,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: commands
       tags: >
@@ -1609,6 +2110,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: general
       tags: >
@@ -1627,6 +2133,10 @@
     recipe: flutter/flutter
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "xcode"}
+        ]
       tags: >
         ["framework","hostonly","shard"]
       validation: verify_binaries_codesigned
@@ -1636,6 +2146,14 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "xcode"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tool_tests
       subshard: web
       tags: >
@@ -2504,6 +3022,12 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: build_aar_module_test
@@ -2518,6 +3042,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: build_tests
       subshard: "1_3"
       tags: >
@@ -2529,6 +3061,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: build_tests
       subshard: "2_3"
       tags: >
@@ -2540,6 +3080,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: build_tests
       subshard: "3_3"
       tags: >
@@ -2561,6 +3109,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: libraries
       tags: >
@@ -2582,6 +3134,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: misc
       tags: >
@@ -2603,6 +3159,10 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "goldctl"}
+        ]
       shard: framework_tests
       subshard: widgets
       tags: >
@@ -2624,6 +3184,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_bundle_test
@@ -2637,6 +3203,12 @@
     presubmit: false
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_fat_apk_test
@@ -2646,6 +3218,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: gradle_plugin_light_apk_test
@@ -2669,6 +3247,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_custom_host_app_name_test
@@ -2682,6 +3266,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_host_with_custom_build_test
@@ -2695,6 +3285,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: module_test
@@ -2708,6 +3304,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_dependencies_test
@@ -2721,6 +3323,12 @@
     recipe: devicelab/devicelab_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"}
+        ]
       tags: >
         ["devicelab","hostonly"]
       task_name: plugin_test
@@ -2735,6 +3343,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: tool_integration_tests
       subshard: "1_5"
       tags: >
@@ -2750,6 +3366,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: tool_integration_tests
       subshard: "2_5"
       tags: >
@@ -2765,6 +3389,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: tool_integration_tests
       subshard: "3_5"
       tags: >
@@ -2780,6 +3412,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: tool_integration_tests
       subshard: "4_5"
       tags: >
@@ -2795,6 +3435,14 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"},
+          {"dependency": "vs_build"}
+        ]
       shard: tool_integration_tests
       subshard: "5_5"
       tags: >
@@ -2810,6 +3458,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: commands
       tags: >
@@ -2825,6 +3478,11 @@
     timeout: 60
     properties:
       add_recipes_cq: "true"
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "open_jdk"}
+        ]
       shard: tool_tests
       subshard: general
       tags: >
@@ -2839,6 +3497,13 @@
     recipe: flutter/flutter_drone
     timeout: 60
     properties:
+      dependencies: >-
+        [
+          {"dependency": "android_sdk"},
+          {"dependency": "chrome_and_driver"},
+          {"dependency": "open_jdk"},
+          {"dependency": "goldctl"}
+        ]
       shard: web_tool_tests
       subshard: web
       tags: >