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

Side by Side Diff: native_client_sdk/src/tools/httpd.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 import argparse
6 import BaseHTTPServer 7 import BaseHTTPServer
7 import logging 8 import logging
8 import multiprocessing 9 import multiprocessing
9 import optparse
10 import os 10 import os
11 import SimpleHTTPServer # pylint: disable=W0611 11 import SimpleHTTPServer # pylint: disable=W0611
12 import socket 12 import socket
13 import sys 13 import sys
14 import time 14 import time
15 import urlparse 15 import urlparse
16 16
17 if sys.version_info < (2, 7, 0): 17 if sys.version_info < (2, 7, 0):
18 sys.stderr.write("python 2.7 or later is required run this script\n") 18 sys.stderr.write("python 2.7 or later is required run this script\n")
19 sys.exit(1) 19 sys.exit(1)
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 if conn.poll(): 178 if conn.poll():
179 httpd.running = conn.recv() 179 httpd.running = conn.recv()
180 except KeyboardInterrupt: 180 except KeyboardInterrupt:
181 pass 181 pass
182 finally: 182 finally:
183 conn.send(httpd.result) 183 conn.send(httpd.result)
184 conn.close() 184 conn.close()
185 185
186 186
187 def main(args): 187 def main(args):
188 parser = optparse.OptionParser() 188 parser = argparse.ArgumentParser()
189 parser.add_option('-C', '--serve-dir', 189 parser.add_argument('-C', '--serve-dir',
190 help='Serve files out of this directory.', 190 help='Serve files out of this directory.',
191 default=os.path.abspath('.')) 191 default=os.path.abspath('.'))
192 parser.add_option('-p', '--port', 192 parser.add_argument('-p', '--port',
193 help='Run server on this port.', default=5103) 193 help='Run server on this port.', default=5103)
194 parser.add_option('--no-dir-check', '--no_dir_check', 194 parser.add_argument('--no-dir-check', '--no_dir_check',
195 help='No check to ensure serving from safe directory.', 195 help='No check to ensure serving from safe directory.',
196 dest='do_safe_check', action='store_false', default=True) 196 dest='do_safe_check', action='store_false', default=True)
197 197
198 # To enable bash completion for this command first install optcomplete 198 # To enable bash completion for this command first install optcomplete
199 # and then add this line to your .bashrc: 199 # and then add this line to your .bashrc:
200 # complete -F _optcomplete httpd.py 200 # complete -F _optcomplete httpd.py
201 try: 201 try:
202 import optcomplete 202 import optcomplete
203 optcomplete.autocomplete(parser) 203 optcomplete.autocomplete(parser)
204 except ImportError: 204 except ImportError:
205 pass 205 pass
206 206
207 options, args = parser.parse_args(args) 207 options = parser.parse_args(args)
208 if options.do_safe_check: 208 if options.do_safe_check:
209 SanityCheckDirectory(options.serve_dir) 209 SanityCheckDirectory(options.serve_dir)
210 210
211 server = LocalHTTPServer(options.serve_dir, int(options.port)) 211 server = LocalHTTPServer(options.serve_dir, int(options.port))
212 212
213 # Serve until the client tells us to stop. When it does, it will give us an 213 # Serve until the client tells us to stop. When it does, it will give us an
214 # errorcode. 214 # errorcode.
215 print 'Serving %s on %s...' % (options.serve_dir, server.GetURL('')) 215 print 'Serving %s on %s...' % (options.serve_dir, server.GetURL(''))
216 return server.ServeForever() 216 return server.ServeForever()
217 217
218 if __name__ == '__main__': 218 if __name__ == '__main__':
219 sys.exit(main(sys.argv[1:])) 219 sys.exit(main(sys.argv[1:]))
OLDNEW
« no previous file with comments | « native_client_sdk/src/tools/getos.py ('k') | native_client_sdk/src/tools/lib/tests/quote_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698