| # Copyright 2021 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| """Definitions of builders in the chromium.infra builder group.""" |
| |
| load("//lib/branches.star", "branches") |
| load("//lib/builders.star", "os", "sheriff_rotations") |
| load("//lib/ci.star", "ci") |
| load("//lib/consoles.star", "consoles") |
| |
| ci.defaults.set( |
| builder_group = "chromium.infra", |
| pool = ci.DEFAULT_POOL, |
| cores = 8, |
| os = os.LINUX_DEFAULT, |
| execution_timeout = ci.DEFAULT_EXECUTION_TIMEOUT, |
| service_account = ci.DEFAULT_SERVICE_ACCOUNT, |
| shadow_service_account = ci.DEFAULT_SHADOW_SERVICE_ACCOUNT, |
| ) |
| |
| consoles.console_view( |
| name = "chromium.infra", |
| ) |
| |
| # Builders monitored by go/clank-autoroll |
| consoles.list_view( |
| name = "android.autoroll", |
| title = "Android Autoroll Gardening", |
| ) |
| [branches.list_view_entry( |
| list_view = "android.autoroll", |
| builder = "chromium:ci/{}".format(name), |
| ) for name in ( |
| "android-androidx-packager", |
| "android-sdk-packager", |
| "3pp-linux-amd64-packager", |
| )] |
| |
| def packager_builder(**kwargs): |
| return ci.builder( |
| service_account = "chromium-cipd-builder@chops-service-accounts.iam.gserviceaccount.com", |
| shadow_service_account = "chromium-cipd-try-builder@chops-service-accounts.iam.gserviceaccount.com", |
| **kwargs |
| ) |
| |
| packager_builder( |
| name = "3pp-linux-amd64-packager", |
| executable = "recipe:chromium_3pp", |
| # Every 6 hours starting at 5am UTC. |
| schedule = "0 5/6 * * * *", |
| triggered_by = [], |
| builderless = False, |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|3pp|linux", |
| short_name = "amd64", |
| ), |
| notifies = ["chromium-infra"], |
| properties = { |
| "$build/chromium_3pp": { |
| "platform": "linux-amd64", |
| "preprocess": [{ |
| "name": "third_party/android_deps", |
| "cmd": [ |
| "{CHECKOUT}/src/third_party/android_deps/fetch_all.py", |
| "-v", |
| "--ignore-vulnerabilities", |
| ], |
| }], |
| "gclient_config": "chromium", |
| "gclient_apply_config": ["android"], |
| }, |
| }, |
| ) |
| |
| packager_builder( |
| name = "3pp-mac-amd64-packager", |
| executable = "recipe:chromium_3pp", |
| # TODO(crbug.com/1267449): Trigger builds routinely once works fine. |
| schedule = "triggered", |
| triggered_by = [], |
| builderless = True, |
| cores = None, |
| os = os.MAC_DEFAULT, |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|3pp|mac", |
| short_name = "amd64", |
| ), |
| notifies = ["chromium-infra"], |
| properties = { |
| "$build/chromium_3pp": { |
| "platform": "mac-amd64", |
| "gclient_config": "chromium", |
| }, |
| }, |
| ) |
| |
| packager_builder( |
| name = "3pp-windows-amd64-packager", |
| description_html = "3PP Packager for Windows", |
| executable = "recipe:chromium_3pp", |
| # Every 6 hours starting at 5am UTC. |
| schedule = "0 5/6 * * * *", |
| triggered_by = [], |
| builderless = True, |
| cores = None, |
| os = os.WINDOWS_DEFAULT, |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|3pp|win", |
| short_name = "amd64", |
| ), |
| contact_team_email = "chrome-browser-infra-team@google.com", |
| notifies = ["chromium-infra"], |
| properties = { |
| "$build/chromium_3pp": { |
| "platform": "windows-amd64", |
| "gclient_config": "chromium", |
| }, |
| }, |
| ) |
| |
| packager_builder( |
| name = "android-androidx-packager", |
| executable = "recipe:android/androidx_packager", |
| schedule = "0 7,14,22 * * * *", |
| triggered_by = [], |
| sheriff_rotations = sheriff_rotations.ANDROID, |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|android", |
| short_name = "androidx", |
| ), |
| contact_team_email = "clank-build@google.com", |
| notifies = ["chromium-androidx-packager"], |
| ) |
| |
| packager_builder( |
| name = "android-avd-packager", |
| executable = "recipe:android/avd_packager", |
| # Triggered manually through the scheduler UI |
| # https://luci-scheduler.appspot.com/jobs/chromium/android-avd-packager |
| schedule = "triggered", |
| triggered_by = [], |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|android", |
| short_name = "avd", |
| ), |
| properties = { |
| "$build/avd_packager": { |
| "avd_configs": [ |
| # google_apis system images |
| "tools/android/avd/proto/creation/android_28_google_apis_x86.textpb", |
| "tools/android/avd/proto/creation/android_29_google_apis_x86.textpb", |
| "tools/android/avd/proto/creation/android_30_google_apis_x86.textpb", |
| "tools/android/avd/proto/creation/android_31_google_apis_x64.textpb", |
| "tools/android/avd/proto/creation/android_32_google_apis_x64_foldable.textpb", |
| "tools/android/avd/proto/creation/android_33_google_apis_x64.textpb", |
| "tools/android/avd/proto/creation/android_34_google_apis_x64.textpb", |
| |
| # google_atd system images |
| "tools/android/avd/proto/creation/android_30_google_atd_x86.textpb", |
| "tools/android/avd/proto/creation/android_30_google_atd_x64.textpb", |
| "tools/android/avd/proto/creation/android_31_google_atd_x64.textpb", |
| "tools/android/avd/proto/creation/android_32_google_atd_x64_foldable.textpb", |
| "tools/android/avd/proto/creation/android_33_google_atd_x64.textpb", |
| |
| # TODO(hypan): Using more specific names for the configs below. |
| "tools/android/avd/proto/creation/generic_android19.textpb", |
| "tools/android/avd/proto/creation/generic_android22.textpb", |
| "tools/android/avd/proto/creation/generic_android23.textpb", |
| "tools/android/avd/proto/creation/generic_android24.textpb", |
| "tools/android/avd/proto/creation/generic_android25.textpb", |
| "tools/android/avd/proto/creation/generic_android26.textpb", |
| "tools/android/avd/proto/creation/generic_android27.textpb", |
| ], |
| "gclient_config": "chromium", |
| "gclient_apply_config": ["android"], |
| }, |
| }, |
| ) |
| |
| packager_builder( |
| name = "android-sdk-packager", |
| executable = "recipe:android/sdk_packager", |
| schedule = "0 7 * * *", |
| triggered_by = [], |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|android", |
| short_name = "sdk", |
| ), |
| properties = { |
| "packages": [ |
| { |
| "sdk_package_name": "build-tools;34.0.0", |
| "cipd_yaml": "third_party/android_sdk/cipd/build-tools/34.0.0.yaml", |
| }, |
| { |
| "sdk_package_name": "cmdline-tools;latest", |
| "cipd_yaml": "third_party/android_sdk/cipd/cmdline-tools.yaml", |
| }, |
| { |
| "sdk_package_name": "emulator", |
| "cipd_yaml": "third_party/android_sdk/cipd/emulator.yaml", |
| }, |
| { |
| "sdk_package_name": "emulator", |
| "cipd_yaml": "third_party/android_sdk/cipd/emulator.yaml", |
| "sdk_channel": "BETA", |
| }, |
| { |
| "sdk_package_name": "emulator", |
| "cipd_yaml": "third_party/android_sdk/cipd/emulator.yaml", |
| "sdk_channel": "CANARY", |
| }, |
| { |
| "sdk_package_name": "platforms;android-34", |
| "cipd_yaml": "third_party/android_sdk/cipd/platforms/android-34.yaml", |
| }, |
| { |
| "sdk_package_name": "platform-tools", |
| "cipd_yaml": "third_party/android_sdk/cipd/platform-tools.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-19;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-19/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-22;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-22/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-23;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-23/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-24;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-24/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-25;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-25/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-26;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-26/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-27;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-27/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-28;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-28/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-29;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-29/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-30;google_apis;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-30/google_apis/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-30;google_atd;x86", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-30/google_atd/x86.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-30;google_atd;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-30/google_atd/x86_64.yaml", |
| }, |
| # use x86_64 since sdkmanager don't ship x86 for android-31 and above. |
| { |
| "sdk_package_name": "system-images;android-31;google_apis;arm64-v8a", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-31/google_apis/arm64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-31;google_apis;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-31/google_apis/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-31;google_atd;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-31/google_atd/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-32;google_apis;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-32/google_apis/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-32;google_atd;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-32/google_atd/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-33;google_apis;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-33/google_apis/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-33;google_atd;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-33/google_atd/x86_64.yaml", |
| }, |
| { |
| "sdk_package_name": "system-images;android-34;google_apis;x86_64", |
| "cipd_yaml": "third_party/android_sdk/cipd/system_images/android-34/google_apis/x86_64.yaml", |
| }, |
| ], |
| }, |
| ) |
| |
| packager_builder( |
| name = "rts-model-packager", |
| executable = "recipe:chromium_rts/create_model", |
| schedule = "0 9 * * *", # at 1AM or 2AM PT (depending on DST), once a day. |
| triggered_by = [], |
| builderless = False, |
| cores = None, |
| console_view_entry = consoles.console_view_entry( |
| category = "packager|rts", |
| short_name = "create-model", |
| ), |
| execution_timeout = 10 * time.hour, |
| notifies = [ |
| luci.notifier( |
| name = "rts-model-packager-notifier", |
| notify_emails = ["chrome-browser-infra-team@google.com"], |
| on_occurrence = ["FAILURE", "INFRA_FAILURE"], |
| ), |
| ], |
| ) |
| |
| ci.builder( |
| name = "android-device-flasher", |
| executable = "recipe:android/device_flasher", |
| # TODO(crbug.com/1260195): Find the sweet spot for the frequency. |
| schedule = "0 9 * * 1", # at 9am UTC every Monday. |
| triggered_by = [], |
| console_view_entry = consoles.console_view_entry( |
| short_name = "flash", |
| ), |
| notifies = ["chromium-infra"], |
| properties = { |
| "flash_criteria": [ |
| # Used by ci/Android Release (Nexus 5X) |
| # This is mirrored by the CQ builder android-arm64-rel |
| { |
| "pool": "chromium.tests", |
| "device_type": "bullhead", |
| "device_os": "N2G48C", |
| "max_uid_threshold": 18000, |
| }, |
| { |
| "pool": "chromium.tests", |
| "device_type": "walleye", |
| "device_os": "OPM4.171019.021.P2", |
| "max_uid_threshold": 18000, |
| }, |
| # Used by ci/android-pie-arm64-rel |
| # This is mirrored by the CQ builder android-arm64-rel |
| { |
| "pool": "chromium.tests", |
| "device_type": "walleye", |
| "device_os": "PQ3A.190801.002", |
| "max_uid_threshold": 18000, |
| }, |
| # Used by ci/android-pie-arm64-rel |
| # This is mirrored by the CQ builder android-arm64-rel |
| { |
| "pool": "chromium.tests", |
| "device_type": "sailfish", |
| "device_os": "PQ3A.190801.002", |
| "max_uid_threshold": 18000, |
| }, |
| { |
| "pool": "chromium.tests", |
| "device_type": "walleye", |
| "device_os": "QQ1A.191205.008", |
| "max_uid_threshold": 18000, |
| }, |
| # Used by GPU team |
| { |
| "pool": "chromium.tests.gpu", |
| "device_type": "oriole", |
| "device_os": "TP1A.220624.021", |
| "max_uid_threshold": 18000, |
| }, |
| ], |
| }, |
| ) |
| |
| ci.builder( |
| name = "rts-suite-analysis", |
| executable = "recipe:chromium_rts/rts_analyze", |
| schedule = "0 9 * * *", # at 1AM or 2AM PT (depending on DST), once a day. |
| triggered_by = [], |
| builderless = False, |
| cores = None, |
| console_view_entry = consoles.console_view_entry( |
| category = "analysis|rts", |
| short_name = "suite-analysis", |
| ), |
| execution_timeout = 10 * time.hour, |
| service_account = "chromium-cipd-builder@chops-service-accounts.iam.gserviceaccount.com", |
| ) |