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

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

Issue 1274723004: Converted Android Chromedriver buildbot scripts to recipes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Moved some mkdirs inside try blocks they should have been in Created 4 years, 5 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 # Copyright 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 from recipe_engine import recipe_api
6 from recipe_engine.types import freeze
7
8 DEPS = [
9 'adb',
10 'archive',
11 'chromedriver',
12 'chromium',
13 'chromium_android',
14 'commit_position',
15 'depot_tools/bot_update',
16 'depot_tools/gclient',
17 'recipe_engine/platform',
18 'recipe_engine/properties',
19 'recipe_engine/step',
20 ]
21
22 BUILDERS = freeze({
23 'chromium.fyi': {
24 'Android ChromeDriver Tests (dbg)': {
25 'chromedriver_platform': 'android',
26 'config': 'main_builder',
27 'target': 'Debug',
28 'update_test_log': True,
29 'android_packages': [
30 'chrome_beta',
31 'chrome_public',
32 'chrome_stable',
33 'chromedriver_webview_shell',
34 ],
35 'install_apks': [
36 'ChromeDriverWebViewShell.apk',
37 'ChromePublic.apk',
38 ],
39 },
40 },
41 })
42
43 REPO_URL = 'https://chromium.googlesource.com/chromium/src.git'
44
45 def RunSteps(api):
46 mastername = api.properties['mastername']
47 buildername = api.properties['buildername']
48 builder = BUILDERS[mastername][buildername]
49 api.chromium_android.configure_from_properties(
50 builder['config'],
51 REPO_NAME='src',
52 REPO_URL=REPO_URL,
53 INTERNAL=False,
54 BUILD_CONFIG=builder['target'])
55 android_packages = builder.get('android_packages')
56 update_test_log = builder.get('update_test_log')
57 platform = builder.get('chromedriver_platform')
58
59 api.gclient.set_config('chromium')
60 api.gclient.apply_config('android')
61 api.bot_update.ensure_checkout()
62 api.chromium_android.clean_local_files()
63 api.chromium.runhooks()
64 api.chromium_android.run_tree_truth()
65
66 api.chromium_android.common_tests_setup_steps()
jbudorick 2016/07/11 17:53:48 nit: do this after downloading & extracting the bu
mikecase (-- gone --) 2016/07/11 22:39:44 Done
67
68 api.archive.download_and_unzip_build(
69 step_name='extract build',
70 target=api.chromium.c.BUILD_CONFIG,
71 build_url=None,
72 build_archive_url=api.properties.get('parent_build_archive_url'))
73 commit_position = api.commit_position.parse_revision(
74 api.properties['got_revision_cp'])
75
76 if builder['install_apks']:
77 for apk in builder['install_apks']:
78 api.chromium_android.adb_install_apk(apk)
79 api.chromedriver.download_prebuilts()
80
81 passed = True
82 try:
83 api.chromedriver.run_all_tests(
84 android_packages=android_packages,
85 archive_server_logs=True)
86 except api.step.StepFailure:
87 passed = False
88 if update_test_log:
89 api.chromedriver.update_test_results_log(platform, commit_position, passed)
90
91 api.chromium_android.common_tests_final_steps()
92
93 def GenTests(api):
94 sanitize = lambda s: ''.join(c if c.isalnum() else '_' for c in s)
95
96 yield (
97 api.test('%s_basic' % sanitize('Android ChromeDriver Tests (dbg)')) +
98 api.properties.generic(
99 buildername='Android ChromeDriver Tests (dbg)',
100 slavename='slavename',
101 mastername='chromium.fyi') +
102 api.properties(
103 parent_build_archive_url='gs://test-domain/test-archive.zip',
104 got_revision='4f4b02f6b7fa20a3a25682c457bbc8ad589c8a00',
105 got_revision_cp='refs/heads/master@{#333333}'))
106
107 yield (
108 api.test(
109 '%s_test_failure' % sanitize('Android ChromeDriver Tests (dbg)')) +
110 api.properties.generic(
111 buildername='Android ChromeDriver Tests (dbg)',
112 slavename='slavename',
113 mastername='chromium.fyi') +
114 api.properties(
115 parent_build_archive_url='gs://test-domain/test-archive.zip',
116 got_revision='4f4b02f6b7fa20a3a25682c457bbc8ad589c8a00',
117 got_revision_cp='refs/heads/master@{#333333}') +
118 api.step_data('java_tests(chrome_stable)', retcode=1))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698