OLD | NEW |
---|---|
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
3 # | 3 # |
4 # Use of this source code is governed by a BSD-style license | 4 # Use of this source code is governed by a BSD-style license |
5 # that can be found in the LICENSE file in the root of the source | 5 # that can be found in the LICENSE file in the root of the source |
6 # tree. An additional intellectual property rights grant can be found | 6 # tree. An additional intellectual property rights grant can be found |
7 # in the file PATENTS. All contributing project authors may | 7 # in the file PATENTS. All contributing project authors may |
8 # be found in the AUTHORS file in the root of the source tree. | 8 # be found in the AUTHORS file in the root of the source tree. |
9 | 9 |
10 # These modules come from scripts, which must be in the PYTHONPATH. | 10 # These modules come from scripts, which must be in the PYTHONPATH. |
11 from master import master_utils | 11 from master import master_utils |
12 from master import slaves_list | 12 from master import slaves_list |
13 from master.builders_pools import BuildersPools | 13 from master.builders_pools import BuildersPools |
14 from master.factory import chromium_factory | |
14 from master.factory import webrtc_factory | 15 from master.factory import webrtc_factory |
15 from master.try_job_http import TryJobHTTP | 16 from master.try_job_http import TryJobHTTP |
16 from master.try_mail_notifier import TryMailNotifier | 17 from master.try_mail_notifier import TryMailNotifier |
17 | 18 |
18 import config | 19 import config |
19 | 20 |
20 ActiveMaster = config.Master.WebRTCTryServer | 21 ActiveMaster = config.Master.WebRTCTryServer |
21 | 22 |
22 MAIL_NOTIFIER = True | 23 MAIL_NOTIFIER = True |
23 LISTEN_TO_SVN = ActiveMaster.svn_url and ActiveMaster.is_production_host | 24 LISTEN_TO_SVN = ActiveMaster.svn_url and ActiveMaster.is_production_host |
(...skipping 13 matching lines...) Expand all Loading... | |
37 ####### BUILDERS | 38 ####### BUILDERS |
38 url = config.Master.webrtc_url | 39 url = config.Master.webrtc_url |
39 branch = 'trunk' | 40 branch = 'trunk' |
40 | 41 |
41 def linux(): | 42 def linux(): |
42 return webrtc_factory.WebRTCFactory('src/build', 'linux2', url, branch) | 43 return webrtc_factory.WebRTCFactory('src/build', 'linux2', url, branch) |
43 def mac(): | 44 def mac(): |
44 return webrtc_factory.WebRTCFactory('src/build', 'darwin', url, branch) | 45 return webrtc_factory.WebRTCFactory('src/build', 'darwin', url, branch) |
45 def win(): | 46 def win(): |
46 return webrtc_factory.WebRTCFactory('src/build', 'win32', url, branch) | 47 return webrtc_factory.WebRTCFactory('src/build', 'win32', url, branch) |
48 def android(): | |
49 return webrtc_factory.WebRTCFactory('', 'linux2', url, branch, | |
50 nohooks_on_update=True, | |
51 target_os='android') | |
47 | 52 |
48 normal_tests = [ | 53 normal_tests = [ |
49 'audio_coding_module_test', | 54 'audio_coding_module_test', |
50 'audio_coding_unittests', | 55 'audio_coding_unittests', |
51 'audio_decoder_unittests', | 56 'audio_decoder_unittests', |
52 'audioproc_unittest', | 57 'audioproc_unittest', |
53 'bitrate_controller_unittests', | 58 'bitrate_controller_unittests', |
54 'channel_transport_unittests', | 59 'channel_transport_unittests', |
55 'common_video_unittests', | 60 'common_video_unittests', |
56 'media_file_unittests', | 61 'media_file_unittests', |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
90 win_factory_prop = { | 95 win_factory_prop = { |
91 'gclient_env': {'GYP_GENERATOR_FLAGS': 'msvs_error_on_missing_sources=1'} | 96 'gclient_env': {'GYP_GENERATOR_FLAGS': 'msvs_error_on_missing_sources=1'} |
92 } | 97 } |
93 | 98 |
94 # Set up all the builders. | 99 # Set up all the builders. |
95 | 100 |
96 # Windows. | 101 # Windows. |
97 b_win = { | 102 b_win = { |
98 'name': 'win', | 103 'name': 'win', |
99 'factory': win().WebRTCFactory( | 104 'factory': win().WebRTCFactory( |
100 target='Debug', | 105 target='Debug', |
101 slave_type='Trybot', | 106 slave_type='Trybot', |
102 options=options, | 107 options=options, |
103 project=win_project, | 108 project=win_project, |
104 tests=normal_tests, | 109 tests=normal_tests, |
105 factory_properties=win_factory_prop) | 110 factory_properties=win_factory_prop) |
106 } | 111 } |
107 | 112 |
108 b_win_rel = { | 113 b_win_rel = { |
109 'name': 'win_rel', | 114 'name': 'win_rel', |
110 'factory': win().WebRTCFactory( | 115 'factory': win().WebRTCFactory( |
111 target='Release', | 116 target='Release', |
112 slave_type='Trybot', | 117 slave_type='Trybot', |
113 options=options, | 118 options=options, |
114 project=win_project, | 119 project=win_project, |
115 tests=normal_tests, | 120 tests=normal_tests, |
116 factory_properties=win_factory_prop) | 121 factory_properties=win_factory_prop) |
117 } | 122 } |
118 | 123 |
119 # Mac. | 124 # Mac. |
120 b_mac = { | 125 b_mac = { |
121 'name': 'mac', | 126 'name': 'mac', |
122 'factory': mac().WebRTCFactory( | 127 'factory': mac().WebRTCFactory( |
123 target='Debug', | 128 target='Debug', |
124 slave_type='Trybot', | 129 slave_type='Trybot', |
125 options=mac_options, | 130 options=mac_options, |
126 tests=normal_tests, | 131 tests=normal_tests, |
127 factory_properties=mac_factory_prop) | 132 factory_properties=mac_factory_prop) |
128 } | 133 } |
129 | 134 |
130 b_mac_rel = { | 135 b_mac_rel = { |
131 'name': 'mac_rel', | 136 'name': 'mac_rel', |
132 'factory': mac().WebRTCFactory( | 137 'factory': mac().WebRTCFactory( |
133 target='Release', | 138 target='Release', |
134 slave_type='Trybot', | 139 slave_type='Trybot', |
135 options=mac_options, | 140 options=mac_options, |
136 tests=normal_tests, | 141 tests=normal_tests, |
137 factory_properties=mac_factory_prop) | 142 factory_properties=mac_factory_prop) |
138 } | 143 } |
139 | 144 |
140 b_mac_asan = { | 145 b_mac_asan = { |
141 'name': 'mac_asan', | 146 'name': 'mac_asan', |
142 'factory': mac().WebRTCFactory( | 147 'factory': mac().WebRTCFactory( |
143 target='Release', | 148 target='Release', |
144 slave_type='Trybot', | 149 slave_type='Trybot', |
145 options=mac_options, | 150 options=mac_options, |
146 tests=normal_tests, | 151 tests=normal_tests, |
147 factory_properties={ | 152 factory_properties={ |
148 'asan': True, | 153 'asan': True, |
149 'gclient_env': {'GYP_DEFINES': asan_gyp_defines, | 154 'gclient_env': {'GYP_DEFINES': asan_gyp_defines, |
150 'GYP_GENERATORS': 'ninja'}, | 155 'GYP_GENERATORS': 'ninja'}, |
151 }) | 156 }) |
152 } | 157 } |
153 | 158 |
154 # Linux. | 159 # Linux. |
155 b_linux = { | 160 b_linux = { |
156 'name': 'linux', | 161 'name': 'linux', |
157 'factory': linux().WebRTCFactory( | 162 'factory': linux().WebRTCFactory( |
158 target='Debug', | 163 target='Debug', |
159 slave_type='Trybot', | 164 slave_type='Trybot', |
160 options=options, | 165 options=options, |
161 tests=normal_tests) | 166 tests=normal_tests) |
162 } | 167 } |
163 | 168 |
164 b_linux_rel = { | 169 b_linux_rel = { |
165 'name': 'linux_rel', | 170 'name': 'linux_rel', |
166 'factory': linux().WebRTCFactory( | 171 'factory': linux().WebRTCFactory( |
167 target='Release', | 172 target='Release', |
168 slave_type='Trybot', | 173 slave_type='Trybot', |
169 tests=normal_tests) | 174 tests=normal_tests) |
170 } | 175 } |
171 | 176 |
172 b_linux_memcheck = { | 177 b_linux_memcheck = { |
173 'name': 'linux_memcheck', | 178 'name': 'linux_memcheck', |
174 'factory': linux().WebRTCFactory( | 179 'factory': linux().WebRTCFactory( |
175 target='Release', | 180 target='Release', |
176 slave_type='Trybot', | 181 slave_type='Trybot', |
177 tests=memcheck_tests, | 182 tests=memcheck_tests, |
178 factory_properties={ | 183 factory_properties={ |
179 'needs_valgrind': True, | 184 'needs_valgrind': True, |
(...skipping 18 matching lines...) Expand all Loading... | |
198 'factory': linux().WebRTCFactory( | 203 'factory': linux().WebRTCFactory( |
199 target='Release', | 204 target='Release', |
200 slave_type='Trybot', | 205 slave_type='Trybot', |
201 tests=normal_tests, | 206 tests=normal_tests, |
202 factory_properties={ | 207 factory_properties={ |
203 'asan': True, | 208 'asan': True, |
204 'gclient_env': {'GYP_DEFINES': asan_gyp_defines}, | 209 'gclient_env': {'GYP_DEFINES': asan_gyp_defines}, |
205 }) | 210 }) |
206 } | 211 } |
207 | 212 |
213 b_android_ndk = { | |
214 'name': 'android_ndk', | |
215 'factory': android().ChromiumAnnotationFactory( | |
216 target='Debug', | |
217 slave_type='AnnotatedTrybot', | |
218 annotation_script='src/build/android/buildbot/bb_run_bot.py', | |
219 factory_properties={ | |
220 'android_bot_id': 'builder', | |
Isaac (away)
2013/04/19 08:52:41
please use 'webrtc-builder-dbg'. The goal of this
kjellander_chromium
2013/04/19 09:58:53
OK I used 'webrtc-builder-dbg' for the buildbot an
| |
221 'buildtool': 'ninja', | |
Isaac (away)
2013/04/19 08:52:41
this field is not needed anymore, you can delete.
kjellander_chromium
2013/04/19 09:58:53
Done.
| |
222 }) | |
223 } | |
224 | |
208 c['builders'] = [ | 225 c['builders'] = [ |
209 b_win, | 226 b_win, |
210 b_win_rel, | 227 b_win_rel, |
211 b_mac, | 228 b_mac, |
212 b_mac_rel, | 229 b_mac_rel, |
213 b_mac_asan, | 230 b_mac_asan, |
214 b_linux, | 231 b_linux, |
215 b_linux_rel, | 232 b_linux_rel, |
216 b_linux_memcheck, | 233 b_linux_memcheck, |
217 b_linux_tsan, | 234 b_linux_tsan, |
218 b_linux_asan, | 235 b_linux_asan, |
236 b_android_ndk, | |
219 ] | 237 ] |
220 | 238 |
221 # Slaves are loaded from slaves.cfg. | 239 # Slaves are loaded from slaves.cfg. |
222 slaves = slaves_list.SlavesList('slaves.cfg', 'WebRTCTryServer') | 240 slaves = slaves_list.SlavesList('slaves.cfg', 'WebRTCTryServer') |
223 | 241 |
224 for builder in c['builders']: | 242 for builder in c['builders']: |
225 # Associate the slaves to the builders. The configuration is in slaves.cfg. | 243 # Associate the slaves to the builders. The configuration is in slaves.cfg. |
226 builder['slavenames'] = slaves.GetSlavesName(builder=builder['name']) | 244 builder['slavenames'] = slaves.GetSlavesName(builder=builder['name']) |
227 # Don't enable auto_reboot for our bots (Chrome uses it since they don't trust | 245 # Don't enable auto_reboot for our bots (Chrome uses it since they don't trust |
228 # their unit tests to clean up properly) | 246 # their unit tests to clean up properly) |
(...skipping 15 matching lines...) Expand all Loading... | |
244 pools['webrtc'].append('win') | 262 pools['webrtc'].append('win') |
245 pools['webrtc'].append('win_rel') | 263 pools['webrtc'].append('win_rel') |
246 pools['webrtc'].append('mac') | 264 pools['webrtc'].append('mac') |
247 pools['webrtc'].append('mac_rel') | 265 pools['webrtc'].append('mac_rel') |
248 pools['webrtc'].append('mac_asan') | 266 pools['webrtc'].append('mac_asan') |
249 pools['webrtc'].append('linux') | 267 pools['webrtc'].append('linux') |
250 pools['webrtc'].append('linux_rel') | 268 pools['webrtc'].append('linux_rel') |
251 pools['webrtc'].append('linux_memcheck') | 269 pools['webrtc'].append('linux_memcheck') |
252 pools['webrtc'].append('linux_tsan') | 270 pools['webrtc'].append('linux_tsan') |
253 pools['webrtc'].append('linux_asan') | 271 pools['webrtc'].append('linux_asan') |
272 pools['webrtc'].append('android_ndk') | |
254 | 273 |
255 # Configure the Schedulers; | 274 # Configure the Schedulers; |
256 c['schedulers'] = [] | 275 c['schedulers'] = [] |
257 | 276 |
258 last_good_urls = {'webrtc': ActiveMaster.last_good_url} | 277 last_good_urls = {'webrtc': ActiveMaster.last_good_url} |
259 code_review_sites = {'webrtc': ActiveMaster.code_review_site} | 278 code_review_sites = {'webrtc': ActiveMaster.code_review_site} |
260 | 279 |
261 c['schedulers'].append(TryJobHTTP( | 280 c['schedulers'].append(TryJobHTTP( |
262 name='webrtc_try_job_http', | 281 name='webrtc_try_job_http', |
263 port=ActiveMaster.try_job_port, | 282 port=ActiveMaster.try_job_port, |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
313 c['buildCacheSize'] = 100 | 332 c['buildCacheSize'] = 100 |
314 | 333 |
315 ####### PROJECT IDENTITY | 334 ####### PROJECT IDENTITY |
316 | 335 |
317 # The 'projectURL' string will be used to provide a link | 336 # The 'projectURL' string will be used to provide a link |
318 # from buildbot HTML pages to your project's home page. | 337 # from buildbot HTML pages to your project's home page. |
319 c['projectURL'] = 'http://dev.chromium.org/developers/testing/try-server-usage' | 338 c['projectURL'] = 'http://dev.chromium.org/developers/testing/try-server-usage' |
320 | 339 |
321 # Buildbot master url: | 340 # Buildbot master url: |
322 c['buildbotURL'] = 'http://build.chromium.org/p/tryserver.webrtc/' | 341 c['buildbotURL'] = 'http://build.chromium.org/p/tryserver.webrtc/' |
OLD | NEW |