Generate swarming urls for led tasks.

Build links were working properly for production tasks because they were
correctly referencing buildbucket tasks but failing on led tasks because
they need to point to swarming urls.

Bug: https://github.com/flutter/flutter/issues/114164
Change-Id: I4d7870ae8267131530efcc83d8de89a1e4321853
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/35161
Reviewed-by: Yusuf Mohsinally <mohsinally@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
diff --git a/recipe_modules/display_util/api.py b/recipe_modules/display_util/api.py
index a87d831..1d82d71 100644
--- a/recipe_modules/display_util/api.py
+++ b/recipe_modules/display_util/api.py
@@ -41,8 +41,7 @@
       for id_name, build in subbuilds.items():
         with self.m.step.nest(build.build_name) as display_step:
           step_links = display_step.presentation.links
-          step_links[str(build.build_id)
-                    ] = self.m.buildbucket.build_url(build_id=build.build_id)
+          step_links[str(build.build_id)] = build.url
           if build.build_proto.status == common_pb2.Status.Value('SUCCESS'):
             display_step.presentation.status = self.m.step.SUCCESS
           elif build.build_proto.status in infra_failure_states:
diff --git a/recipe_modules/display_util/examples/display_subbuilds.py b/recipe_modules/display_util/examples/display_subbuilds.py
index c6310a2..443a932 100644
--- a/recipe_modules/display_util/examples/display_subbuilds.py
+++ b/recipe_modules/display_util/examples/display_subbuilds.py
@@ -44,7 +44,9 @@
         builder=build.builder.builder,
         build_id=build.id,
         build_name=build.builder.builder,
-        build_proto= build)
+        build_proto=build,
+        url='https://cr-buildbucket.appspot.com/build/%s' % build.id
+    )
   api.display_util.display_subbuilds(
       step_name="display builds",
       subbuilds=final_builds,
diff --git a/recipe_modules/shard_util_v2/api.py b/recipe_modules/shard_util_v2/api.py
index 7ed317e..4861eaf 100644
--- a/recipe_modules/shard_util_v2/api.py
+++ b/recipe_modules/shard_util_v2/api.py
@@ -313,7 +313,9 @@
           builder=build_proto.builder.builder,
           build_id=task_id,
           build_proto=build_proto,
-          build_name=result.name
+          build_name=result.name,
+          url='https://%s/task?id=%s' % (build_proto.infra.swarming.hostname,
+                                         build_proto.infra.swarming.task_id)
       )
     return builds
 
@@ -384,7 +386,8 @@
           builder=build.builder.builder,
           build_id=build_id,
           build_proto=build,
-          build_name=build_id_to_name[int(build_id)]
+          build_name=build_id_to_name[int(build_id)],
+          url=self.m.buildbucket.build_url(build_id=build_id)
       )
     return builds