CI/CQ: Promote linux_clang_shared_{rel_}compile to CQ and CI

Change-Id: Ia336883296056ba496fa2a8429ff2bec6a6a6964
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/101587
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: Lily Chen <chlily@google.com>
Auto-Submit: Lily Chen <chlily@google.com>
Presubmit-BoringSSL-Verified: boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com <boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com>
diff --git a/infra/config/generated/commit-queue.cfg b/infra/config/generated/commit-queue.cfg
index f141492..0c8c970 100644
--- a/infra/config/generated/commit-queue.cfg
+++ b/infra/config/generated/commit-queue.cfg
@@ -159,11 +159,9 @@
       }
       builders {
         name: "boringssl/try/linux_clang_shared_compile"
-        includable_only: true
       }
       builders {
         name: "boringssl/try/linux_clang_shared_rel_compile"
-        includable_only: true
       }
       builders {
         name: "boringssl/try/linux_clang_ubsan"
diff --git a/infra/config/generated/cr-buildbucket.cfg b/infra/config/generated/cr-buildbucket.cfg
index facf183..8c7fd5d 100644
--- a/infra/config/generated/cr-buildbucket.cfg
+++ b/infra/config/generated/cr-buildbucket.cfg
@@ -935,6 +935,76 @@
       }
     }
     builders {
+      name: "linux_clang_shared_compile"
+      swarming_host: "chromium-swarm.appspot.com"
+      dimensions: "cpu:x86-64"
+      dimensions: "os:Ubuntu-24.04"
+      dimensions: "pool:luci.flex.ci"
+      recipe {
+        name: "boringssl"
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/main"
+        properties_j: "$gatekeeper:{\"group\":\"client.boringssl\"}"
+        properties_j: "check_prefixed_symbols:true"
+        properties_j: "clang:true"
+        properties_j: "cmake_args:{\"BUILD_SHARED_LIBS\":\"1\"}"
+        properties_j: "prefixed_symbols:true"
+        properties_j: "run_ssl_tests:false"
+        properties_j: "run_unit_tests:false"
+        properties_j: "upload_to_cas:[\"*_bench\",\"*_test\",\"bssl\",\"generate_*\",\"jitter_deltas\",\"ssl/test/bssl_shim\",\"test_*\",\"**/lib*.so*\"]"
+      }
+      execution_timeout_secs: 1800
+      caches {
+        name: "boringssl_gocache"
+        path: "gocache"
+      }
+      caches {
+        name: "boringssl_gopath"
+        path: "gopath"
+      }
+      service_account: "boringssl-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+      shadow_builder_adjustments {
+        service_account: "boringssl-try-builder@chops-service-accounts.iam.gserviceaccount.com"
+        pool: "luci.flex.try"
+        dimensions: "pool:luci.flex.try"
+      }
+    }
+    builders {
+      name: "linux_clang_shared_rel_compile"
+      swarming_host: "chromium-swarm.appspot.com"
+      dimensions: "cpu:x86-64"
+      dimensions: "os:Ubuntu-24.04"
+      dimensions: "pool:luci.flex.ci"
+      recipe {
+        name: "boringssl"
+        cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
+        cipd_version: "refs/heads/main"
+        properties_j: "$gatekeeper:{\"group\":\"client.boringssl\"}"
+        properties_j: "check_prefixed_symbols:true"
+        properties_j: "clang:true"
+        properties_j: "cmake_args:{\"BUILD_SHARED_LIBS\":\"1\",\"CMAKE_BUILD_TYPE\":\"Release\"}"
+        properties_j: "prefixed_symbols:true"
+        properties_j: "run_ssl_tests:false"
+        properties_j: "run_unit_tests:false"
+        properties_j: "upload_to_cas:[\"*_bench\",\"*_test\",\"bssl\",\"generate_*\",\"jitter_deltas\",\"ssl/test/bssl_shim\",\"test_*\",\"**/lib*.so*\"]"
+      }
+      execution_timeout_secs: 1800
+      caches {
+        name: "boringssl_gocache"
+        path: "gocache"
+      }
+      caches {
+        name: "boringssl_gopath"
+        path: "gopath"
+      }
+      service_account: "boringssl-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
+      shadow_builder_adjustments {
+        service_account: "boringssl-try-builder@chops-service-accounts.iam.gserviceaccount.com"
+        pool: "luci.flex.try"
+        dimensions: "pool:luci.flex.try"
+      }
+    }
+    builders {
       name: "linux_clang_ubsan"
       swarming_host: "chromium-swarm.appspot.com"
       dimensions: "cpu:x86-64"
diff --git a/infra/config/generated/luci-milo.cfg b/infra/config/generated/luci-milo.cfg
index 77e5423..07e7201 100644
--- a/infra/config/generated/luci-milo.cfg
+++ b/infra/config/generated/luci-milo.cfg
@@ -201,6 +201,16 @@
     short_name: "pfx"
   }
   builders {
+    name: "buildbucket/luci.boringssl.ci/linux_clang_shared_compile"
+    category: "linux|x86-64|clang"
+    short_name: "shdbg"
+  }
+  builders {
+    name: "buildbucket/luci.boringssl.ci/linux_clang_shared_rel_compile"
+    category: "linux|x86-64|clang"
+    short_name: "shrel"
+  }
+  builders {
     name: "buildbucket/luci.boringssl.ci/linux_nothreads"
     category: "linux|x86-64|gcc"
     short_name: "nth"
diff --git a/infra/config/generated/luci-notify.cfg b/infra/config/generated/luci-notify.cfg
index 03b1a0b..0c6a64d 100644
--- a/infra/config/generated/luci-notify.cfg
+++ b/infra/config/generated/luci-notify.cfg
@@ -450,6 +450,36 @@
   }
   builders {
     bucket: "ci"
+    name: "linux_clang_shared_compile"
+    repository: "https://boringssl.googlesource.com/boringssl"
+  }
+}
+notifiers {
+  notifications {
+    on_occurrence: FAILURE
+    on_occurrence: INFRA_FAILURE
+    on_new_status: SUCCESS
+    email {
+      recipients: "boringssl-interrupts@rotations.google.com"
+    }
+  }
+  builders {
+    bucket: "ci"
+    name: "linux_clang_shared_rel_compile"
+    repository: "https://boringssl.googlesource.com/boringssl"
+  }
+}
+notifiers {
+  notifications {
+    on_occurrence: FAILURE
+    on_occurrence: INFRA_FAILURE
+    on_new_status: SUCCESS
+    email {
+      recipients: "boringssl-interrupts@rotations.google.com"
+    }
+  }
+  builders {
+    bucket: "ci"
     name: "linux_clang_ubsan"
     repository: "https://boringssl.googlesource.com/boringssl"
   }
diff --git a/infra/config/generated/luci-scheduler.cfg b/infra/config/generated/luci-scheduler.cfg
index 02e62b5..d19574b 100644
--- a/infra/config/generated/luci-scheduler.cfg
+++ b/infra/config/generated/luci-scheduler.cfg
@@ -295,6 +295,26 @@
   }
 }
 job {
+  id: "linux_clang_shared_compile"
+  realm: "ci"
+  acl_sets: "ci"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "ci"
+    builder: "linux_clang_shared_compile"
+  }
+}
+job {
+  id: "linux_clang_shared_rel_compile"
+  realm: "ci"
+  acl_sets: "ci"
+  buildbucket {
+    server: "cr-buildbucket.appspot.com"
+    bucket: "ci"
+    builder: "linux_clang_shared_rel_compile"
+  }
+}
+job {
   id: "linux_clang_ubsan"
   realm: "ci"
   acl_sets: "ci"
@@ -797,6 +817,8 @@
   triggers: "linux_clang_rel"
   triggers: "linux_clang_rel_msan"
   triggers: "linux_clang_rel_tsan"
+  triggers: "linux_clang_shared_compile"
+  triggers: "linux_clang_shared_rel_compile"
   triggers: "linux_clang_ubsan"
   triggers: "linux_fips"
   triggers: "linux_fips_clang"
diff --git a/infra/config/main.star b/infra/config/main.star
index b943e60..51e5a1b 100755
--- a/infra/config/main.star
+++ b/infra/config/main.star
@@ -267,7 +267,7 @@
     return category
 
 def get_short_name(name, properties):
-    """Derives the short name for a builder.
+    """Derives the (overrideable) default short name for a builder.
 
     Args:
       name: The name of the builder.
@@ -285,6 +285,7 @@
         tags.append("sh")
         if not properties.get("android", False):
             # We don't do shared library release builds except on Android.
+            # TODO: This is no longer true.
             untags.append("dbg")
 
     # Build features.
@@ -1243,12 +1244,10 @@
         "upload_to_cas": FINISHED_OUTPUT_FILES_LINUX_STATIC,
     }),
 )
-# TODO(crbug.com/549361069): Promote to both_builders.
-cq_builder(
+both_builders(
     "linux_clang_shared_compile",
     LINUX_HOST,
-    # TODO(crbug.com/549361069): Enable on CQ.
-    cq_enabled = False,
+    short_name = "shdbg",
     properties = compile_only({
         "cmake_args": {
             "BUILD_SHARED_LIBS": "1",
@@ -1259,12 +1258,10 @@
         "upload_to_cas": FINISHED_OUTPUT_FILES_LINUX_SHARED,
     }),
 )
-# TODO(crbug.com/549361069): Promote to both_builders.
-cq_builder(
+both_builders(
     "linux_clang_shared_rel_compile",
     LINUX_HOST,
-    # TODO(crbug.com/549361069): Enable on CQ.
-    cq_enabled = False,
+    short_name = "shrel",
     properties = compile_only({
         "cmake_args": {
             "BUILD_SHARED_LIBS": "1",