[devicelab] Add 10 min timeout for dart pub get

Example build: https://ci.chromium.org/ui/p/flutter/builders/prod/Windows_android%20hot_mode_dev_cycle_win__benchmark/13298/overview

Expectation is this would timeout quicker instead of using the builder level timeout.

Bug: None
Change-Id: Ibf01b25cf2306a8811ab03ffe923f01e29d91608
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/52521
Reviewed-by: Ricardo Amador <ricardoamador@google.com>
Reviewed-by: Godofredo Contreras <godofredoc@google.com>
Reviewed-by: Jesús Guerrero <jsguerrero@google.com>
Commit-Queue: Casey Hillers <chillers@google.com>
diff --git a/recipes/devicelab/devicelab_drone.expected/basic.json b/recipes/devicelab/devicelab_drone.expected/basic.json
index 2035098..3623a80 100644
--- a/recipes/devicelab/devicelab_drone.expected/basic.json
+++ b/recipes/devicelab/devicelab_drone.expected/basic.json
@@ -413,7 +413,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/emulator-test.json b/recipes/devicelab/devicelab_drone.expected/emulator-test.json
index b46992f..0b19b3e 100644
--- a/recipes/devicelab/devicelab_drone.expected/emulator-test.json
+++ b/recipes/devicelab/devicelab_drone.expected/emulator-test.json
@@ -248,7 +248,8 @@
       ]
     },
     "infra_step": true,
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/linux-xvfb.json b/recipes/devicelab/devicelab_drone.expected/linux-xvfb.json
index 5a91f92..8d53af5 100644
--- a/recipes/devicelab/devicelab_drone.expected/linux-xvfb.json
+++ b/recipes/devicelab/devicelab_drone.expected/linux-xvfb.json
@@ -413,7 +413,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/local-engine.json b/recipes/devicelab/devicelab_drone.expected/local-engine.json
index f5f51ef..1812cf0 100644
--- a/recipes/devicelab/devicelab_drone.expected/local-engine.json
+++ b/recipes/devicelab/devicelab_drone.expected/local-engine.json
@@ -558,7 +558,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/no-upload-metrics-linux-staging.json b/recipes/devicelab/devicelab_drone.expected/no-upload-metrics-linux-staging.json
index ecf2e5c..d9f5eda 100644
--- a/recipes/devicelab/devicelab_drone.expected/no-upload-metrics-linux-staging.json
+++ b/recipes/devicelab/devicelab_drone.expected/no-upload-metrics-linux-staging.json
@@ -413,7 +413,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/post-submit.json b/recipes/devicelab/devicelab_drone.expected/post-submit.json
index 06dc305..80dad1b 100644
--- a/recipes/devicelab/devicelab_drone.expected/post-submit.json
+++ b/recipes/devicelab/devicelab_drone.expected/post-submit.json
@@ -413,7 +413,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/upload-metrics-mac.json b/recipes/devicelab/devicelab_drone.expected/upload-metrics-mac.json
index b05213c..43139fe 100644
--- a/recipes/devicelab/devicelab_drone.expected/upload-metrics-mac.json
+++ b/recipes/devicelab/devicelab_drone.expected/upload-metrics-mac.json
@@ -494,7 +494,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/xcode-chromium-mac.json b/recipes/devicelab/devicelab_drone.expected/xcode-chromium-mac.json
index 7ce865e..5fb84d3 100644
--- a/recipes/devicelab/devicelab_drone.expected/xcode-chromium-mac.json
+++ b/recipes/devicelab/devicelab_drone.expected/xcode-chromium-mac.json
@@ -494,7 +494,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/xcode-devicelab-timeout.json b/recipes/devicelab/devicelab_drone.expected/xcode-devicelab-timeout.json
index d09a294..6e060f6 100644
--- a/recipes/devicelab/devicelab_drone.expected/xcode-devicelab-timeout.json
+++ b/recipes/devicelab/devicelab_drone.expected/xcode-devicelab-timeout.json
@@ -494,7 +494,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.expected/xcode-devicelab.json b/recipes/devicelab/devicelab_drone.expected/xcode-devicelab.json
index ed960dd..3bafb07 100644
--- a/recipes/devicelab/devicelab_drone.expected/xcode-devicelab.json
+++ b/recipes/devicelab/devicelab_drone.expected/xcode-devicelab.json
@@ -494,7 +494,8 @@
         "hostname": "rdbhost"
       }
     },
-    "name": "dart pub get"
+    "name": "dart pub get",
+    "timeout": 600
   },
   {
     "cmd": [
diff --git a/recipes/devicelab/devicelab_drone.py b/recipes/devicelab/devicelab_drone.py
index 6189fe9..9496b1a 100644
--- a/recipes/devicelab/devicelab_drone.py
+++ b/recipes/devicelab/devicelab_drone.py
@@ -76,9 +76,7 @@
     # TODO: If deps contains dart_sdk and we are running a local engine,
     # we don't want to fetch it with cipd, so don't fetch it with required_deps
     api.flutter_deps.required_deps(
-        env,
-        env_prefixes,
-        api.properties.get('dependencies', [])
+        env, env_prefixes, api.properties.get('dependencies', [])
     )
 
   target_tags = api.properties.get('tags', [])
@@ -114,7 +112,12 @@
         max_attempts=3,
         timeout=300,
     )
-    api.step('dart pub get', ['dart', 'pub', 'get'], infra_step=True)
+    api.step(
+        'dart pub get',
+        ['dart', 'pub', 'get'],
+        infra_step=True,
+        timeout=10 * 60,  # 10 minutes
+    )
     if api.properties.get('$flutter/osx_sdk'):
       api.os_utils.clean_derived_data()
       devicelab = False