Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(159)

Side by Side Diff: scripts/slave/recipes/libyuv/libyuv.py

Issue 2306373003: libyuv: Add Android Testers (Closed)
Patch Set: Fixed WebRTC expectation Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 """ 5 """
6 Recipe for building and running tests for Libyuv stand-alone. 6 Recipe for building and running tests for Libyuv stand-alone.
7 """ 7 """
8 8
9 from recipe_engine.types import freeze 9 from recipe_engine.types import freeze
10 10
11 DEPS = [ 11 DEPS = [
12 'chromium', 12 'chromium',
13 'chromium_android',
13 'depot_tools/bot_update', 14 'depot_tools/bot_update',
14 'depot_tools/gclient', 15 'depot_tools/gclient',
15 'depot_tools/tryserver', 16 'depot_tools/tryserver',
16 'libyuv', 17 'libyuv',
17 'recipe_engine/path', 18 'recipe_engine/path',
18 'recipe_engine/platform', 19 'recipe_engine/platform',
19 'recipe_engine/properties', 20 'recipe_engine/properties',
20 'recipe_engine/step', 21 'recipe_engine/step',
21 ] 22 ]
22 23
24
23 def RunSteps(api): 25 def RunSteps(api):
24 libyuv = api.libyuv 26 libyuv = api.libyuv
25 libyuv.apply_bot_config(libyuv.BUILDERS, libyuv.RECIPE_CONFIGS) 27 libyuv.apply_bot_config(libyuv.BUILDERS, libyuv.RECIPE_CONFIGS)
26 28
27 api.bot_update.ensure_checkout()
28 api.chromium.cleanup_temp() 29 api.chromium.cleanup_temp()
29 api.chromium.ensure_goma() 30 libyuv.checkout()
31 if libyuv.should_build:
32 api.chromium.ensure_goma()
30 api.chromium.runhooks() 33 api.chromium.runhooks()
31 34
32 if libyuv.should_build: 35 if libyuv.should_build:
33 if api.chromium.c.project_generator.tool == 'gn': 36 if api.chromium.c.project_generator.tool == 'gn':
34 api.chromium.run_gn(use_goma=True) 37 api.chromium.run_gn(use_goma=True)
35 api.chromium.compile(targets=['all']) 38 api.chromium.compile(targets=['all'])
36 else: 39 else:
37 api.chromium.compile() 40 api.chromium.compile()
41 if libyuv.should_upload_build:
42 libyuv.package_build()
43
44 if libyuv.should_download_build:
45 libyuv.extract_build()
38 46
39 if libyuv.should_test: 47 if libyuv.should_test:
40 api.chromium.runtest('libyuv_unittest') 48 libyuv.runtests()
41 49
50 libyuv.maybe_trigger()
42 51
43 def _sanitize_nonalpha(text): 52 def _sanitize_nonalpha(text):
44 return ''.join(c if c.isalnum() else '_' for c in text.lower()) 53 return ''.join(c if c.isalnum() else '_' for c in text.lower())
45 54
46 55
47 def GenTests(api): 56 def GenTests(api):
48 builders = api.libyuv.BUILDERS 57 builders = api.libyuv.BUILDERS
49 58
50 def generate_builder(mastername, buildername, revision, suffix=None): 59 def generate_builder(mastername, buildername, revision, suffix=None):
51 suffix = suffix or '' 60 suffix = suffix or ''
52 bot_config = builders[mastername]['builders'][buildername] 61 bot_config = builders[mastername]['builders'][buildername]
62 bot_type = bot_config.get('bot_type', 'builder_tester')
53 63
54 chromium_kwargs = bot_config.get('chromium_config_kwargs', {}) 64 chromium_kwargs = bot_config.get('chromium_config_kwargs', {})
55 test = ( 65 test = (
56 api.test('%s_%s%s' % (_sanitize_nonalpha(mastername), 66 api.test('%s_%s%s' % (_sanitize_nonalpha(mastername),
57 _sanitize_nonalpha(buildername), suffix)) + 67 _sanitize_nonalpha(buildername), suffix)) +
58 api.properties(mastername=mastername, 68 api.properties(mastername=mastername,
59 buildername=buildername, 69 buildername=buildername,
60 slavename='slavename', 70 slavename='slavename',
61 BUILD_CONFIG=chromium_kwargs['BUILD_CONFIG']) + 71 BUILD_CONFIG=chromium_kwargs['BUILD_CONFIG']) +
62 api.platform(bot_config['testing']['platform'], 72 api.platform(bot_config['testing']['platform'],
63 chromium_kwargs.get('TARGET_BITS', 64)) 73 chromium_kwargs.get('TARGET_BITS', 64))
64 ) 74 )
65 75
76 if bot_config.get('parent_buildername'):
77 test += api.properties(
78 parent_buildername=bot_config['parent_buildername'])
79
66 if revision: 80 if revision:
67 test += api.properties(revision=revision) 81 test += api.properties(revision=revision)
82 if bot_type == 'tester':
83 test += api.properties(parent_got_revision=revision)
68 84
69 if mastername.startswith('tryserver'): 85 if mastername.startswith('tryserver'):
70 test += api.properties(issue='123456789', patchset='1', 86 test += api.properties(issue='123456789', patchset='1',
71 rietveld='https://rietveld.example.com') 87 rietveld='https://rietveld.example.com')
88 test += api.properties(buildnumber=1337)
72 return test 89 return test
73 90
74 for mastername, master_config in builders.iteritems(): 91 for mastername, master_config in builders.iteritems():
75 for buildername in master_config['builders'].keys(): 92 for buildername in master_config['builders'].keys():
76 yield generate_builder(mastername, buildername, revision='12345') 93 yield generate_builder(mastername, buildername, revision='deadbeef')
77 94
78 # Forced builds (not specifying any revision) and test failures. 95 # Forced builds (not specifying any revision) and test failures.
79 mastername = 'client.libyuv' 96 mastername = 'client.libyuv'
80 yield generate_builder(mastername, 'Linux64 Debug', revision=None, 97 yield generate_builder(mastername, 'Linux64 Debug', revision=None,
81 suffix='_forced') 98 suffix='_forced')
82 yield generate_builder(mastername, 'Android Debug', revision=None, 99 yield generate_builder(mastername, 'Android Debug', revision=None,
83 suffix='_forced') 100 suffix='_forced')
101 yield generate_builder(mastername, 'Android Tester ARM32 Debug (Nexus 5X)',
102 revision=None, suffix='_forced_invalid')
84 103
85 yield generate_builder('tryserver.libyuv', 'linux', revision=None, 104 yield generate_builder('tryserver.libyuv', 'linux', revision=None,
86 suffix='_forced') 105 suffix='_forced')
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698