Merge "Use budgets and deltas to create check results" into main
diff --git a/web/binary-size.ts b/web/binary-size.ts
index d160a8b..eaf93a6 100644
--- a/web/binary-size.ts
+++ b/web/binary-size.ts
@@ -66,6 +66,7 @@
   ciBuilder: string;
   ciBucket: string;
   ciBuilderRepo?: string;
+  ciBuilderGitHost?: string;
 }
 
 declare interface BuildbucketRequest {
@@ -559,7 +560,7 @@
   ): BuildbucketTag[] {
     const tags: Map<string, BuildbucketTag> = new Map();
     tryBuildToBuilderPair.forEach((builderPair, build) => {
-      const host = this.pluginConfig!.gitHost;
+      const host = builderPair.ciBuilderGitHost || this.pluginConfig!.gitHost;
       const project = builderPair.ciBuilderRepo || this.change.project;
       const revision = build.output.properties.got_revision;
       const value = `commit/gitiles/${host}/${project}/+/${revision}`;
diff --git a/web/binary-size_test.ts b/web/binary-size_test.ts
index e83a8ec..1dd323e 100644
--- a/web/binary-size_test.ts
+++ b/web/binary-size_test.ts
@@ -239,10 +239,14 @@
       [{output: {properties: {got_revision: 'beef'}}}, {ciBuilderRepo: ''}],
       [{output: {properties: {got_revision: 'a3ee'}}}, {ciBuilderRepo: ''}],
       [{output: {properties: {got_revision: 'beef'}}}, {ciBuilderRepo: ''}],
+      [{output: {properties: {got_revision: 'a3ee'}}}, {ciBuilderRepo: 'src/other'}],
+      [{output: {properties: {got_revision: 'a3ee'}}}, {ciBuilderGitHost: 'other-host'}],
     ]) as Map<BuildbucketBuild, BuilderPair>;
     assert.deepEqual(element.revisionTags(tryBuildToBuilderPair), [
       {key: 'buildset', value: 'commit/gitiles/host/src/+/beef'},
       {key: 'buildset', value: 'commit/gitiles/host/src/+/a3ee'},
+      {key: 'buildset', value: 'commit/gitiles/host/src/other/+/a3ee'},
+      {key: 'buildset', value: 'commit/gitiles/other-host/src/+/a3ee'},
     ]);
   });