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

Side by Side Diff: native_client_sdk/src/build_tools/buildbot_run.py

Issue 720233003: [NaCl SDK] Convert python scripts from optparse to argparse. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Main entry point for the NaCl SDK buildbot. 6 """Main entry point for the NaCl SDK buildbot.
7 7
8 The entry point used to be build_sdk.py itself, but we want 8 The entry point used to be build_sdk.py itself, but we want
9 to be able to simplify build_sdk (for example separating out 9 to be able to simplify build_sdk (for example separating out
10 the test code into test_sdk) and change its default behaviour 10 the test code into test_sdk) and change its default behaviour
11 while being able to separately control excactly what the bots 11 while being able to separately control excactly what the bots
12 run. 12 run.
13 """ 13 """
14 14
15 import argparse
15 import buildbot_common 16 import buildbot_common
16 import os 17 import os
17 import optparse
18 import subprocess 18 import subprocess
19 import sys 19 import sys
20 20
21 from buildbot_common import Run 21 from buildbot_common import Run
22 from build_paths import SRC_DIR, SDK_SRC_DIR, SCRIPT_DIR 22 from build_paths import SRC_DIR, SDK_SRC_DIR, SCRIPT_DIR
23 import getos 23 import getos
24 24
25 25
26 def StepArmRunHooks(): 26 def StepArmRunHooks():
27 if getos.GetPlatform() != 'linux': 27 if getos.GetPlatform() != 'linux':
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 cmd.extend(['build_examples', 'copy_tests', 'build_tests']) 94 cmd.extend(['build_examples', 'copy_tests', 'build_tests'])
95 Run(cmd, cwd=SCRIPT_DIR) 95 Run(cmd, cwd=SCRIPT_DIR)
96 96
97 97
98 def main(args): 98 def main(args):
99 # Don't write out .pyc files in the source tree. Without this, incremental 99 # Don't write out .pyc files in the source tree. Without this, incremental
100 # builds can fail when .py files are moved/deleted, since python could load 100 # builds can fail when .py files are moved/deleted, since python could load
101 # orphaned .pyc files generated by a previous run. 101 # orphaned .pyc files generated by a previous run.
102 os.environ['PYTHONDONTWRITEBYTECODE'] = '1' 102 os.environ['PYTHONDONTWRITEBYTECODE'] = '1'
103 103
104 parser = optparse.OptionParser(description=__doc__) 104 parser = argparse.ArgumentParser(description=__doc__)
105 parser.add_option('--build-only', action='store_true', 105 parser.add_argument('--build-only', action='store_true',
106 help='Only build the SDK, don\'t build or run tests.') 106 help='Only build the SDK, don\'t build or run tests.')
107 parser.add_option('--build-properties', 107 parser.add_argument('--build-properties',
108 help='JSON properties passed by buildbot. Currently ignored.') 108 help='JSON properties passed by buildbot. Currently ignored.')
109 parser.add_option('--factory-properties', 109 parser.add_argument('--factory-properties',
110 help='JSON properties passed by buildbot. Currently ignored.') 110 help='JSON properties passed by buildbot. Currently ignored.')
111 options, args = parser.parse_args(args) 111 options = parser.parse_args(args)
112 112
113 # Skip the testing phase if we are running on a build-only bots. 113 # Skip the testing phase if we are running on a build-only bots.
114 if not options.build_only: 114 if not options.build_only:
115 # Infer build-only from bot name. 115 # Infer build-only from bot name.
116 # TODO(sbc): Remove this once buildbot script have been updated 116 # TODO(sbc): Remove this once buildbot script have been updated
117 # to pass --build-only argument. 117 # to pass --build-only argument.
118 if os.getenv('BUILDBOT_BUILDERNAME', '').endswith('build'): 118 if os.getenv('BUILDBOT_BUILDERNAME', '').endswith('build'):
119 options.build_only = True 119 options.build_only = True
120 120
121 StepArmRunHooks() 121 StepArmRunHooks()
122 StepRunUnittests() 122 StepRunUnittests()
123 StepBuildSDK() 123 StepBuildSDK()
124 if not options.build_only: 124 if not options.build_only:
125 StepTestSDK() 125 StepTestSDK()
126 126
127 return 0 127 return 0
128 128
129 129
130 if __name__ == '__main__': 130 if __name__ == '__main__':
131 try: 131 try:
132 sys.exit(main(sys.argv[1:])) 132 sys.exit(main(sys.argv[1:]))
133 except KeyboardInterrupt: 133 except KeyboardInterrupt:
134 buildbot_common.ErrorExit('buildbot_run: interrupted') 134 buildbot_common.ErrorExit('buildbot_run: interrupted')
OLDNEW
« no previous file with comments | « native_client_sdk/src/build_tools/build_updater.py ('k') | native_client_sdk/src/build_tools/dsc2gyp.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698