diff options
-rw-r--r-- | buildscripts/buildlogger.py | 18 | ||||
-rw-r--r-- | buildscripts/burn_in_tests.py | 53 | ||||
-rwxr-xr-x | buildscripts/clang_format.py | 53 | ||||
-rwxr-xr-x | buildscripts/eslint.py | 54 | ||||
-rwxr-xr-x | buildscripts/hang_analyzer.py | 37 | ||||
-rwxr-xr-x | buildscripts/scons.py | 5 |
6 files changed, 9 insertions, 211 deletions
diff --git a/buildscripts/buildlogger.py b/buildscripts/buildlogger.py index 531c9cc9e9a..163c10aeccf 100644 --- a/buildscripts/buildlogger.py +++ b/buildscripts/buildlogger.py @@ -101,23 +101,7 @@ auth_handler.add_password( user=username, passwd=password) -# This version of HTTPErrorProcessor is copied from -# Python 2.7, and allows REST response codes (e.g. -# "201 Created") which are treated as errors by -# older versions. -class HTTPErrorProcessor(urllib2.HTTPErrorProcessor): - def http_response(self, request, response): - code, msg, hdrs = response.code, response.msg, response.info() - - # According to RFC 2616, "2xx" code indicates that the client's - # request was successfully received, understood, and accepted. - if not (200 <= code < 300): - response = self.parent.error( - 'http', request, response, code, msg, hdrs) - - return response - -url_opener = urllib2.build_opener(auth_handler, HTTPErrorProcessor()) +url_opener = urllib2.build_opener(auth_handler, urllib2.HTTPErrorProcessor()) def url(endpoint): if not endpoint.endswith('/'): diff --git a/buildscripts/burn_in_tests.py b/buildscripts/burn_in_tests.py index 2279ae5ce4b..215673d877d 100644 --- a/buildscripts/burn_in_tests.py +++ b/buildscripts/burn_in_tests.py @@ -79,61 +79,10 @@ def parse_command_line(): return parser.parse_args() -# Copied from python 2.7 version of subprocess.py -# Exception classes used by this module. -class CalledProcessError(Exception): - """This exception is raised when a process run by check_call() or - check_output() returns a non-zero exit status. - The exit status will be stored in the returncode attribute; - check_output() will also store the output in the output attribute. - """ - def __init__(self, returncode, cmd, output=None): - self.returncode = returncode - self.cmd = cmd - self.output = output - def __str__(self): - return ("Command '%s' returned non-zero exit status %d with output %s" % - (self.cmd, self.returncode, self.output)) - - -# Copied from python 2.7 version of subprocess.py -def check_output(*popenargs, **kwargs): - """Run command with arguments and return its output as a byte string. - - If the exit code was non-zero it raises a CalledProcessError. The - CalledProcessError object will have the return code in the returncode - attribute and output in the output attribute. - - The arguments are the same as for the Popen constructor. Example: - - >>> check_output(["ls", "-l", "/dev/null"]) - 'crw-rw-rw- 1 root root 1, 3 Oct 18 2007 /dev/null\n' - - The stdout argument is not allowed as it is used internally. - To capture standard error in the result, use stderr=STDOUT. - - >>> check_output(["/bin/sh", "-c", - ... "ls -l non_existent_file ; exit 0"], - .. stderr=STDOUT) - 'ls: non_existent_file: No such file or directory\n' - """ - if 'stdout' in kwargs: - raise ValueError('stdout argument not allowed, it will be overridden.') - process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs) - output, unused_err = process.communicate() - retcode = process.poll() - if retcode: - cmd = kwargs.get("args") - if cmd is None: - cmd = popenargs[0] - raise CalledProcessError(retcode, cmd, output) - return output - - def callo(args): """Call a program, and capture its output """ - return check_output(args) + return subprocess.check_output(args) def read_evg_config(): diff --git a/buildscripts/clang_format.py b/buildscripts/clang_format.py index 86f3dbc055b..c3910f6b1c3 100755 --- a/buildscripts/clang_format.py +++ b/buildscripts/clang_format.py @@ -62,61 +62,10 @@ CLANG_FORMAT_SOURCE_TAR_BASE = string.Template("clang+llvm-$version-$tar_path/bi MODULE_DIR = "src/mongo/db/modules" ############################################################################## - -# Copied from python 2.7 version of subprocess.py -# Exception classes used by this module. -class CalledProcessError(Exception): - """This exception is raised when a process run by check_call() or - check_output() returns a non-zero exit status. - The exit status will be stored in the returncode attribute; - check_output() will also store the output in the output attribute. - """ - def __init__(self, returncode, cmd, output=None): - self.returncode = returncode - self.cmd = cmd - self.output = output - def __str__(self): - return ("Command '%s' returned non-zero exit status %d with output %s" % - (self.cmd, self.returncode, self.output)) - - -# Copied from python 2.7 version of subprocess.py -def check_output(*popenargs, **kwargs): - r"""Run command with arguments and return its output as a byte string. - - If the exit code was non-zero it raises a CalledProcessError. The - CalledProcessError object will have the return code in the returncode - attribute and output in the output attribute. - - The arguments are the same as for the Popen constructor. Example: - - >>> check_output(["ls", "-l", "/dev/null"]) - 'crw-rw-rw- 1 root root 1, 3 Oct 18 2007 /dev/null\n' - - The stdout argument is not allowed as it is used internally. - To capture standard error in the result, use stderr=STDOUT. - - >>> check_output(["/bin/sh", "-c", - ... "ls -l non_existent_file ; exit 0"], - ... stderr=STDOUT) - 'ls: non_existent_file: No such file or directory\n' - """ - if 'stdout' in kwargs: - raise ValueError('stdout argument not allowed, it will be overridden.') - process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs) - output, unused_err = process.communicate() - retcode = process.poll() - if retcode: - cmd = kwargs.get("args") - if cmd is None: - cmd = popenargs[0] - raise CalledProcessError(retcode, cmd, output) - return output - def callo(args): """Call a program, and capture its output """ - return check_output(args) + return subprocess.check_output(args) def get_tar_path(version, tar_path): """ Get the path to clang-format in the llvm tarball diff --git a/buildscripts/eslint.py b/buildscripts/eslint.py index 06562f2f8da..0bcf567dab0 100755 --- a/buildscripts/eslint.py +++ b/buildscripts/eslint.py @@ -59,60 +59,10 @@ ESLINT_SOURCE_TAR_BASE = string.Template(ESLINT_PROGNAME + "-$platform-$arch") # Has to match the string in SConstruct. MODULE_DIR = "src/mongo/db/modules" -# Copied from python 2.7 version of subprocess.py -# Exception classes used by this module. -class CalledProcessError(Exception): - """This exception is raised when a process run by check_call() or - check_output() returns a non-zero exit status. - The exit status will be stored in the returncode attribute; - check_output() will also store the output in the output attribute. - """ - def __init__(self, returncode, cmd, output=None): - self.returncode = returncode - self.cmd = cmd - self.output = output - def __str__(self): - return ("Command '%s' returned non-zero exit status %d with output %s" % - (self.cmd, self.returncode, self.output)) - - -# Copied from python 2.7 version of subprocess.py -def check_output(*popenargs, **kwargs): - r"""Run command with arguments and return its output as a byte string. - - If the exit code was non-zero it raises a CalledProcessError. The - CalledProcessError object will have the return code in the returncode - attribute and output in the output attribute. - - The arguments are the same as for the Popen constructor. Example: - - >>> check_output(["ls", "-l", "/dev/null"]) - 'crw-rw-rw- 1 root root 1, 3 Oct 18 2007 /dev/null\n' - - The stdout argument is not allowed as it is used internally. - To capture standard error in the result, use stderr=STDOUT. - - >>> check_output(["/bin/sh", "-c", - ... "ls -l non_existent_file ; exit 0"], - ... stderr=STDOUT) - 'ls: non_existent_file: No such file or directory\n' - """ - if 'stdout' in kwargs: - raise ValueError('stdout argument not allowed, it will be overridden.') - process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs) - output, unused_err = process.communicate() - retcode = process.poll() - if retcode: - cmd = kwargs.get("args") - if cmd is None: - cmd = popenargs[0] - raise CalledProcessError(retcode, cmd, output) - return output - def callo(args): """Call a program, and capture its output """ - return check_output(args) + return subprocess.check_output(args) def extract_eslint(tar_path, target_file): tarfp = tarfile.open(tar_path) @@ -223,7 +173,7 @@ class ESLint(object): # so only enter the printing logic if we have an error. try: eslint_output = callo([self.path, "-f", "unix", file_name]) - except CalledProcessError as e: + except subprocess.CalledProcessError as e: if print_diff: # Take a lock to ensure error messages do not get mixed when printed to the screen with self.print_lock: diff --git a/buildscripts/hang_analyzer.py b/buildscripts/hang_analyzer.py index 6be459ae750..da000998711 100755 --- a/buildscripts/hang_analyzer.py +++ b/buildscripts/hang_analyzer.py @@ -49,45 +49,10 @@ def call(a, logger): raise Exception() -# Copied from python 2.7 version of subprocess.py -def check_output(*popenargs, **kwargs): - r"""Run command with arguments and return its output as a byte string. - - If the exit code was non-zero it raises a CalledProcessError. The - CalledProcessError object will have the return code in the returncode - attribute and output in the output attribute. - - The arguments are the same as for the Popen constructor. Example: - - >>> check_output(["ls", "-l", "/dev/null"]) - 'crw-rw-rw- 1 root root 1, 3 Oct 18 2007 /dev/null\n' - - The stdout argument is not allowed as it is used internally. - To capture standard error in the result, use stderr=STDOUT. - - >>> check_output(["/bin/sh", "-c", - ... "ls -l non_existent_file ; exit 0"], - ... stderr=STDOUT) - 'ls: non_existent_file: No such file or directory\n' - """ - if 'stdout' in kwargs: - raise ValueError('stdout argument not allowed, it will be overridden.') - process = subprocess.Popen(stdout=subprocess.PIPE, *popenargs, **kwargs) - output, unused_err = process.communicate() - retcode = process.poll() - if retcode: - cmd = kwargs.get("args") - if cmd is None: - cmd = popenargs[0] - raise CalledProcessError(retcode, cmd, output=output) - - return output - - def callo(a, logger): logger.info("%s" % str(a)) - return check_output(a) + return subprocess.check_output(a) def find_program(prog, paths): diff --git a/buildscripts/scons.py b/buildscripts/scons.py index e7860162eb6..ee2800e8d41 100755 --- a/buildscripts/scons.py +++ b/buildscripts/scons.py @@ -9,8 +9,9 @@ SCONS_VERSION = os.environ.get('SCONS_VERSION', "2.5.0") mongodb_root = os.path.dirname(os.path.dirname(__file__)) scons_dir = os.path.join(mongodb_root, 'src', 'third_party', 'scons-' + SCONS_VERSION) +args = [sys.executable, os.path.join(scons_dir, 'scons.py')] + sys.argv[1:] + if sys.platform == 'win32': - args = [sys.executable, os.path.join(scons_dir, 'scons.py')] + sys.argv[1:] sys.exit(subprocess.call(args)) else: - os.execv(os.path.join(scons_dir, 'scons.py'), sys.argv) + os.execv(sys.executable, args) |