Update xcode in bots (2nd attempt)

Turns out there are 2 ways to specify an xcode version on the bots.
https://crrev.com/c/7037174 used a way that differs from the one
currently in place in the bot recipe [1]. See thread [2] for more
details. This CL reverts most xcode changes from the original CL
and adopts an approach similar to https://crrev.com/i/8594830
instead.

I would have preferred to verify this CL works ahead of landing
with led, but I don't have permission [3]. No-Try: True is added
because mac_asan is busted https://crrev.com/c/7045106.

[1] https://source.chromium.org/chromium/infra/infra_superproject/+/main:build/recipes/recipes/libyuv/libyuv.py
[2] https://chat.google.com/room/AAAAzEuhg8A/S-r4vJCVnLY
[3] https://chat.google.com/room/AAAAzEuhg8A/S-r4vJCVnLY

No-Try: True
Bug: 448679376
Change-Id: I24609c820491f5bd93052687af8989f63172b144
This commit is contained in:
Victor Hugo Vianna Silva 2025-10-15 01:52:28 +01:00 committed by Victor Vianna
parent 613393324f
commit d8f6a0ef2f
2 changed files with 12 additions and 82 deletions

View File

@ -344,13 +344,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}"
properties_j: "builder_group:\"client.libyuv\"" properties_j: "builder_group:\"client.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -367,13 +362,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}"
properties_j: "builder_group:\"client.libyuv\"" properties_j: "builder_group:\"client.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -390,13 +380,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}"
properties_j: "builder_group:\"client.libyuv\"" properties_j: "builder_group:\"client.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -565,13 +550,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}"
properties_j: "builder_group:\"client.libyuv\"" properties_j: "builder_group:\"client.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_ios_17a324"
path: "xcode_ios_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -588,13 +568,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-trusted\"}"
properties_j: "builder_group:\"client.libyuv\"" properties_j: "builder_group:\"client.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_ios_17a324"
path: "xcode_ios_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -751,13 +726,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}"
properties_j: "builder_group:\"tryserver.libyuv\"" properties_j: "builder_group:\"tryserver.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_ios_17a324"
path: "xcode_ios_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -774,13 +744,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}"
properties_j: "builder_group:\"tryserver.libyuv\"" properties_j: "builder_group:\"tryserver.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_ios_17a324"
path: "xcode_ios_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -949,13 +914,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}"
properties_j: "builder_group:\"tryserver.libyuv\"" properties_j: "builder_group:\"tryserver.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -972,13 +932,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}"
properties_j: "builder_group:\"tryserver.libyuv\"" properties_j: "builder_group:\"tryserver.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com"
} }
@ -995,13 +950,8 @@ buckets {
cipd_version: "refs/heads/main" cipd_version: "refs/heads/main"
properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}" properties_j: "$build/siso:{\"configs\":[\"builder\"],\"enable_cloud_profiler\":true,\"enable_cloud_trace\":true,\"enable_monitoring\":true,\"project\":\"rbe-webrtc-untrusted\"}"
properties_j: "builder_group:\"tryserver.libyuv\"" properties_j: "builder_group:\"tryserver.libyuv\""
properties_j: "xcode_build_version:\"17a324\""
} }
execution_timeout_secs: 10800 execution_timeout_secs: 10800
caches {
name: "xcode_mac_17a324"
path: "xcode_mac_17a324.app"
}
build_numbers: YES build_numbers: YES
service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com" service_account: "libyuv-try-builder@chops-service-accounts.iam.gserviceaccount.com"
} }

View File

@ -5,10 +5,6 @@
lucicfg.check_version("1.30.9") lucicfg.check_version("1.30.9")
load("@chromium-luci//xcode.star", _xcode = "xcode")
_XCODE_VERSION = "17a324"
LIBYUV_GIT = "https://chromium.googlesource.com/libyuv/libyuv" LIBYUV_GIT = "https://chromium.googlesource.com/libyuv/libyuv"
LIBYUV_GERRIT = "https://chromium-review.googlesource.com/libyuv/libyuv" LIBYUV_GERRIT = "https://chromium-review.googlesource.com/libyuv/libyuv"
@ -202,7 +198,7 @@ def get_os_dimensions(os):
return {"os": "Ubuntu-22.04", "cores": "8", "cpu": "x86-64"} return {"os": "Ubuntu-22.04", "cores": "8", "cpu": "x86-64"}
return {} return {}
def libyuv_ci_builder(name, dimensions, properties, triggered_by, caches): def libyuv_ci_builder(name, dimensions, properties, triggered_by):
return luci.builder( return luci.builder(
name = name, name = name,
dimensions = dimensions, dimensions = dimensions,
@ -217,10 +213,9 @@ def libyuv_ci_builder(name, dimensions, properties, triggered_by, caches):
name = "libyuv/libyuv", name = "libyuv/libyuv",
cipd_package = "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build", cipd_package = "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
), ),
caches = caches
) )
def libyuv_try_builder(name, dimensions, properties, caches, recipe_name = "libyuv/libyuv"): def libyuv_try_builder(name, dimensions, properties, recipe_name = "libyuv/libyuv"):
return luci.builder( return luci.builder(
name = name, name = name,
dimensions = dimensions, dimensions = dimensions,
@ -234,23 +229,11 @@ def libyuv_try_builder(name, dimensions, properties, caches, recipe_name = "liby
name = recipe_name, name = recipe_name,
cipd_package = "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build", cipd_package = "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build",
), ),
caches = caches
) )
def get_xcode(os): def get_build_properties(bucket):
if os == "mac":
return _xcode.for_mac(_XCODE_VERSION)
if os == "ios":
return _xcode.for_ios(_XCODE_VERSION)
return None
def get_caches(os):
xcode = get_xcode(os)
return [xcode.cache] if xcode else []
def get_build_properties(bucket, os):
rbe_project = RBE_PROJECT.get(bucket) rbe_project = RBE_PROJECT.get(bucket)
properties = { return {
"$build/siso": { "$build/siso": {
"project": rbe_project, "project": rbe_project,
"configs": ["builder"], "configs": ["builder"],
@ -258,42 +241,39 @@ def get_build_properties(bucket, os):
"enable_cloud_trace": True, "enable_cloud_trace": True,
"enable_monitoring": True, "enable_monitoring": True,
}, },
"$depot_tools/osx_sdk": {
"sdk_version": "17a324"
},
} }
xcode = get_xcode(os)
if xcode:
properties["xcode_build_version"] = xcode.version
return properties
def ci_builder(name, os, category, short_name = None): def ci_builder(name, os, category, short_name = None):
dimensions = get_os_dimensions(os) dimensions = get_os_dimensions(os)
properties = get_build_properties("ci", os) properties = get_build_properties("ci")
dimensions["pool"] = "luci.flex.ci" dimensions["pool"] = "luci.flex.ci"
properties["builder_group"] = "client.libyuv" properties["builder_group"] = "client.libyuv"
triggered_by = ["master-gitiles-trigger" if os != "android" else "Android Debug"] triggered_by = ["master-gitiles-trigger" if os != "android" else "Android Debug"]
libyuv_ci_view(name, category, short_name) libyuv_ci_view(name, category, short_name)
caches = get_caches(os) return libyuv_ci_builder(name, dimensions, properties, triggered_by)
return libyuv_ci_builder(name, dimensions, properties, triggered_by, caches)
def try_builder(name, os, experiment_percentage = None): def try_builder(name, os, experiment_percentage = None):
dimensions = get_os_dimensions(os) dimensions = get_os_dimensions(os)
properties = get_build_properties("try", os) properties = get_build_properties("try")
dimensions["pool"] = "luci.flex.try" dimensions["pool"] = "luci.flex.try"
properties["builder_group"] = "tryserver.libyuv" properties["builder_group"] = "tryserver.libyuv"
caches = get_caches(os)
if name == "presubmit": if name == "presubmit":
recipe_name = "run_presubmit" recipe_name = "run_presubmit"
properties["repo_name"] = "libyuv" properties["repo_name"] = "libyuv"
properties["runhooks"] = True properties["runhooks"] = True
libyuv_try_job_verifier(name, "config", experiment_percentage) libyuv_try_job_verifier(name, "config", experiment_percentage)
return libyuv_try_builder(name, dimensions, properties, caches, recipe_name) return libyuv_try_builder(name, dimensions, properties, recipe_name)
libyuv_try_job_verifier(name, "master", experiment_percentage) libyuv_try_job_verifier(name, "master", experiment_percentage)
libyuv_try_view(name) libyuv_try_view(name)
return libyuv_try_builder(name, dimensions, properties, caches) return libyuv_try_builder(name, dimensions, properties)
luci.builder( luci.builder(
name = "DEPS Autoroller", name = "DEPS Autoroller",