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