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 |