OLD | NEW |
| (Empty) |
1 # Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | |
2 # | |
3 # Use of this source code is governed by a BSD-style license | |
4 # that can be found in the LICENSE file in the root of the source | |
5 # tree. An additional intellectual property rights grant can be found | |
6 # in the file PATENTS. All contributing project authors may | |
7 # be found in the AUTHORS file in the root of the source tree. | |
8 | |
9 # FOR DETAILS ON THIS FILE SEE THE MAIN COPY IN //tools/mb/mb_config.pyl. | |
10 # This is configuration for standalone WebRTC bots. It is used to keep the bot | |
11 # configurations source-side instead of in the buildbot scripts. That makes it | |
12 # easy to try different configurations of GN args in tryjob patches. | |
13 | |
14 { | |
15 # This is a map of buildbot master names -> buildbot builder names -> | |
16 # config names (where each config name is a key in the 'configs' dict, | |
17 # above). mb uses this dict to look up which config to use for a given bot. | |
18 # The builders should be sorted by the order they appear in the /builders | |
19 # page on the buildbots, *not* alphabetically. | |
20 'masters': { | |
21 'client.webrtc': { | |
22 # iOS | |
23 'iOS32 Debug': 'ios', | |
24 'iOS32 Release': 'ios', | |
25 'iOS64 Debug': 'ios', | |
26 'iOS64 Release': 'ios', | |
27 'iOS32 Sim Debug (iOS 9.0)': 'ios', | |
28 'iOS64 Sim Debug (iOS 9.0)': 'ios', | |
29 'iOS64 Sim Debug (iOS 10.0)': 'ios', | |
30 | |
31 # Mac | |
32 'Mac64 Debug': 'debug_bot_x64', | |
33 'Mac64 Release': 'release_bot_x64', | |
34 'Mac Asan': 'mac_asan_clang_release_bot_x64', | |
35 'Mac64 Release [large tests]': 'release_bot_x64', | |
36 | |
37 # Linux | |
38 'Linux32 Debug': 'debug_bot_x86', | |
39 'Linux32 Release': 'release_bot_x86', | |
40 'Linux32 Debug (ARM)': 'debug_bot_arm', | |
41 'Linux32 Release (ARM)': 'release_bot_arm', | |
42 'Linux64 Debug': 'debug_bot_x64', | |
43 'Linux64 Release': 'release_bot_x64', | |
44 'Linux64 Debug (ARM)': 'debug_bot_arm64', | |
45 'Linux64 Release (ARM)': 'release_bot_arm64', | |
46 'Linux Asan': 'asan_lsan_clang_release_bot_x64', | |
47 'Linux Memcheck': 'memcheck_release_bot_x64', | |
48 'Linux MSan': 'msan_clang_release_bot_x64', | |
49 'Linux Tsan v2': 'tsan_clang_release_bot_x64', | |
50 'Linux UBSan': 'ubsan_clang_release_bot_x64', | |
51 'Linux UBSan vptr': 'ubsan_vptr_clang_release_bot_x64', | |
52 'Linux64 Release [large tests]': 'release_bot_x64', | |
53 'Linux64 Release (Libfuzzer)': 'libfuzzer_asan_release_bot_x64', | |
54 | |
55 # Android | |
56 'Android32 (M Nexus5X)': 'android_release_bot_arm', | |
57 'Android32 (M Nexus5X)(dbg)': 'android_debug_static_bot_arm', | |
58 'Android64 (M Nexus5X)': 'android_release_bot_arm64', | |
59 'Android64 (M Nexus5X)(dbg)': 'android_debug_static_bot_arm64', | |
60 'Android32 Builder x86': 'android_release_bot_x86', | |
61 'Android32 Builder x86 (dbg)': 'android_debug_static_bot_x86', | |
62 'Android64 Builder x64 (dbg)': 'android_debug_static_bot_x64', | |
63 'Android32 Builder MIPS (dbg)': 'android_clang_debug_static_bot_mipsel', | |
64 'Android32 Clang (dbg)': 'android_clang_debug_bot_arm', | |
65 | |
66 # Windows | |
67 'Win32 Debug': 'debug_bot_x86', | |
68 'Win32 Release': 'release_bot_x86', | |
69 'Win64 Debug': 'debug_bot_x64', | |
70 'Win64 Release': 'release_bot_x64', | |
71 'Win32 Debug (Clang)': 'win_clang_debug_bot_x86', | |
72 'Win32 Release (Clang)': 'win_clang_release_bot_x86', | |
73 'Win64 Debug (Clang)': 'win_clang_debug_bot_x64', | |
74 'Win64 Release (Clang)': 'win_clang_release_bot_x64', | |
75 'Win SyzyASan': 'win_syzyasan_release_bot_x86', | |
76 'Win32 Release [large tests]': 'release_bot_x86', | |
77 }, | |
78 'client.webrtc.perf': { | |
79 # Android | |
80 'Android32 Builder': 'perf_android_release_bot_arm', | |
81 'Android64 Builder': 'perf_android_release_bot_arm64', | |
82 'Android32 Tests (J Nexus4)': 'none', | |
83 'Android32 Tests (K Nexus5)': 'none', | |
84 'Android32 Tests (L Nexus5)': 'none', | |
85 'Android32 Tests (L Nexus6)': 'none', | |
86 'Android32 Tests (L Nexus7.2)': 'none', | |
87 'Android64 Tests (L Nexus9)': 'none', | |
88 'Linux Trusty': 'perf_release_bot_x64', | |
89 'Mac 10.11': 'perf_release_bot_x64', | |
90 'Win7': 'perf_release_bot_x86', | |
91 }, | |
92 'client.webrtc.fyi': { | |
93 # Mac | |
94 'Mac (swarming)': 'release_bot_x64', | |
95 | |
96 # Linux | |
97 # TODO(kjellander): Remove when bugs.webrtc.org/7090 is fixed. | |
98 'Linux32 Debug (ARM)': 'debug_bot_arm', | |
99 'Linux64 GCC': 'gcc_release_bot_x64', | |
100 'Linux (swarming)': 'release_bot_x64', | |
101 | |
102 # Android | |
103 'Android (swarming)': 'android_release_bot_arm', | |
104 'Android ASan (swarming)': 'android_asan_shared_release_bot_arm', | |
105 # Windows | |
106 'Win (swarming)': 'release_bot_x86', | |
107 'Win32 ASan (swarming)': 'win_asan_clang_release_bot_x86', | |
108 'Win64 Debug (Win8)': 'debug_bot_x64', | |
109 'Win64 Debug (Win10)': 'debug_bot_x64', | |
110 }, | |
111 'tryserver.webrtc': { | |
112 # iOS | |
113 'ios_dbg': 'ios', | |
114 'ios_rel': 'ios', | |
115 'ios_arm64_dbg': 'ios', | |
116 'ios_arm64_rel': 'ios', | |
117 'ios32_sim_ios9_dbg': 'ios', | |
118 'ios64_sim_ios9_dbg': 'ios', | |
119 'ios64_sim_ios10_dbg': 'ios', | |
120 | |
121 # Mac | |
122 'mac_compile_dbg': 'debug_bot_x64', | |
123 'mac_compile_rel': 'release_bot_x64', | |
124 'mac_dbg': 'debug_bot_x64', | |
125 'mac_rel': 'release_bot_x64', | |
126 'mac_asan': 'mac_asan_clang_release_bot_x64', | |
127 'mac_baremetal': 'release_bot_x64', | |
128 | |
129 # Linux | |
130 'linux_compile_dbg': 'debug_bot_x64', | |
131 'linux_compile_rel': 'release_bot_x64', | |
132 'linux_dbg': 'debug_bot_x64', | |
133 'linux_rel': 'release_bot_x64', | |
134 'linux_arm64_dbg': 'debug_bot_arm64', | |
135 'linux_arm64_rel': 'release_bot_arm64', | |
136 'linux32_dbg': 'debug_bot_x86', | |
137 'linux32_rel': 'release_bot_x86', | |
138 'linux32_arm_dbg': 'debug_bot_arm', | |
139 'linux32_arm_rel': 'release_bot_arm', | |
140 'linux_asan': 'asan_lsan_clang_release_bot_x64', | |
141 'linux_memcheck': 'memcheck_release_bot_x64', | |
142 'linux_msan': 'msan_clang_release_bot_x64', | |
143 'linux_tsan2': 'tsan_clang_release_bot_x64', | |
144 'linux_ubsan': 'ubsan_clang_release_bot_x64', | |
145 'linux_ubsan_vptr': 'ubsan_vptr_clang_release_bot_x64', | |
146 'linux_baremetal': 'release_bot_x64', | |
147 'linux_libfuzzer_rel': 'libfuzzer_asan_release_bot_x64', | |
148 | |
149 # Android | |
150 'android_compile_dbg': 'android_debug_static_bot_arm', | |
151 'android_compile_rel': 'android_release_bot_arm', | |
152 'android_compile_arm64_dbg': 'android_debug_static_bot_arm64', | |
153 'android_compile_arm64_rel': 'android_release_bot_arm64', | |
154 'android_compile_x86_dbg': 'android_debug_static_bot_x86', | |
155 'android_compile_x86_rel': 'android_release_bot_x86', | |
156 'android_compile_x64_dbg': 'android_debug_static_bot_x64', | |
157 'android_compile_mips_dbg': 'android_clang_debug_static_bot_mipsel', | |
158 'android_dbg': 'android_debug_static_bot_arm', | |
159 'android_rel': 'android_release_bot_arm', | |
160 'android_clang_dbg': 'android_clang_debug_bot_arm', | |
161 'android_arm64_rel': 'android_release_bot_arm64', | |
162 'android_experimental': 'android_release_bot_arm', | |
163 | |
164 # Windows | |
165 'win_compile_dbg': 'debug_bot_x86', | |
166 'win_compile_rel': 'release_bot_x86', | |
167 'win_compile_x64_dbg': 'debug_bot_x64', | |
168 'win_compile_x64_rel': 'release_bot_x64', | |
169 'win_dbg': 'debug_bot_x86', | |
170 'win_rel': 'release_bot_x86', | |
171 'win_x64_dbg': 'debug_bot_x64', | |
172 'win_x64_rel': 'release_bot_x64', | |
173 'win_clang_dbg': 'win_clang_debug_bot_x86', | |
174 'win_clang_rel': 'win_clang_release_bot_x86', | |
175 'win_x64_clang_dbg': 'win_clang_debug_bot_x64', | |
176 'win_x64_clang_rel': 'win_clang_release_bot_x64', | |
177 'win_asan': 'win_asan_clang_release_bot_x86', | |
178 'win_baremetal': 'release_bot_x86', | |
179 'win_x64_win8': 'debug_bot_x64', | |
180 'win_x64_win10': 'debug_bot_x64', | |
181 } | |
182 }, | |
183 | |
184 # This is the list of configs that you can pass to mb; each config | |
185 # represents a particular combination of gn args that we must support. | |
186 # A given config *may* be platform-specific but is not necessarily so (i.e., | |
187 # we might have mac, win, and linux bots all using the 'release_bot' config). | |
188 'configs': { | |
189 # Linux, Mac and Windows | |
190 'gcc_release_bot_x64': [ | |
191 'gn', 'gcc', 'release_bot', 'x64' | |
192 ], | |
193 'debug_bot_arm': [ | |
194 'gn', 'openh264_debug_bot', 'arm' | |
195 ], | |
196 'release_bot_arm': [ | |
197 'gn', 'openh264_release_bot', 'arm' | |
198 ], | |
199 'debug_bot_arm64': [ | |
200 'gn', 'openh264_debug_bot', 'arm64' | |
201 ], | |
202 'release_bot_arm64': [ | |
203 'gn', 'openh264_release_bot', 'arm64' | |
204 ], | |
205 'asan_lsan_clang_release_bot_x64': [ | |
206 'gn', 'asan', 'lsan', 'clang', 'openh264_release_bot', 'x64' | |
207 ], | |
208 'msan_clang_release_bot_x64': [ | |
209 'gn', 'msan', 'clang', 'openh264_release_bot', 'x64' | |
210 ], | |
211 'tsan_clang_release_bot_x64': [ | |
212 'gn', 'tsan', 'clang', 'openh264_release_bot', 'x64' | |
213 ], | |
214 'ubsan_clang_release_bot_x64': [ | |
215 'gn', 'ubsan', 'clang', 'openh264_release_bot', 'x64' | |
216 ], | |
217 'ubsan_vptr_clang_release_bot_x64': [ | |
218 'gn', 'ubsan_vptr', 'clang', 'openh264_release_bot', 'x64' | |
219 ], | |
220 'debug_bot_x86': [ | |
221 'gn', 'openh264_debug_bot', 'x86' | |
222 ], | |
223 'release_bot_x86': [ | |
224 'gn', 'openh264_release_bot', 'x86' | |
225 ], | |
226 'debug_bot_x64': [ | |
227 'gn', 'openh264_debug_bot', 'x64' | |
228 ], | |
229 'release_bot_x64': [ | |
230 'gn', 'openh264_release_bot', 'x64' | |
231 ], | |
232 'perf_release_bot_x86': [ | |
233 'gn', 'openh264', 'release', 'goma', 'x86' | |
234 ], | |
235 'perf_release_bot_x64': [ | |
236 'gn', 'openh264', 'release', 'goma', 'x64' | |
237 ], | |
238 'libfuzzer_asan_release_bot_x64': [ | |
239 'libfuzzer', 'asan', 'optimize_for_fuzzing', 'openh264_release_bot', | |
240 'x64', 'no_rtc_tests' | |
241 ], | |
242 'memcheck_release_bot_x64': [ | |
243 'memcheck', 'gn', 'openh264_release_bot', 'x64' | |
244 ], | |
245 | |
246 # iOS | |
247 # The 'ios' config is just used for auditing. iOS bots | |
248 # use the ios recipes and look up their GN arguments via files checked in | |
249 # under //tools-webrtc/ios/bots. It is an error to actually use one of these | |
250 # configs to generate the build files. | |
251 'ios': [ 'error'], | |
252 | |
253 # Windows | |
254 'win_clang_debug_bot_x86': [ | |
255 'gn', 'clang', 'openh264_debug_bot', 'x86', | |
256 ], | |
257 'win_clang_release_bot_x86': [ | |
258 'gn', 'clang', 'openh264_release_bot', 'x86', | |
259 ], | |
260 'win_clang_debug_bot_x64': [ | |
261 'gn', 'clang', 'openh264_debug_bot', 'x64', | |
262 ], | |
263 'win_clang_release_bot_x64': [ | |
264 'gn', 'clang', 'openh264_release_bot', 'x64', | |
265 ], | |
266 'win_asan_clang_release_bot_x86': [ | |
267 'gn', 'asan', 'clang', 'full_symbols', 'openh264_release_bot', 'x86', | |
268 'win_fastlink', | |
269 ], | |
270 'win_syzyasan_release_bot_x86': [ | |
271 'gn', 'syzyasan', 'minimal_symbols', 'openh264_release_bot', 'x86', | |
272 ], | |
273 | |
274 # Mac | |
275 'mac_asan_clang_release_bot_x64': [ | |
276 'gn', 'asan', 'clang', 'openh264_release_bot', 'x64', | |
277 ], | |
278 | |
279 # Android | |
280 'android_debug_static_bot_arm': [ | |
281 'android', 'gn', 'debug_static_bot', 'arm' | |
282 ], | |
283 'android_release_bot_arm': [ | |
284 'android', 'gn', 'release_bot', 'arm' | |
285 ], | |
286 'android_debug_static_bot_x86': [ | |
287 'android', 'gn', 'debug_static_bot', 'x86' | |
288 ], | |
289 'android_release_bot_x86': [ | |
290 'android', 'gn', 'release_bot', 'x86' | |
291 ], | |
292 'android_clang_debug_bot_arm': [ | |
293 'android', 'gn', 'clang', 'debug_bot', 'arm' | |
294 ], | |
295 'android_clang_debug_static_bot_mipsel': [ | |
296 'android', 'gn', 'clang', 'debug_static_bot', 'mipsel' | |
297 ], | |
298 'android_debug_static_bot_arm64': [ | |
299 'android', 'gn', 'debug_static_bot', 'arm64' | |
300 ], | |
301 'android_release_bot_arm64': [ | |
302 'android', 'gn', 'release_bot', 'arm64' | |
303 ], | |
304 'android_debug_static_bot_x64': [ | |
305 'android', 'gn', 'debug_static_bot', 'x64' | |
306 ], | |
307 'android_asan_shared_release_bot_arm': [ | |
308 'android', 'gn', 'asan', 'clang', 'release_bot', 'arm' | |
309 ], | |
310 'perf_android_release_bot_arm': [ | |
311 'android', 'gn', 'release', 'goma', 'arm' | |
312 ], | |
313 'perf_android_release_bot_arm64': [ | |
314 'android', 'gn', 'release', 'goma', 'arm64' | |
315 ], | |
316 | |
317 # This is used for tracking purposes; any bot that uses this config | |
318 # should never actually run MB. | |
319 'none': [ | |
320 'error', | |
321 ], | |
322 }, | |
323 | |
324 # This is a dict mapping a given 'mixin' name to a dict of settings that | |
325 # mb should use. See //tools/mb/docs/user_guide.md for more information. | |
326 'mixins': { | |
327 'android': { | |
328 'gn_args': 'target_os="android"', | |
329 }, | |
330 | |
331 'arm': { | |
332 'gn_args': 'target_cpu="arm"', | |
333 }, | |
334 | |
335 'arm64': { | |
336 'gn_args': 'target_cpu="arm64"', | |
337 }, | |
338 | |
339 'asan': { | |
340 'gn_args': 'is_asan=true', | |
341 }, | |
342 | |
343 'clang': { | |
344 'gn_args': 'is_clang=true', | |
345 }, | |
346 | |
347 'dcheck_always_on': { | |
348 'gn_args': 'dcheck_always_on=true', | |
349 }, | |
350 | |
351 'debug': { | |
352 'gn_args': 'is_debug=true', | |
353 }, | |
354 | |
355 'debug_bot': { | |
356 'mixins': ['debug', 'goma'], | |
357 }, | |
358 | |
359 'debug_static_bot': { | |
360 'mixins': ['debug', 'minimal_symbols', 'goma'], | |
361 }, | |
362 | |
363 # This mixin is used to force configs that use it to fail. It | |
364 # is used in two cases: when we have bots that we haven't looked | |
365 # at yet and don't know whether they need MB or not, and for bots | |
366 # that are test-only and should never run MB. | |
367 'error': { | |
368 'gn_args': 'error', | |
369 }, | |
370 | |
371 'full_symbols': { | |
372 'gn_args': 'symbol_level=2', | |
373 }, | |
374 | |
375 'gcc': { | |
376 'gn_args': 'is_clang=false use_sysroot=false', | |
377 }, | |
378 | |
379 'gn': {'type': 'gn'}, | |
380 | |
381 'goma': { | |
382 'gn_args': 'use_goma=true', | |
383 }, | |
384 | |
385 'libfuzzer': { | |
386 'gn_args': 'use_libfuzzer=true', | |
387 }, | |
388 | |
389 'lsan': { | |
390 'gn_args': 'is_lsan=true', | |
391 }, | |
392 | |
393 'memcheck': { | |
394 'gn_args': 'rtc_use_memcheck=true', | |
395 }, | |
396 | |
397 'minimal_symbols': { | |
398 'gn_args': 'symbol_level=1', | |
399 }, | |
400 | |
401 'mipsel': { | |
402 'gn_args': 'target_cpu="mipsel"', | |
403 }, | |
404 | |
405 'minimal_symbols': { | |
406 'gn_args': 'symbol_level=1', | |
407 }, | |
408 | |
409 'msan': { | |
410 'gn_args': ('is_msan=true msan_track_origins=2 ' | |
411 'use_prebuilt_instrumented_libraries=true'), | |
412 }, | |
413 | |
414 'no_rtc_tests': { | |
415 'gn_args': 'rtc_include_tests=false', | |
416 }, | |
417 | |
418 'openh264': { | |
419 'gn_args': 'ffmpeg_branding="Chrome" rtc_use_h264=true', | |
420 }, | |
421 | |
422 'openh264_debug_bot': { | |
423 'mixins': ['openh264', 'debug_bot'], | |
424 }, | |
425 | |
426 'openh264_release_bot': { | |
427 'mixins': ['openh264', 'release_bot'], | |
428 }, | |
429 | |
430 'optimize_for_fuzzing': { | |
431 'gn_args': 'optimize_for_fuzzing=true', | |
432 }, | |
433 | |
434 'release': { | |
435 'gn_args': 'is_debug=false', | |
436 }, | |
437 | |
438 'release_bot': { | |
439 'mixins': ['release', 'dcheck_always_on', 'goma'], | |
440 }, | |
441 | |
442 'syzyasan': { | |
443 'gn_args': 'is_syzyasan=true', | |
444 }, | |
445 | |
446 'tsan': { | |
447 'gn_args': 'is_tsan=true', | |
448 }, | |
449 | |
450 'ubsan': { | |
451 'gn_args': 'is_ubsan=true', | |
452 }, | |
453 | |
454 'ubsan_vptr': { | |
455 'gn_args': 'is_ubsan_vptr=true', | |
456 }, | |
457 | |
458 'win_fastlink': { | |
459 'gn_args': 'is_win_fastlink=true', | |
460 }, | |
461 | |
462 'x64': { | |
463 'gn_args': 'target_cpu="x64"', | |
464 }, | |
465 | |
466 'x86': { | |
467 'gn_args': 'target_cpu="x86"', | |
468 }, | |
469 }, | |
470 } | |
OLD | NEW |