11from custom .factories import (
22 UnixBuild ,
33 UnixPerfBuild ,
4- RHEL7Build ,
54 RHEL8Build ,
65 CentOS9Build ,
76 FedoraStableBuild ,
87 FedoraRawhideBuild ,
8+ FedoraRawhideFreedthreadingBuild ,
99 UnixAsanBuild ,
1010 UnixAsanDebugBuild ,
11+ UnixBigmemBuild ,
1112 UnixTraceRefsBuild ,
1213 UnixVintageParserBuild ,
1314 UnixRefleakBuild ,
1617 MacOSAsanNoGilBuild ,
1718 AIXBuild ,
1819 AIXBuildWithXLC ,
19- PGOUnixBuild ,
2020 ClangUnixBuild ,
2121 ClangUbsanLinuxBuild ,
22+ ClangUbsanFunctionLinuxBuild ,
2223 ClangUnixInstalledBuild ,
2324 SharedUnixBuild ,
2425 SlowNonDebugUnixBuild ,
26+ SlowUnixInstalledBuild ,
2527 NonDebugUnixBuild ,
2628 UnixInstalledBuild ,
2729 LTONonDebugUnixBuild ,
2830 LTOPGONonDebugBuild ,
29- ClangLTOPGONonDebugBuild ,
3031 RHEL8NoBuiltinHashesUnixBuild ,
3132 RHEL8NoBuiltinHashesUnixBuildExceptBlake2 ,
3233 CentOS9NoBuiltinHashesUnixBuild ,
4344 WindowsARM64ReleaseBuild ,
4445 Wasm32WasiCrossBuild ,
4546 Wasm32WasiDebugBuild ,
47+ IOSARM64SimulatorBuild ,
48+ AndroidBuild ,
49+ ValgrindBuild ,
4650)
4751
4852# A builder can be marked as stable when at least the 10 latest builds are
6670STABLE_BUILDERS_TIER_1 = [
6771 # Linux x86-64 GCC
6872 ("AMD64 Debian root" , "angelico-debian-amd64" , UnixBuild ),
69- ("AMD64 Debian PGO" , "gps-debian-profile-opt" , PGOUnixBuild ),
7073 ("AMD64 Ubuntu Shared" , "bolen-ubuntu" , SharedUnixBuild ),
7174 ("AMD64 Fedora Stable" , "cstratak-fedora-stable-x86_64" , FedoraStableBuild ),
7275 ("AMD64 Fedora Stable Refleaks" , "cstratak-fedora-stable-x86_64" , UnixRefleakBuild ),
7376 ("AMD64 Fedora Stable LTO" , "cstratak-fedora-stable-x86_64" , LTONonDebugUnixBuild ),
7477 ("AMD64 Fedora Stable LTO + PGO" , "cstratak-fedora-stable-x86_64" , LTOPGONonDebugBuild ),
75- ("AMD64 RHEL7" , "cstratak-RHEL7-x86_64" , RHEL7Build ),
76- ("AMD64 RHEL7 Refleaks" , "cstratak-RHEL7-x86_64" , UnixRefleakBuild ),
77- ("AMD64 RHEL7 LTO" , "cstratak-RHEL7-x86_64" , LTONonDebugUnixBuild ),
78- ("AMD64 RHEL7 LTO + PGO" , "cstratak-RHEL7-x86_64" , LTOPGONonDebugBuild ),
7978 ("AMD64 RHEL8" , "cstratak-RHEL8-x86_64" , RHEL8Build ),
8079 ("AMD64 RHEL8 Refleaks" , "cstratak-RHEL8-x86_64" , UnixRefleakBuild ),
8180 ("AMD64 RHEL8 LTO" , "cstratak-RHEL8-x86_64" , LTONonDebugUnixBuild ),
8281 ("AMD64 RHEL8 LTO + PGO" , "cstratak-RHEL8-x86_64" , LTOPGONonDebugBuild ),
83- ("AMD64 Ubuntu NoGIL" , "itamaro-ubuntu -aws" , UnixNoGilBuild ),
84- ("AMD64 Ubuntu NoGIL Refleaks" , "itamaro-ubuntu -aws" , UnixNoGilRefleakBuild ),
82+ ("AMD64 CentOS9 NoGIL" , "itamaro-centos -aws" , UnixNoGilBuild ),
83+ ("AMD64 CentOS9 NoGIL Refleaks" , "itamaro-centos -aws" , UnixNoGilRefleakBuild ),
8584
8685 # Windows x86-64 MSVC
8786 ("AMD64 Windows10" , "bolen-windows10" , Windows64Build ),
104103 ("AMD64 Fedora Stable Clang Installed" , "cstratak-fedora-stable-x86_64" , ClangUnixInstalledBuild ),
105104
106105 # Linux ppc64le GCC
107- ("PPC64 Fedora" , "edelsohn-fedora-ppc64" , FedoraStableBuild ),
108-
109106 ("PPC64LE Fedora Stable" , "cstratak-fedora-stable-ppc64le" , FedoraStableBuild ),
110107 ("PPC64LE Fedora Stable Refleaks" , "cstratak-fedora-stable-ppc64le" , UnixRefleakBuild ),
111108 ("PPC64LE Fedora Stable LTO" , "cstratak-fedora-stable-ppc64le" , LTONonDebugUnixBuild ),
112109 ("PPC64LE Fedora Stable LTO + PGO" , "cstratak-fedora-stable-ppc64le" , LTOPGONonDebugBuild ),
113110
114- ("PPC64LE RHEL7" , "cstratak-RHEL7-ppc64le" , RHEL7Build ),
115- ("PPC64LE RHEL7 Refleaks" , "cstratak-RHEL7-ppc64le" , UnixRefleakBuild ),
116- ("PPC64LE RHEL7 LTO" , "cstratak-RHEL7-ppc64le" , LTONonDebugUnixBuild ),
117- ("PPC64LE RHEL7 LTO + PGO" , "cstratak-RHEL7-ppc64le" , LTOPGONonDebugBuild ),
118-
119111 ("PPC64LE RHEL8" , "cstratak-RHEL8-ppc64le" , RHEL8Build ),
120112 ("PPC64LE RHEL8 Refleaks" , "cstratak-RHEL8-ppc64le" , UnixRefleakBuild ),
121113 ("PPC64LE RHEL8 LTO" , "cstratak-RHEL8-ppc64le" , LTONonDebugUnixBuild ),
134126 ("aarch64 RHEL8 LTO" , "cstratak-RHEL8-aarch64" , LTONonDebugUnixBuild ),
135127 ("aarch64 RHEL8 LTO + PGO" , "cstratak-RHEL8-aarch64" , LTOPGONonDebugBuild ),
136128
137- ("aarch64 Debian Clang LTO + PGO" , "gps-arm64-debian" , ClangLTOPGONonDebugBuild ),
138-
139129 # macOS aarch64 clang
140130 ("ARM64 macOS" , "pablogsal-macos-m1" , MacOSArmWithBrewBuild ),
141131 ("ARM64 MacOS M1 NoGIL" , "itamaro-macos-arm64-aws" , MacOSArmWithBrewNoGilBuild ),
149139
150140# -- Stable Tier-3 builder ----------------------------------------------
151141STABLE_BUILDERS_TIER_3 = [
142+
152143 # Linux s390x GCC
153- ("s390x SLES" , "edelsohn-sles-z" , UnixBuild ),
154- ("s390x Debian" , "edelsohn-debian-z" , UnixBuild ),
155- ("s390x Fedora" , "edelsohn-fedora-z" , UnixBuild ),
156- ("s390x Fedora Refleaks" , "edelsohn-fedora-z" , UnixRefleakBuild ),
157- ("s390x Fedora LTO" , "edelsohn-fedora-z" , LTONonDebugUnixBuild ),
158- ("s390x Fedora LTO + PGO" , "edelsohn-fedora-z" , LTOPGONonDebugBuild ),
159- ("s390x RHEL7" , "edelsohn-rhel-z" , UnixBuild ),
160- ("s390x RHEL7 Refleaks" , "edelsohn-rhel-z" , UnixRefleakBuild ),
161- ("s390x RHEL7 LTO" , "edelsohn-rhel-z" , LTONonDebugUnixBuild ),
162- ("s390x RHEL7 LTO + PGO" , "edelsohn-rhel-z" , LTOPGONonDebugBuild ),
163- ("s390x RHEL8" , "edelsohn-rhel8-z" , UnixBuild ),
164- ("s390x RHEL8 Refleaks" , "edelsohn-rhel8-z" , UnixRefleakBuild ),
165- ("s390x RHEL8 LTO" , "edelsohn-rhel8-z" , LTONonDebugUnixBuild ),
166- ("s390x RHEL8 LTO + PGO" , "edelsohn-rhel8-z" , LTOPGONonDebugBuild ),
144+ ("s390x RHEL9" , "cstratak-rhel9-s390x" , UnixBuild ),
145+ ("s390x RHEL9 Refleaks" , "cstratak-rhel9-s390x" , UnixRefleakBuild ),
146+ ("s390x RHEL9 LTO" , "cstratak-rhel9-s390x" , LTONonDebugUnixBuild ),
147+ ("s390x RHEL9 LTO + PGO" , "cstratak-rhel9-s390x" , LTOPGONonDebugBuild ),
148+ ("s390x RHEL8" , "cstratak-rhel8-s390x" , UnixBuild ),
149+ ("s390x RHEL8 Refleaks" , "cstratak-rhel8-s390x" , UnixRefleakBuild ),
150+ ("s390x RHEL8 LTO" , "cstratak-rhel8-s390x" , LTONonDebugUnixBuild ),
151+ ("s390x RHEL8 LTO + PGO" , "cstratak-rhel8-s390x" , LTOPGONonDebugBuild ),
167152
168153 # Linux ppc64le Clang
169154 ("PPC64LE Fedora Stable Clang" , "cstratak-fedora-stable-ppc64le" , ClangUnixBuild ),
174159
175160 # FreBSD x86-64 clang
176161 ("AMD64 FreeBSD" , "ware-freebsd" , UnixBuild ),
162+ ("AMD64 FreeBSD Refleaks" , "ware-freebsd" , UnixRefleakBuild ),
177163 ("AMD64 FreeBSD14" , "opsec-fbsd14" , UnixBuild ),
178164
179165 # Windows aarch64 MSVC
180166 ("ARM64 Windows" , "linaro-win-arm64" , WindowsARM64Build ),
181167 ("ARM64 Windows Non-Debug" , "linaro-win-arm64" , WindowsARM64ReleaseBuild ),
168+
169+ # iOS
170+ ("iOS ARM64 Simulator" , "rkm-arm64-ios-simulator" , IOSARM64SimulatorBuild ),
171+
172+ # Android
173+ ("aarch64 Android" , "mhsmith-android-aarch64" , AndroidBuild ),
174+ ("AMD64 Android" , "mhsmith-android-x86_64" , AndroidBuild ),
182175]
183176
184177
188181 # Special builds: FIPS, ASAN, UBSAN, TraceRefs, Perf, etc.
189182 ("AMD64 RHEL8 FIPS Only Blake2 Builtin Hash" , "cstratak-RHEL8-fips-x86_64" , RHEL8NoBuiltinHashesUnixBuildExceptBlake2 ),
190183 ("AMD64 Arch Linux Asan" , "pablogsal-arch-x86_64" , UnixAsanBuild ),
191- ("AMD64 Arch Linux Usan" , "pablogsal-arch-x86_64" , ClangUbsanLinuxBuild ),
192184 ("AMD64 Arch Linux Asan Debug" , "pablogsal-arch-x86_64" , UnixAsanDebugBuild ),
193185 ("AMD64 Arch Linux TraceRefs" , "pablogsal-arch-x86_64" , UnixTraceRefsBuild ),
194186 ("AMD64 Arch Linux Perf" , "pablogsal-arch-x86_64" , UnixPerfBuild ),
187+ # UBSAN with -fno-sanitize=function, without which we currently fail (as
188+ # tracked in gh-111178). The full "AMD64 Arch Linux Usan" is unstable, below
189+ ("AMD64 Arch Linux Usan Function" , "pablogsal-arch-x86_64" , ClangUbsanFunctionLinuxBuild ),
195190
196- # Linux s390x Clang
197- ("s390x Fedora Clang " , "edelsohn-fedora-z " , ClangUnixBuild ),
198- ("s390x Fedora Clang Installed" , "edelsohn-fedora-z " , ClangUnixInstalledBuild ),
191+ # Linux x86 (32-bit) GCC
192+ ("x86 Debian Non-Debug with X " , "ware-debian-x86 " , NonDebugUnixBuild ),
193+ ("x86 Debian Installed with X " , "ware-debian-x86 " , UnixInstalledBuild ),
199194]
200195
201196
220215 ("AMD64 CentOS9 LTO + PGO" , "cstratak-CentOS9-x86_64" , LTOPGONonDebugBuild ),
221216 ("AMD64 CentOS9 FIPS Only Blake2 Builtin Hash" , "cstratak-CentOS9-fips-x86_64" , CentOS9NoBuiltinHashesUnixBuildExceptBlake2 ),
222217 ("AMD64 CentOS9 FIPS No Builtin Hashes" , "cstratak-CentOS9-fips-x86_64" , CentOS9NoBuiltinHashesUnixBuild ),
218+
219+ ("AMD64 Arch Linux Valgrind" , "pablogsal-arch-x86_64" , ValgrindBuild ),
223220]
224221
225222
230227 # UBSan is a special build
231228 ("AMD64 Fedora Rawhide Clang" , "cstratak-fedora-rawhide-x86_64" , ClangUnixBuild ),
232229 ("AMD64 Fedora Rawhide Clang Installed" , "cstratak-fedora-rawhide-x86_64" , ClangUnixInstalledBuild ),
233- ("AMD64 Clang UBSan" , "gps-clang-ubsan" , ClangUbsanLinuxBuild ),
234230
235231 # Linux ppc64le GCC
236232 # Fedora Rawhide is unstable
245241 ("PPC64LE CentOS9 LTO + PGO" , "cstratak-CentOS9-ppc64le" , LTOPGONonDebugBuild ),
246242
247243 # Linux aarch64 GCC/Clang
244+ ("aarch64 Ubuntu 22.04 BigMem" , "diegorusso-aarch64-bigmem" , UnixBigmemBuild ),
245+
248246 # Fedora Rawhide is unstable
249247 ("aarch64 Fedora Rawhide" , "cstratak-fedora-rawhide-aarch64" , FedoraRawhideBuild ),
250248 ("aarch64 Fedora Rawhide Refleaks" , "cstratak-fedora-rawhide-aarch64" , UnixRefleakBuild ),
269267 ("PPC64LE Fedora Rawhide Clang" , "cstratak-fedora-rawhide-ppc64le" , ClangUnixBuild ),
270268 ("PPC64LE Fedora Rawhide Clang Installed" , "cstratak-fedora-rawhide-ppc64le" , ClangUnixInstalledBuild ),
271269
272- # Linux s390x GCC
273- # Fedora Rawhide is unstable
274- ("s390x Fedora Rawhide" , "edelsohn-fedora-rawhide-z" , UnixBuild ),
275- ("s390x Fedora Rawhide Refleaks" , "edelsohn-fedora-rawhide-z" , UnixRefleakBuild ),
276- ("s390x Fedora Rawhide LTO" , "edelsohn-fedora-rawhide-z" , LTONonDebugUnixBuild ),
277- ("s390x Fedora Rawhide LTO + PGO" , "edelsohn-fedora-rawhide-z" , LTOPGONonDebugBuild ),
278-
279270 # FreBSD x86-64 clang
280271 # FreeBSD 15 is CURRENT: development branch (at 2023-10-17)
281272 ("AMD64 FreeBSD15" , "opsec-fbsd15" , UnixBuild ),
287278 # Linux x86-64 GCC musl
288279 ("AMD64 Alpine Linux" , "ware-alpine" , UnixBuild ),
289280
290- # Linux x86 (32-bit) GCC
291- ("x86 Debian Non-Debug with X" , "ware-debian-x86" , NonDebugUnixBuild ),
292- ("x86 Debian Installed with X" , "ware-debian-x86" , UnixInstalledBuild ),
293-
294- # Linux s390x Clang
295- ("s390x Fedora Rawhide Clang" , "edelsohn-fedora-rawhide-z" , ClangUnixBuild ),
296- ("s390x Fedora Rawhide Clang Installed" , "edelsohn-fedora-rawhide-z" , ClangUnixInstalledBuild ),
281+ # Linux x86-64 GCC Fedora Rawhide Freethreading builders
282+ ("AMD64 Fedora Rawhide NoGIL" , "cstratak-fedora-rawhide-x86_64" , FedoraRawhideFreedthreadingBuild ),
283+ ("aarch64 Fedora Rawhide NoGIL" , "cstratak-fedora-rawhide-aarch64" , FedoraRawhideFreedthreadingBuild ),
284+ ("PPC64LE Fedora Rawhide NoGIL" , "cstratak-fedora-rawhide-ppc64le" , FedoraRawhideFreedthreadingBuild ),
285+ # Linux x86-64 GCC Fedora Rawhide Freethreading refleak builders
286+ ("AMD64 Fedora Rawhide NoGIL refleaks" , "cstratak-fedora-rawhide-x86_64" , UnixNoGilRefleakBuild ),
287+ ("aarch64 Fedora Rawhide NoGIL refleaks" , "cstratak-fedora-rawhide-aarch64" , UnixNoGilRefleakBuild ),
288+ ("PPC64LE Fedora Rawhide NoGIL refleaks" , "cstratak-fedora-rawhide-ppc64le" , UnixNoGilRefleakBuild ),
297289
298290 # AIX ppc64
299291 ("PPC64 AIX" , "edelsohn-aix-ppc64" , AIXBuild ),
300292 ("PPC64 AIX XLC" , "edelsohn-aix-ppc64" , AIXBuildWithXLC ),
301293
302294 # Solaris sparcv9
303295 ("SPARCv9 Oracle Solaris 11.4" , "kulikjak-solaris-sparcv9" , UnixBuild ),
296+
297+ # riscv64 GCC
298+ ("riscv64 Ubuntu23" , "onder-riscv64" , SlowUnixInstalledBuild ),
299+
300+ # Arch Usan (see stable "AMD64 Arch Linux Usan Function" above)
301+ ("AMD64 Arch Linux Usan" , "pablogsal-arch-x86_64" , ClangUbsanLinuxBuild ),
304302]
305303
306304
@@ -326,31 +324,6 @@ def get_builders(settings):
326324 return all_builders
327325
328326
329- DAILYBUILDERS = [
330- "AMD64 Windows11 Refleaks" ,
331- "AMD64 Fedora Rawhide Refleaks" ,
332- "AMD64 Fedora Stable Refleaks" ,
333- "AMD64 RHEL7 Refleaks" ,
334- "AMD64 RHEL8 Refleaks" ,
335- "AMD64 CentOS9 Refleaks" ,
336- # Linux PPC64LE
337- "PPC64LE Fedora Rawhide Refleaks" ,
338- "PPC64LE Fedora Stable Refleaks" ,
339- "PPC64LE RHEL7 Refleaks" ,
340- "PPC64LE RHEL8 Refleaks" ,
341- "PPC64LE CentOS9 Refleaks" ,
342- # Linux s390x
343- "s390x Fedora Rawhide Refleaks" ,
344- "s390x Fedora Refleaks" ,
345- "s390x RHEL7 Refleaks" ,
346- "s390x RHEL8 Refleaks" ,
347- # Linux aarch64
348- "aarch64 Fedora Rawhide Refleaks" ,
349- "aarch64 Fedora Stable Refleaks" ,
350- "aarch64 RHEL8 Refleaks" ,
351- "aarch64 CentOS9 Refleaks" ,
352- ]
353-
354327# Match builder name (excluding the branch name) of builders that should only
355328# run on the main and "custom" branches.
356329ONLY_MAIN_BRANCH = (
@@ -359,4 +332,5 @@ def get_builders(settings):
359332 "Cygwin" ,
360333 "ARM64 Windows" ,
361334 "AMD64 Arch Linux Perf" ,
335+ "AMD64 Arch Linux Valgrind" ,
362336)
0 commit comments