Reland "Pass buildername to devicelab test runner"

Only pass this when given upload_metrics property to
prevent breakages to release branches and try builders.

Original: https://flutter-review.googlesource.com/c/recipes/+/8660

Bug: https://github.com/flutter/flutter/issues/66191
Test: CQ + expectations
Change-Id: I0ef021a16446ade60678267ca3f8e895fd499b28
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/8940
Reviewed-by: Christopher Fujino <fujino@google.com>
Commit-Queue: Casey Hillers <chillers@google.com>
diff --git a/recipes/devicelab/devicelab_drone.expected/post-submit.json b/recipes/devicelab/devicelab_drone.expected/post-submit.json
index 07342cf..b137877 100644
--- a/recipes/devicelab/devicelab_drone.expected/post-submit.json
+++ b/recipes/devicelab/devicelab_drone.expected/post-submit.json
@@ -222,7 +222,9 @@
       "-t",
       "abc",
       "--service-account-token-file",
-      "[CLEANUP]/tmp_tmp_1"
+      "[CLEANUP]/tmp_tmp_1",
+      "--luci-builder",
+      "Linux abc"
     ],
     "cwd": "[START_DIR]/flutter/dev/devicelab",
     "env": {
diff --git a/recipes/devicelab/devicelab_drone.py b/recipes/devicelab/devicelab_drone.py
index 09c7e60..1bd85e3 100644
--- a/recipes/devicelab/devicelab_drone.py
+++ b/recipes/devicelab/devicelab_drone.py
@@ -40,6 +40,7 @@
   deps = api.properties.get('dependencies', [])
   api.flutter_deps.required_deps(env, env_prefixes, deps)
   devicelab_path = flutter_path.join('dev', 'devicelab')
+  test_runner_command = ['dart', 'bin/run.dart', '-t', task_name]
   # Create service account for post submit tests.
   service_account_args = []
   if api.properties.get('upload_metrics'):
@@ -49,10 +50,10 @@
     api.file.write_text(
         "write token", access_token_path, access_token, include_log=False
     )
-    service_account_args = ['--service-account-token-file', access_token_path]
+    test_runner_command.extend([
+      '--service-account-token-file', access_token_path,
+      '--luci-builder', api.properties.get('buildername')])
   # Run test
-  test_runner_command = ['dart', 'bin/run.dart', '-t', task_name]
-  test_runner_command.extend(service_account_args)
   with api.context(env=env, env_prefixes=env_prefixes, cwd=devicelab_path):
     api.step('flutter doctor', ['flutter', 'doctor', '--verbose'])
     api.step('flutter update-packages', ['flutter', 'update-packages'])
@@ -102,6 +103,12 @@
       api.repo_util.flutter_environment_data(),
   )
   yield api.test(
-      "post-submit", api.properties(task_name='abc', upload_metrics=True),
+      "post-submit",
+      api.properties(
+          buildername='Linux abc',
+          pool='flutter.luci.prod',
+          task_name='abc',
+          upload_metrics=True
+      ),
       api.repo_util.flutter_environment_data()
   )