| OLD | NEW |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from master import master_config | 5 from master import master_config |
| 6 from master.factory import chromium_factory | 6 from master.factory import chromium_factory |
| 7 | 7 |
| 8 defaults = {} | 8 defaults = {} |
| 9 | 9 |
| 10 helper = master_config.Helper(defaults) | 10 helper = master_config.Helper(defaults) |
| (...skipping 18 matching lines...) Expand all Loading... |
| 29 # Tests that are single-machine shard-safe. For now we only use the sharding | 29 # Tests that are single-machine shard-safe. For now we only use the sharding |
| 30 # supervisor for long tests (more than 30 seconds) that are known to be stable. | 30 # supervisor for long tests (more than 30 seconds) that are known to be stable. |
| 31 sharded_tests = [ | 31 sharded_tests = [ |
| 32 'base_unittests', | 32 'base_unittests', |
| 33 'browser_tests', | 33 'browser_tests', |
| 34 'content_browsertests', | 34 'content_browsertests', |
| 35 'content_unittests', | 35 'content_unittests', |
| 36 'media_unittests', | 36 'media_unittests', |
| 37 ] | 37 ] |
| 38 | 38 |
| 39 linux_options = [ | 39 linux_chromeos_tests = [ |
| 40 'aura_builder', | 40 ('ash_unittests', 'aura_builder', 1), |
| 41 'base_unittests', | 41 ('aura', 'aura_builder', 1), |
| 42 'browser_tests', | 42 ('base', 'base_unittests', 1), |
| 43 'cacheinvalidation_unittests', | 43 ('browser_tests', 'browser_tests', 2), |
| 44 'compositor_unittests', | 44 ('cacheinvalidation', 'cacheinvalidation_unittests', 1), |
| 45 'content_browsertests', | 45 ('chromeos_unittests', 'chromeos_unittests', 1), |
| 46 'content_unittests', | 46 ('compositor', 'compositor_unittests', 1), |
| 47 'crypto_unittests', | 47 ('content_browsertests', 'content_browsertests', 2), |
| 48 'dbus_unittests', | 48 ('content_unittests', 'content_unittests', 1), |
| 49 'device_unittests', | 49 ('crypto', 'crypto_unittests', 1), |
| 50 'gpu_unittests', | 50 ('dbus', 'dbus_unittests', 1), |
| 51 'googleurl_unittests', | 51 ('device_unittests', 'device_unittests', 1), |
| 52 'interactive_ui_tests', | 52 ('googleurl', 'googleurl_unittests', 1), |
| 53 'ipc_tests', | 53 (None, 'googleurl_unittests', 1), |
| 54 'jingle_unittests', | 54 ('gpu', 'gpu_unittests', 1), |
| 55 'media_unittests', | 55 ('interactive_ui', 'interactive_ui_tests', 3), |
| 56 'net_unittests', | 56 ('jingle', 'jingle_unittests', 1), |
| 57 'ppapi_unittests', | 57 ('media', 'media_unittests', 1), |
| 58 'printing_unittests', | 58 ('net', 'net_unittests', 1), |
| 59 'remoting_unittests', | 59 ('ppapi_unittests', 'ppapi_unittests', 1), |
| 60 'sql_unittests', | 60 ('printing', 'printing_unittests', 1), |
| 61 'sync_unit_tests', | 61 ('remoting', 'remoting_unittests', 1), |
| 62 'ui_unittests', | 62 #('safe_browsing', 'safe_browsing_tests', 0), |
| 63 'unit_tests', | 63 ('sandbox_linux_unittests', 'sandbox_linux_unittests', 1), |
| 64 'views_unittests', | 64 ('ui_unittests', 'ui_unittests', 1), |
| 65 ('unit_ipc', 'ipc_tests', 1), |
| 66 ('unit_sql', 'sql_unittests', 1), |
| 67 ('unit_sync', 'sync_unit_tests', 1), |
| 68 ('unit_unit', 'unit_tests', 1), |
| 69 ('views', 'views_unittests', 1), |
| 65 ] | 70 ] |
| 66 | 71 |
| 67 linux_tests_1 = [ | 72 def without_tests(pairs, without): |
| 68 'ash_unittests', | 73 return [(a, b, c) for (a, b, c) in pairs if not a in without] |
| 69 'aura', | |
| 70 'base', | |
| 71 'cacheinvalidation', | |
| 72 'compositor', | |
| 73 'content_unittests', | |
| 74 'crypto', | |
| 75 'dbus', | |
| 76 'device_unittests', | |
| 77 'googleurl', | |
| 78 'gpu', | |
| 79 'jingle', | |
| 80 'media', | |
| 81 'net', | |
| 82 'ppapi_unittests', | |
| 83 'printing', | |
| 84 'remoting', | |
| 85 'unit_ipc', | |
| 86 'unit_sql', | |
| 87 'unit_sync', | |
| 88 'unit_unit', | |
| 89 'ui_unittests', | |
| 90 'views', | |
| 91 ] | |
| 92 | 74 |
| 93 linux_tests_2 = [ | 75 def extract_tests(pairs, shard): |
| 94 'browser_tests', | 76 return list(set(a for (a, _, c) in pairs if a and c == shard)) |
| 95 'content_browsertests', | |
| 96 ] | |
| 97 | 77 |
| 98 linux_tests_3 = [ 'interactive_ui' ] | 78 def extract_options(pairs): |
| 79 return list(set(b for (_, b, c) in pairs if b and c)) |
| 80 |
| 81 def prepend_type(prefix, tests): |
| 82 return ['%s_%s' % (prefix, value) for value in tests] |
| 83 |
| 99 | 84 |
| 100 B('Linux ChromiumOS Full', | 85 B('Linux ChromiumOS Full', |
| 101 factory='fullbuilder', | 86 factory='fullbuilder', |
| 102 gatekeeper='compile', | 87 gatekeeper='compile', |
| 103 # This shows up in the archived artifacts. | 88 # This shows up in the archived artifacts. |
| 104 builddir='Linux_ChromiumOS', | 89 builddir='Linux_ChromiumOS', |
| 105 scheduler='chromium_local', | 90 scheduler='chromium_local', |
| 106 auto_reboot=False, | 91 auto_reboot=False, |
| 107 notify_on_missing=True) | 92 notify_on_missing=True) |
| 108 F('fullbuilder', chromiumos().ChromiumOSFactory( | 93 F('fullbuilder', chromiumos().ChromiumOSFactory( |
| 109 slave_type='BuilderTester', | 94 slave_type='BuilderTester', |
| 110 clobber=True, | 95 clobber=True, |
| 111 options=['--compiler=goma'] + linux_options, | 96 options=['--compiler=goma'] + extract_options(linux_chromeos_tests), |
| 112 tests=['check_deps2git', | 97 tests=['check_deps2git', |
| 113 'check_licenses', | 98 'check_licenses', |
| 114 'check_perms',], | 99 'check_perms',], |
| 115 factory_properties={ | 100 factory_properties={ |
| 116 'archive_build': True, | 101 'archive_build': True, |
| 117 'gs_bucket': 'gs://chromium-browser-snapshots', | 102 'gs_bucket': 'gs://chromium-browser-snapshots', |
| 118 'gs_acl': 'public-read', | 103 'gs_acl': 'public-read', |
| 119 'show_perf_results': False, | 104 'show_perf_results': False, |
| 120 'generate_gtest_json': True, | 105 'generate_gtest_json': True, |
| 121 'gclient_env': { | 106 'gclient_env': { |
| 122 'GYP_DEFINES': ('chromeos=1' | 107 'GYP_DEFINES': ('chromeos=1' |
| 123 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' | 108 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' |
| 124 ' component=static_library')}, | 109 ' component=static_library')}, |
| 125 'window_manager': False})) | 110 'window_manager': False})) |
| 126 | 111 |
| 127 | 112 |
| 128 B('Linux ChromiumOS Builder', | 113 B('Linux ChromiumOS Builder', |
| 129 factory='builder', | 114 factory='builder', |
| 130 gatekeeper='compile', | 115 gatekeeper='compile', |
| 131 builddir='chromium-rel-linux-chromeos', | 116 builddir='chromium-rel-linux-chromeos', |
| 132 scheduler='chromium_local', | 117 scheduler='chromium_local', |
| 133 auto_reboot=False, | 118 auto_reboot=False, |
| 134 notify_on_missing=True) | 119 notify_on_missing=True) |
| 135 F('builder', chromiumos().ChromiumOSFactory( | 120 F('builder', chromiumos().ChromiumOSFactory( |
| 136 slave_type='Builder', | 121 slave_type='Builder', |
| 137 options=['--compiler=goma'] + linux_options, | 122 options=['--compiler=goma'] + extract_options(linux_chromeos_tests), |
| 138 factory_properties={ | 123 factory_properties={ |
| 139 'archive_build': False, | 124 'archive_build': False, |
| 140 'trigger': 'chromiumos_rel_trigger', | 125 'trigger': 'chromiumos_rel_trigger', |
| 141 'extra_archive_paths': 'chrome/tools/build/chromeos', | 126 'extra_archive_paths': 'chrome/tools/build/chromeos', |
| 142 'gclient_env': { | 127 'gclient_env': { |
| 143 'GYP_DEFINES': ('chromeos=1' | 128 'GYP_DEFINES': ('chromeos=1' |
| 144 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' | 129 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' |
| 145 ' component=shared_library')}, | 130 ' component=shared_library')}, |
| 146 'window_manager': False})) | 131 'window_manager': False})) |
| 147 | 132 |
| 148 B('Linux ChromiumOS Tests (1)', | 133 B('Linux ChromiumOS Tests (1)', |
| 149 factory='tester_1', | 134 factory='tester_1', |
| 150 scheduler='chromiumos_rel_trigger', | 135 scheduler='chromiumos_rel_trigger', |
| 151 gatekeeper='tester', | 136 gatekeeper='tester', |
| 152 notify_on_missing=True) | 137 notify_on_missing=True) |
| 153 F('tester_1', chromiumos().ChromiumOSFactory( | 138 F('tester_1', chromiumos().ChromiumOSFactory( |
| 154 slave_type='Tester', | 139 slave_type='Tester', |
| 155 build_url=rel_archive, | 140 build_url=rel_archive, |
| 156 tests=['ash_unittests', | 141 tests=extract_tests(linux_chromeos_tests, 1), |
| 157 'aura', | |
| 158 'base', | |
| 159 'cacheinvalidation', | |
| 160 'compositor', | |
| 161 'content_unittests', | |
| 162 'crypto', | |
| 163 'dbus', | |
| 164 'device_unittests', | |
| 165 'googleurl', | |
| 166 'gpu', | |
| 167 'jingle', | |
| 168 'media', | |
| 169 'net', | |
| 170 'ppapi_unittests', | |
| 171 'printing', | |
| 172 'remoting', | |
| 173 'unit_ipc', | |
| 174 'unit_sql', | |
| 175 'unit_sync', | |
| 176 'unit_unit', | |
| 177 'ui_unittests', | |
| 178 'views', | |
| 179 ], | |
| 180 factory_properties={'sharded_tests': sharded_tests, | 142 factory_properties={'sharded_tests': sharded_tests, |
| 181 'generate_gtest_json': True, | 143 'generate_gtest_json': True, |
| 182 'chromeos': 1})) | 144 'chromeos': 1})) |
| 183 | 145 |
| 184 | 146 |
| 185 B('Linux ChromiumOS Tests (2)', | 147 B('Linux ChromiumOS Tests (2)', |
| 186 factory='tester_2', | 148 factory='tester_2', |
| 187 scheduler='chromiumos_rel_trigger', | 149 scheduler='chromiumos_rel_trigger', |
| 188 gatekeeper='tester', | 150 gatekeeper='tester', |
| 189 notify_on_missing=True) | 151 notify_on_missing=True) |
| 190 F('tester_2', chromiumos().ChromiumOSFactory( | 152 F('tester_2', chromiumos().ChromiumOSFactory( |
| 191 slave_type='Tester', | 153 slave_type='Tester', |
| 192 build_url=rel_archive, | 154 build_url=rel_archive, |
| 193 tests=linux_tests_2 + linux_tests_3, | 155 tests=extract_tests(linux_chromeos_tests, 2) + |
| 156 extract_tests(linux_chromeos_tests, 3), |
| 194 factory_properties={'sharded_tests': sharded_tests, | 157 factory_properties={'sharded_tests': sharded_tests, |
| 195 'generate_gtest_json': True, | 158 'generate_gtest_json': True, |
| 196 'chromeos': 1})) | 159 'chromeos': 1})) |
| 197 | 160 |
| 198 | 161 |
| 199 B('Linux ChromiumOS (Clang dbg)', | 162 B('Linux ChromiumOS (Clang dbg)', |
| 200 factory='clang', | 163 factory='clang', |
| 201 gatekeeper='compile|tester', | 164 gatekeeper='compile|tester', |
| 202 builddir='chromium-dbg-linux-chromeos-clang', | 165 builddir='chromium-dbg-linux-chromeos-clang', |
| 203 scheduler='chromium_local', | 166 scheduler='chromium_local', |
| 204 auto_reboot=False, | 167 auto_reboot=False, |
| 205 notify_on_missing=True) | 168 notify_on_missing=True) |
| 206 F('clang', chromiumos().ChromiumOSFactory( | 169 F('clang', chromiumos().ChromiumOSFactory( |
| 207 target='Debug', | 170 target='Debug', |
| 208 tests=[], | 171 tests=[], |
| 209 options=['--compiler=clang', 'aura_builder'], | 172 options=['--compiler=clang'] + extract_options(linux_chromeos_tests), |
| 210 factory_properties={ | 173 factory_properties={ |
| 211 'gclient_env': { | 174 'gclient_env': { |
| 212 'GYP_DEFINES': ('chromeos=1 target_arch=ia32' | 175 'GYP_DEFINES': ('chromeos=1 target_arch=ia32' |
| 213 ' clang=1 clang_use_chrome_plugins=1' | 176 ' clang=1 clang_use_chrome_plugins=1' |
| 214 ' fastbuild=1' | 177 ' fastbuild=1' |
| 215 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' | 178 ' ffmpeg_branding=ChromeOS proprietary_codecs=1' |
| 216 ' component=shared_library' | 179 ' component=shared_library' |
| 217 )}})) | 180 )}})) |
| 218 # | 181 # |
| 219 # Triggerable scheduler for the dbg builders | 182 # Triggerable scheduler for the dbg builders |
| 220 # | 183 # |
| 221 T('chromiumos_dbg_trigger') | 184 T('chromiumos_dbg_trigger') |
| 222 | 185 |
| 223 dbg_archive = master_config.GetArchiveUrl('ChromiumChromiumOS', | 186 dbg_archive = master_config.GetArchiveUrl('ChromiumChromiumOS', |
| 224 'Linux ChromiumOS Builder (dbg)', | 187 'Linux ChromiumOS Builder (dbg)', |
| 225 'Linux_ChromiumOS_Builder__dbg_', | 188 'Linux_ChromiumOS_Builder__dbg_', |
| 226 'linux') | 189 'linux') |
| 227 | 190 |
| 228 B('Linux ChromiumOS Builder (dbg)', 'dbg', 'compile', | 191 B('Linux ChromiumOS Builder (dbg)', 'dbg', 'compile', |
| 229 'chromium_local', auto_reboot=False, notify_on_missing=True) | 192 'chromium_local', auto_reboot=False, notify_on_missing=True) |
| 230 F('dbg', chromiumos().ChromiumOSFactory( | 193 F('dbg', chromiumos().ChromiumOSFactory( |
| 231 slave_type='Builder', | 194 slave_type='Builder', |
| 232 target='Debug', | 195 target='Debug', |
| 233 options=['--compiler=goma'] + linux_options, | 196 options=['--compiler=goma'] + extract_options(linux_chromeos_tests), |
| 234 factory_properties={ | 197 factory_properties={ |
| 235 'gclient_env': { 'GYP_DEFINES' : 'chromeos=1 component=shared_library' }, | 198 'gclient_env': { 'GYP_DEFINES' : 'chromeos=1 component=shared_library' }, |
| 236 'trigger': 'chromiumos_dbg_trigger', | 199 'trigger': 'chromiumos_dbg_trigger', |
| 237 'window_manager': False, | 200 'window_manager': False, |
| 238 })) | 201 })) |
| 239 | 202 |
| 240 B('Linux ChromiumOS Tests (dbg)(1)', 'dbg_tests_1', 'tester', | 203 B('Linux ChromiumOS Tests (dbg)(1)', 'dbg_tests_1', 'tester', |
| 241 'chromiumos_dbg_trigger', notify_on_missing=True) | 204 'chromiumos_dbg_trigger', notify_on_missing=True) |
| 242 F('dbg_tests_1', chromiumos().ChromiumOSFactory( | 205 F('dbg_tests_1', chromiumos().ChromiumOSFactory( |
| 243 slave_type='Tester', | 206 slave_type='Tester', |
| 244 build_url=dbg_archive, | 207 build_url=dbg_archive, |
| 245 target='Debug', | 208 target='Debug', |
| 246 tests=linux_tests_1, | 209 tests=extract_tests(linux_chromeos_tests, 1), |
| 247 factory_properties={'chromeos': 1, | 210 factory_properties={'chromeos': 1, |
| 248 'sharded_tests': sharded_tests, | 211 'sharded_tests': sharded_tests, |
| 249 'generate_gtest_json': True,})) | 212 'generate_gtest_json': True,})) |
| 250 | 213 |
| 251 | 214 |
| 252 B('Linux ChromiumOS Tests (dbg)(2)', 'dbg_tests_2', 'tester', | 215 B('Linux ChromiumOS Tests (dbg)(2)', 'dbg_tests_2', 'tester', |
| 253 'chromiumos_dbg_trigger', notify_on_missing=True) | 216 'chromiumos_dbg_trigger', notify_on_missing=True) |
| 254 F('dbg_tests_2', chromiumos().ChromiumOSFactory( | 217 F('dbg_tests_2', chromiumos().ChromiumOSFactory( |
| 255 slave_type='Tester', | 218 slave_type='Tester', |
| 256 build_url=dbg_archive, | 219 build_url=dbg_archive, |
| 257 target='Debug', | 220 target='Debug', |
| 258 tests=linux_tests_2, | 221 tests=extract_tests(linux_chromeos_tests, 2), |
| 259 factory_properties={'chromeos': 1, | 222 factory_properties={'chromeos': 1, |
| 260 'sharded_tests': sharded_tests, | 223 'sharded_tests': sharded_tests, |
| 261 'generate_gtest_json': True,})) | 224 'generate_gtest_json': True,})) |
| 262 | 225 |
| 263 | 226 |
| 264 B('Linux ChromiumOS Tests (dbg)(3)', 'dbg_tests_3', 'tester', | 227 B('Linux ChromiumOS Tests (dbg)(3)', 'dbg_tests_3', 'tester', |
| 265 'chromiumos_dbg_trigger', notify_on_missing=True) | 228 'chromiumos_dbg_trigger', notify_on_missing=True) |
| 266 F('dbg_tests_3', chromiumos().ChromiumOSFactory( | 229 F('dbg_tests_3', chromiumos().ChromiumOSFactory( |
| 267 slave_type='Tester', | 230 slave_type='Tester', |
| 268 build_url=dbg_archive, | 231 build_url=dbg_archive, |
| 269 target='Debug', | 232 target='Debug', |
| 270 tests=linux_tests_3, | 233 tests=extract_tests(linux_chromeos_tests, 3), |
| 271 factory_properties={'chromeos': 1, | 234 factory_properties={'chromeos': 1, |
| 272 'sharded_tests': sharded_tests, | 235 'sharded_tests': sharded_tests, |
| 273 'generate_gtest_json': True,})) | 236 'generate_gtest_json': True,})) |
| 274 | 237 |
| 275 | 238 |
| 276 | 239 |
| 277 def Update(config, active_master, c): | 240 def Update(config, active_master, c): |
| 278 return helper.Update(c) | 241 return helper.Update(c) |
| OLD | NEW |