Add bcid stage reporting to flutter recipes.

API docs use flutter/flutter recipe which was not reporting bcid stages.

Bug: https://github.com/flutter/flutter/issues/117157
Change-Id: Ie6f1f17e4c7f1af298a0ac9ceff892e56cfb5819
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/37520
Reviewed-by: Drew Roen <drewroen@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
diff --git a/recipes/flutter/flutter.py b/recipes/flutter/flutter.py
index 0775a2e..ecba7cd 100644
--- a/recipes/flutter/flutter.py
+++ b/recipes/flutter/flutter.py
@@ -9,10 +9,12 @@
 from PB.go.chromium.org.luci.buildbucket.proto import common as common_pb2
 from PB.go.chromium.org.luci.buildbucket.proto \
   import builds_service as builds_service_pb2
+from RECIPE_MODULES.flutter.flutter_bcid.api import BcidStage
 from google.protobuf import struct_pb2
 
 DEPS = [
     'flutter/adhoc_validation',
+    'flutter/flutter_bcid',
     'flutter/flutter_deps',
     'flutter/os_utils',
     'flutter/repo_util',
@@ -25,6 +27,7 @@
 
 def RunSteps(api):
   """Recipe to run flutter sdk tests."""
+  api.flutter_bcid.report_stage(BcidStage.START.value)
   # Collect memory/cpu/process before task execution.
   api.os_utils.collect_os_info()
   api.os_utils.print_pub_certs()
@@ -33,6 +36,7 @@
   # when don't need to run in shards.
   # include UTF-8 char in path to test for resilience
   checkout_path = api.path['start_dir'].join('Á flutter sdk')
+  api.flutter_bcid.report_stage(BcidStage.FETCH.value)
   with api.step.nest('checkout source code'):
     api.repo_util.checkout(
         'flutter',
diff --git a/recipes/flutter/flutter_drone.py b/recipes/flutter/flutter_drone.py
index d280503..90fa9c9 100644
--- a/recipes/flutter/flutter_drone.py
+++ b/recipes/flutter/flutter_drone.py
@@ -8,10 +8,13 @@
 from contextlib import contextmanager
 import re
 
+from RECIPE_MODULES.flutter.flutter_bcid.api import BcidStage
+
 DEPS = [
+    'flutter/flutter_bcid',
     'flutter/flutter_deps',
-    'flutter/os_utils',
     'flutter/logs_util',
+    'flutter/os_utils',
     'flutter/osx_sdk',
     'flutter/repo_util',
     'flutter/retry',
@@ -60,11 +63,13 @@
 
 
 def RunSteps(api):
+  api.flutter_bcid.report_stage(BcidStage.START.value)
   # Collect memory/cpu/process before task execution.
   api.os_utils.collect_os_info()
   api.os_utils.print_pub_certs()
 
   checkout_path = api.path['start_dir'].join('flutter')
+  api.flutter_bcid.report_stage(BcidStage.FETCH.value)
   api.repo_util.checkout(
       'flutter',
       checkout_path=checkout_path,