Add devicelab test drone

A staging drone builder was added: https://flutter-review.googlesource.com/c/infra/+/30443, and this CL adds one to prod.
This CL is a no-op for existing CI. Following up changes are needed from recipes side to enable new configs.


Change-Id: Ieed9ffd42763cb279193a5b13fa1b04556bb35d2
Bug: https://github.com/flutter/flutter/issues/103542
Reviewed-on: https://flutter-review.googlesource.com/c/infra/+/32761
Reviewed-by: Yusuf Mohsinally <mohsinally@google.com>
Commit-Queue: Keyong Han <keyonghan@google.com>
diff --git a/config/flutter_config.star b/config/flutter_config.star
index 62ce30e..d8867e0 100644
--- a/config/flutter_config.star
+++ b/config/flutter_config.star
@@ -71,7 +71,7 @@
 
 def _drone_prod_builders(prefix):
     """Generate drone builders to help with subshards."""
-    recipes = ["flutter/flutter_drone"]
+    recipes = ["flutter/flutter_drone", "devicelab/devicelab_test_drone"]
     for recipe in recipes:
         luci.recipe(
             name = "%s%s" % (prefix, recipe),
@@ -90,6 +90,14 @@
         dimensions = {"device_type": "none"},
         os = platform_properties["linux"]["os"],
     )
+    common.linux_prod_builder(
+        name = "%sLinux Devicelab Test Drone" % prefix,
+        recipe = "devicelab/devicelab_test_drone",
+        console_view_name = None,
+        caches = ci_yaml.legacy_swarming_caches(ci_yaml_config, None, "linux_android"),
+        dimensions = {"device_type": "msm8952"},
+        os = platform_properties["linux_android"]["os"],
+    )
     common.mac_prod_builder(
         name = "%sMac SDK Drone" % prefix,
         recipe = "flutter/flutter_drone",
diff --git a/config/generated/flutter/luci/cr-buildbucket.cfg b/config/generated/flutter/luci/cr-buildbucket.cfg
index f99d345..56b0898 100644
--- a/config/generated/flutter/luci/cr-buildbucket.cfg
+++ b/config/generated/flutter/luci/cr-buildbucket.cfg
@@ -640,6 +640,47 @@
       }
     }
     builders {
+      name: "Linux Devicelab Test Drone"
+      swarming_host: "chromium-swarm.appspot.com"
+      dimensions: "device_type:msm8952"
+      dimensions: "os:Linux"
+      dimensions: "pool:luci.flutter.prod"
+      exe {
+        cipd_package: "flutter/recipe_bundles/flutter.googlesource.com/recipes"
+        cipd_version: "refs/heads/main"
+        cmd: "luciexe"
+      }
+      properties:
+        '{'
+        '  "$fuchsia/goma": {'
+        '    "server": "rbe-prod1.endpoints.fuchsia-infra-goma-prod.cloud.goog"'
+        '  },'
+        '  "$kitchen": {'
+        '    "emulate_gce": true'
+        '  },'
+        '  "$recipe_engine/isolated": {'
+        '    "server": "https://isolateserver.appspot.com"'
+        '  },'
+        '  "$recipe_engine/swarming": {'
+        '    "server": "https://chromium-swarm.appspot.com"'
+        '  },'
+        '  "clobber": false,'
+        '  "gold_tryjob": false,'
+        '  "goma_jobs": "200",'
+        '  "mastername": "client.flutter",'
+        '  "recipe": "devicelab/devicelab_test_drone",'
+        '  "upload_packages": true'
+        '}'
+      execution_timeout_secs: 3600
+      build_numbers: YES
+      service_account: "flutter-prod-builder@chops-service-accounts.iam.gserviceaccount.com"
+      task_template_canary_percentage {}
+      experiments {
+        key: "luci.recipes.use_python3"
+        value: 100
+      }
+    }
+    builders {
       name: "Linux Engine Drone"
       swarming_host: "chromium-swarm.appspot.com"
       dimensions: "device_type:none"
@@ -94577,6 +94618,47 @@
       }
     }
     builders {
+      name: "beta-Linux Devicelab Test Drone"
+      swarming_host: "chromium-swarm.appspot.com"
+      dimensions: "device_type:msm8952"
+      dimensions: "os:Linux"
+      dimensions: "pool:luci.flutter.prod"
+      exe {
+        cipd_package: "flutter/recipe_bundles/flutter.googlesource.com/recipes"
+        cipd_version: "refs/heads/main"
+        cmd: "luciexe"
+      }
+      properties:
+        '{'
+        '  "$fuchsia/goma": {'
+        '    "server": "rbe-prod1.endpoints.fuchsia-infra-goma-prod.cloud.goog"'
+        '  },'
+        '  "$kitchen": {'
+        '    "emulate_gce": true'
+        '  },'
+        '  "$recipe_engine/isolated": {'
+        '    "server": "https://isolateserver.appspot.com"'
+        '  },'
+        '  "$recipe_engine/swarming": {'
+        '    "server": "https://chromium-swarm.appspot.com"'
+        '  },'
+        '  "clobber": false,'
+        '  "gold_tryjob": false,'
+        '  "goma_jobs": "200",'
+        '  "mastername": "client.flutter",'
+        '  "recipe": "devicelab/devicelab_test_drone",'
+        '  "upload_packages": true'
+        '}'
+      execution_timeout_secs: 3600
+      build_numbers: YES
+      service_account: "flutter-prod-builder@chops-service-accounts.iam.gserviceaccount.com"
+      task_template_canary_percentage {}
+      experiments {
+        key: "luci.recipes.use_python3"
+        value: 100
+      }
+    }
+    builders {
       name: "beta-Linux Engine Drone"
       swarming_host: "chromium-swarm.appspot.com"
       dimensions: "device_type:none"
@@ -95413,6 +95495,47 @@
       }
     }
     builders {
+      name: "stable-Linux Devicelab Test Drone"
+      swarming_host: "chromium-swarm.appspot.com"
+      dimensions: "device_type:msm8952"
+      dimensions: "os:Linux"
+      dimensions: "pool:luci.flutter.prod"
+      exe {
+        cipd_package: "flutter/recipe_bundles/flutter.googlesource.com/recipes"
+        cipd_version: "refs/heads/main"
+        cmd: "luciexe"
+      }
+      properties:
+        '{'
+        '  "$fuchsia/goma": {'
+        '    "server": "rbe-prod1.endpoints.fuchsia-infra-goma-prod.cloud.goog"'
+        '  },'
+        '  "$kitchen": {'
+        '    "emulate_gce": true'
+        '  },'
+        '  "$recipe_engine/isolated": {'
+        '    "server": "https://isolateserver.appspot.com"'
+        '  },'
+        '  "$recipe_engine/swarming": {'
+        '    "server": "https://chromium-swarm.appspot.com"'
+        '  },'
+        '  "clobber": false,'
+        '  "gold_tryjob": false,'
+        '  "goma_jobs": "200",'
+        '  "mastername": "client.flutter",'
+        '  "recipe": "devicelab/devicelab_test_drone",'
+        '  "upload_packages": true'
+        '}'
+      execution_timeout_secs: 3600
+      build_numbers: YES
+      service_account: "flutter-prod-builder@chops-service-accounts.iam.gserviceaccount.com"
+      task_template_canary_percentage {}
+      experiments {
+        key: "luci.recipes.use_python3"
+        value: 100
+      }
+    }
+    builders {
       name: "stable-Linux Engine Drone"
       swarming_host: "chromium-swarm.appspot.com"
       dimensions: "device_type:none"