1# ===----------------------------------------------------------------------===## 2# 3# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4# See https://llvm.org/LICENSE.txt for license information. 5# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6# 7# ===----------------------------------------------------------------------===## 8 9# 10# This file describes the various pre-commit CI bots used to test libc++. 11# 12# This file should never contain logic -- all the logic must be offloaded 13# into scripts. This is critical to being able to reproduce CI issues outside 14# of the CI environment, which is important for debugging. 15# 16# It is also worth noting that this script is split into several sections, the 17# goal being to reduce the load on testers when a commit is known to fail. 18# 19 20definitions: 21 _common: &common 22 timeout_in_minutes: 120 23 retry: 24 automatic: 25 - exit_status: -1 # Agent was lost 26 limit: 2 27 artifact_paths: 28 - "**/test-results.xml" 29 - "**/*.abilist" 30 - "**/crash_diagnostics/*" 31 - "**/CMakeConfigureLog.yaml" 32 - "**/CMakeError.log" 33 - "**/CMakeOutput.log" 34 35steps: 36- group: ARM 37 steps: 38 - label: AArch64 39 command: libcxx/utils/ci/run-buildbot aarch64 40 agents: 41 queue: libcxx-builders-linaro-arm 42 arch: aarch64 43 <<: *common 44 45 - label: AArch64 -fno-exceptions 46 command: libcxx/utils/ci/run-buildbot aarch64-no-exceptions 47 agents: 48 queue: libcxx-builders-linaro-arm 49 arch: aarch64 50 <<: *common 51 52 - label: Armv8 53 command: libcxx/utils/ci/run-buildbot armv8 54 agents: 55 queue: libcxx-builders-linaro-arm 56 arch: armv8l 57 <<: *common 58 59 - label: Armv8 -fno-exceptions 60 command: libcxx/utils/ci/run-buildbot armv8-no-exceptions 61 agents: 62 queue: libcxx-builders-linaro-arm 63 arch: armv8l 64 <<: *common 65 66 - label: Armv7 67 command: libcxx/utils/ci/run-buildbot armv7 68 agents: 69 queue: libcxx-builders-linaro-arm 70 arch: armv8l 71 <<: *common 72 73 - label: Armv7 -fno-exceptions 74 command: libcxx/utils/ci/run-buildbot armv7-no-exceptions 75 agents: 76 queue: libcxx-builders-linaro-arm 77 arch: armv8l 78 <<: *common 79 80 - label: Armv7-M picolibc 81 command: libcxx/utils/ci/run-buildbot armv7m-picolibc 82 agents: 83 queue: libcxx-builders-linaro-arm 84 arch: aarch64 85 <<: *common 86 87 - label: Armv7-M picolibc -fno-exceptions 88 command: libcxx/utils/ci/run-buildbot armv7m-picolibc-no-exceptions 89 agents: 90 queue: libcxx-builders-linaro-arm 91 arch: aarch64 92 <<: *common 93 94- group: AIX 95 steps: 96 - label: AIX (32-bit) 97 command: libcxx/utils/ci/run-buildbot aix 98 env: 99 CC: clang 100 CXX: clang++ 101 OBJECT_MODE: '32' 102 agents: 103 queue: libcxx-builders 104 os: aix 105 <<: *common 106 107 - label: AIX (64-bit) 108 command: libcxx/utils/ci/run-buildbot aix 109 env: 110 CC: clang 111 CXX: clang++ 112 OBJECT_MODE: '64' 113 agents: 114 queue: libcxx-builders 115 os: aix 116 <<: *common 117 118# TODO: Re-enable this when the FreeBSD runners are back online 119# https://github.com/llvm/llvm-project/issues/117780 120# - group: ':freebsd: FreeBSD' 121# steps: 122# - label: FreeBSD 13 amd64 123# command: libcxx/utils/ci/run-buildbot generic-cxx26 124# env: 125# CC: clang17 126# CXX: clang++17 127# agents: 128# queue: libcxx-builders 129# os: freebsd 130# <<: *common 131 132- group: ':android: Android' 133 steps: 134 - label: Android 5.0, x86 NDK 135 command: libcxx/utils/ci/run-buildbot android-ndk-21-def-x86 136 agents: 137 queue: libcxx-builders 138 os: android 139 <<: *common 140 141 - label: Android 13, x86_64 NDK 142 command: libcxx/utils/ci/run-buildbot android-ndk-33-goog-x86_64 143 agents: 144 queue: libcxx-builders 145 os: android 146 <<: *common 147