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

Side by Side Diff: tools/bots/dartium_android.py

Issue 2895973002: Remove old annotated_steps buildbot scripts and dispatcher (Closed)
Patch Set: Created 3 years, 7 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
« no previous file with comments | « tools/bots/cross-vm.py ('k') | tools/bots/fetch_reference_build.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/usr/bin/python
2 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
3 # for details. All rights reserved. Use of this source code is governed by a
4 # BSD-style license that can be found in the LICENSE file.
5
6 """
7 Dartium on Android buildbot steps.
8
9 Runs steps after the buildbot builds Dartium on Android,
10 which should upload the APK to an attached device, and run
11 Dart and chromium tests on it.
12 """
13
14 import optparse
15 import os
16 import string
17 import subprocess
18 import sys
19
20 import bot
21 import bot_utils
22
23 SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
24 sys.path.append(os.path.join(SCRIPT_DIR, '..'))
25 import utils
26
27 CS_LOCATION = 'apks/ContentShell.apk'
28
29 def GetOptionsParser():
30 parser = optparse.OptionParser("usage: %prog [options]")
31 parser.add_option("--build-products-dir",
32 help="The directory containing the products of the build.")
33 return parser
34
35
36 def UploadSetACL(gsutil, local, remote):
37 gsutil.upload(local, remote, public=True)
38
39
40 def UploadAPKs(options):
41 with bot.BuildStep('Upload apk'):
42 bot_name = os.environ.get('BUILDBOT_BUILDERNAME')
43 on_fyi = 'fyi-' in os.environ.get('BUILDBOT_SCHEDULER')
44 if '-integration' in bot_name or on_fyi:
45 return
46 channel = bot_utils.GetChannelFromName(bot_name)
47 namer = bot_utils.GCSNamer(channel=channel)
48 gsutil = bot_utils.GSUtil()
49
50 web_link_prefix = 'https://storage.cloud.google.com/'
51
52 # Archive content shell
53 local = os.path.join(options.build_products_dir, CS_LOCATION)
54
55 for revision in [utils.GetArchiveVersion(), 'latest']:
56 # TODO(whesse): pass in arch and mode from reciepe
57 remote = namer.dartium_android_apk_filepath(revision,
58 'content_shell-android',
59 'arm',
60 'release')
61 content_shell_link = string.replace(remote, 'gs://', web_link_prefix)
62 UploadSetACL(gsutil, local, remote)
63 print "Uploaded content shell, available from: %s" % content_shell_link
64
65
66 def RunContentShellTests(options):
67 with bot.BuildStep('ContentShell tests'):
68 subprocess.check_call([os.path.join(SCRIPT_DIR, 'run_android_tests.sh'),
69 os.path.join(options.build_products_dir, CS_LOCATION)])
70
71
72 def main():
73 if sys.platform != 'linux2':
74 print "This script was only tested on linux. Please run it on linux!"
75 sys.exit(1)
76
77 parser = GetOptionsParser()
78 (options, args) = parser.parse_args()
79
80 if not options.build_products_dir:
81 print "No build products directory given."
82 sys.exit(1)
83
84 UploadAPKs(options)
85 RunContentShellTests(options)
86 sys.exit(0)
87
88 if __name__ == '__main__':
89 main()
OLDNEW
« no previous file with comments | « tools/bots/cross-vm.py ('k') | tools/bots/fetch_reference_build.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698