OLD | NEW |
1 # Copyright (c) 2016 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2016 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 """Top-level presubmit script for media/gpu/. | 5 """Top-level presubmit script for media/gpu/. |
6 | 6 |
7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts | 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
8 for more details about the presubmit API built into depot_tools. | 8 for more details about the presubmit API built into depot_tools. |
9 """ | 9 """ |
10 | 10 |
11 import re | |
12 | |
13 def PostUploadHook(cl, change, output_api): | 11 def PostUploadHook(cl, change, output_api): |
14 """git cl upload will call this hook after the issue is created/modified. | 12 """git cl upload will call this hook after the issue is created/modified. |
15 | 13 |
16 This hook modifies the CL description in order to run extra GPU | 14 This hook modifies the CL description in order to run extra GPU |
17 tests (in particular, the WebGL 2.0 conformance tests) in addition | 15 tests (in particular, the WebGL 2.0 conformance tests) in addition |
18 to the regular CQ try bots. This test suite is too large to run | 16 to the regular CQ try bots. This test suite is too large to run |
19 against all Chromium commits, but should be run against changes | 17 against all Chromium commits, but should be run against changes |
20 likely to affect these tests. | 18 likely to affect these tests. |
21 """ | 19 """ |
22 rietveld_obj = cl.RpcServer() | 20 return output_api.EnsureCQIncludeTrybotsAreAdded( |
23 issue = cl.issue | 21 cl, |
24 description = rietveld_obj.get_description(issue) | 22 [ |
25 if re.search(r'^CQ_INCLUDE_TRYBOTS=.*', description, re.M | re.I): | 23 'master.tryserver.chromium.linux:linux_optional_gpu_tests_rel', |
26 return [] | 24 'master.tryserver.chromium.mac:mac_optional_gpu_tests_rel', |
27 | 25 'master.tryserver.chromium.win:win_optional_gpu_tests_rel', |
28 bots = [ | 26 ], |
29 'master.tryserver.chromium.linux:linux_optional_gpu_tests_rel', | 27 'Automatically added optional GPU tests to run on CQ.') |
30 'master.tryserver.chromium.mac:mac_optional_gpu_tests_rel', | |
31 'master.tryserver.chromium.win:win_optional_gpu_tests_rel', | |
32 ] | |
33 | |
34 results = [] | |
35 new_description = description | |
36 new_description += '\nCQ_INCLUDE_TRYBOTS=%s' % ';'.join(bots) | |
37 results.append(output_api.PresubmitNotifyResult( | |
38 'Automatically added optional GPU tests to run on CQ.')) | |
39 | |
40 if new_description != description: | |
41 rietveld_obj.update_description(issue, new_description) | |
42 | |
43 return results | |
OLD | NEW |