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

Side by Side Diff: tools/observatory_tool.py

Issue 1343103002: Observatory build should try backup method if the SDK doesn't work. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 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
« no previous file with comments | « no previous file | tools/run_pub.py » ('j') | tools/run_pub.py » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 2 # Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
3 # for details. All rights reserved. Use of this source code is governed by a 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. 4 # BSD-style license that can be found in the LICENSE file.
5 """Helper for building and deploying Observatory""" 5 """Helper for building and deploying Observatory"""
6 6
7 import argparse 7 import argparse
8 import os 8 import os
9 import platform 9 import platform
10 import shutil 10 import shutil
(...skipping 25 matching lines...) Expand all
36 result.add_argument("--directory", help="observatory root", default=None) 36 result.add_argument("--directory", help="observatory root", default=None)
37 result.add_argument("--command", help="[get, build, deploy]", default=None) 37 result.add_argument("--command", help="[get, build, deploy]", default=None)
38 result.add_argument("--silent", help="silence all output", default=False) 38 result.add_argument("--silent", help="silence all output", default=False)
39 result.add_argument("--sdk", help="Use prebuilt sdk", default=False) 39 result.add_argument("--sdk", help="Use prebuilt sdk", default=False)
40 return result 40 return result
41 41
42 def ProcessOptions(options, args): 42 def ProcessOptions(options, args):
43 # Required options. 43 # Required options.
44 if (options.command == None) or (options.directory == None): 44 if (options.command == None) or (options.directory == None):
45 return False 45 return False
46 # If we have a pub executable, we are running from the dart-sdk.
47 if (options.pub_executable != None):
48 return True
49 if (options.sdk != None): 46 if (options.sdk != None):
50 # Use the checked in pub executable by default. 47 # Use the checked in pub executable by default.
51 options.pub_executable = utils.CheckedInPubPath() 48 options.pub_executable = utils.CheckedInPubPath()
52 return True 49 # If we have a working pub executable, we are running from the dart-sdk.
53 # Otherwise, we need a dart executable and a package root. 50 if (options.pub_executable != None):
51 try:
52 if utils.CheckedInSdkFixExecutable() and 0 == subprocess.call(
53 [options.pub_executable, '--version']):
54 return True
55 except OSError as e:
56 pass
57 # The pub executable didn't work, use the backup procedure.
58 options.pub_executable = None
59 # We need a dart executable and a package root.
54 return ((options.package_root != None) and 60 return ((options.package_root != None) and
55 (options.dart_executable != None)) 61 (options.dart_executable != None))
56 62
57 def ChangeDirectory(directory): 63 def ChangeDirectory(directory):
58 os.chdir(directory); 64 os.chdir(directory);
59 65
60 def PubGet(dart_executable, pub_executable, pkg_root, silent): 66 def PubGet(dart_executable, pub_executable, pkg_root, silent):
61 # Always remove pubspec.lock before running 'pub get'. 67 # Always remove pubspec.lock before running 'pub get'.
62 try: 68 try:
63 os.remove('pubspec.lock'); 69 os.remove('pubspec.lock');
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 options.dart_executable = os.path.abspath(options.dart_executable) 157 options.dart_executable = os.path.abspath(options.dart_executable)
152 if (options.pub_executable != None): 158 if (options.pub_executable != None):
153 options.pub_executable = os.path.abspath(options.pub_executable) 159 options.pub_executable = os.path.abspath(options.pub_executable)
154 if len(args) == 1: 160 if len(args) == 1:
155 args[0] = os.path.abspath(args[0]) 161 args[0] = os.path.abspath(args[0])
156 # Pub must be run from the project's root directory. 162 # Pub must be run from the project's root directory.
157 ChangeDirectory(options.directory) 163 ChangeDirectory(options.directory)
158 return ExecuteCommand(options, args) 164 return ExecuteCommand(options, args)
159 165
160 if __name__ == '__main__': 166 if __name__ == '__main__':
161 sys.exit(main()); 167 sys.exit(main());
OLDNEW
« no previous file with comments | « no previous file | tools/run_pub.py » ('j') | tools/run_pub.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698