Chromium Code Reviews| 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 |