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

Side by Side Diff: mojo/tools/mojo_demo.py

Issue 1143333006: Remove deploy_sdk.py and mojo_demo.py (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 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 | « no previous file | sky/tools/deploy_sdk.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/env python
2 # Copyright 2014 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 from mopy.config import Config
7 import argparse
8 import mopy.paths
9 import os
10 import pipes
11 import subprocess
12 import sys
13
14 # FIXME: We need to merge the mojo/tools and sky/tools directories
15 sys.path.append(os.path.join(mopy.paths.Paths().src_root, 'sky', 'tools'))
16 from skypy.skyserver import SkyServer
17 import skypy.paths
18
19
20 def main():
21 parser = argparse.ArgumentParser(description='Helper to launch mojo demos')
22 parser.add_argument('-d', dest='build_dir', type=str)
23 parser.add_argument('--browser', action='store_const', const='browser',
24 dest='demo', help='Use the browser demo')
25 parser.add_argument('--wm_flow', action='store_const', const='wm_flow',
26 dest='demo', help='Use the wm_flow demo')
27
28 args = parser.parse_args()
29
30 config = Config(target_os=Config.OS_LINUX, is_debug=True)
31 paths = mopy.paths.Paths(config, build_dir=args.build_dir)
32 mojo_shell = paths.mojo_shell_path
33
34 cmd = [mojo_shell]
35 cmd.append('--v=1')
36
37 HTTP_PORT = 9999
38 configuration = 'Debug' if config.is_debug else 'Release'
39
40 # package: urls in Sky's Dart code expect sky and mojo dart packages
41 # vended from /packages. Make sure we build mojo/sky packages before serving:
42 sdk_root = os.path.join(paths.build_dir, 'gen', 'sky_sdk')
43 packages_root = os.path.join(sdk_root, 'packages_root')
44 subprocess.check_call([
45 os.path.join(paths.src_root, 'sky', 'tools', 'deploy_sdk.py'),
46 '--build-dir', paths.build_dir,
47 '--non-interactive',
48 '--dev-environment',
49 '--fake-pub-get-into', packages_root,
50 sdk_root,
51 ])
52 server = SkyServer(HTTP_PORT, configuration, paths.src_root, packages_root)
53
54 if args.demo == 'browser':
55 base_url = server.path_as_url(paths.build_dir)
56 wm_url = os.path.join(base_url, 'example_window_manager.mojo')
57 browser_url = os.path.join(base_url, 'browser.mojo')
58 cmd.append('--url-mappings=mojo:window_manager=mojo:example_window_manager')
59 cmd.append('--args-for=mojo:window_manager %s' % (wm_url))
60 cmd.append('--args-for=mojo:browser %s' % (browser_url))
61 cmd.append('mojo:window_manager')
62 elif args.demo == 'wm_flow':
63 base_url = server.path_as_url(paths.build_dir)
64 wm_url = os.path.join(base_url, 'wm_flow_wm.mojo')
65 app_url = os.path.join(base_url, 'wm_flow_app.mojo')
66 cmd.append('--url-mappings=mojo:window_manager=' + wm_url)
67 # Mojo apps don't know their own URL yet:
68 # https://docs.google.com/a/chromium.org/document/d/1AQ2y6ekzvbdaMF5WrUQmney XJnke-MnYYL4Gz1AKDos
69 cmd.append('--args-for=%s %s' % (app_url, app_url))
70 cmd.append('--args-for=mojo:window_manager %s' % (wm_url))
71 cmd.append(app_url)
72 else:
73 parser.print_usage()
74 print "--browser or --wm_flow is required"
75 return 1
76
77 # http://stackoverflow.com/questions/4748344/whats-the-reverse-of-shlex-split
78 # shlex.quote doesn't exist until 3.3
79 # This doesn't print exactly what we want, but it's better than nothing:
80 print " ".join(map(pipes.quote, cmd))
81 with server:
82 return subprocess.call(cmd)
83
84 if __name__ == '__main__':
85 sys.exit(main())
OLDNEW
« no previous file with comments | « no previous file | sky/tools/deploy_sdk.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698