Python os.execvp() Examples
The following are 30
code examples of os.execvp().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
os
, or try the search function
.
Example #1
Source File: manage.py From circleci-demo-python-flask with MIT License | 9 votes |
def test(coverage=False): """Run the unit tests.""" if coverage and not os.environ.get('FLASK_COVERAGE'): import sys os.environ['FLASK_COVERAGE'] = '1' os.execvp(sys.executable, [sys.executable] + sys.argv) import unittest import xmlrunner tests = unittest.TestLoader().discover('tests') # run tests with unittest-xml-reporting and output to $CIRCLE_TEST_REPORTS on CircleCI or test-reports locally xmlrunner.XMLTestRunner(output=os.environ.get('CIRCLE_TEST_REPORTS','test-reports')).run(tests) if COV: COV.stop() COV.save() print('Coverage Summary:') COV.report() basedir = os.path.abspath(os.path.dirname(__file__)) covdir = os.path.join(basedir, 'tmp/coverage') COV.html_report(directory=covdir) print('HTML version: file://%s/index.html' % covdir) COV.erase()
Example #2
Source File: ssh.py From aegea with Apache License 2.0 | 8 votes |
def scp(args): """ Transfer files to or from EC2 instance. """ scp_opts, host_opts = extract_passthrough_opts(args, "scp"), [] user_or_hostname_chars = string.ascii_letters + string.digits ssm_init_complete = False for i, arg in enumerate(args.scp_args): if arg[0] in user_or_hostname_chars and ":" in arg: hostname, colon, path = arg.partition(":") username, at, hostname = hostname.rpartition("@") if args.use_ssm and not ssm_init_complete: scp_opts += init_ssm(get_instance(hostname).id) ssm_init_complete = True host_opts, hostname = prepare_ssh_host_opts(username=username, hostname=hostname, bless_config_filename=args.bless_config, use_kms_auth=args.use_kms_auth, use_ssm=args.use_ssm) args.scp_args[i] = hostname + colon + path os.execvp("scp", ["scp"] + scp_opts + host_opts + args.scp_args)
Example #3
Source File: rd.py From rubber-docker with MIT License | 6 votes |
def contain(command, image_name, image_dir, container_id, container_dir): linux.sethostname(container_id) # change hostname to container_id linux.mount(None, '/', None, linux.MS_PRIVATE | linux.MS_REC, None) new_root = create_container_root( image_name, image_dir, container_id, container_dir) print('Created a new root fs for our container: {}'.format(new_root)) _create_mounts(new_root) old_root = os.path.join(new_root, 'old_root') os.makedirs(old_root) linux.pivot_root(new_root, old_root) os.chdir('/') linux.umount2('/old_root', linux.MNT_DETACH) # umount old root os.rmdir('/old_root') # rmdir the old_root dir os.execvp(command[0], command)
Example #4
Source File: prompt.py From Arjun with GNU General Public License v3.0 | 6 votes |
def prompt(default=None): editor = 'nano' with tempfile.NamedTemporaryFile(mode='r+') as tmpfile: if default: tmpfile.write(default) tmpfile.flush() child_pid = os.fork() is_child = child_pid == 0 if is_child: os.execvp(editor, [editor, tmpfile.name]) else: os.waitpid(child_pid, 0) tmpfile.seek(0) return tmpfile.read().strip()
Example #5
Source File: spawn.py From meddle with MIT License | 6 votes |
def _spawn_posix(cmd, search_path=1, verbose=0, dry_run=0): log.info(' '.join(cmd)) if dry_run: return exec_fn = search_path and os.execvp or os.execv pid = os.fork() if pid == 0: # in the child try: exec_fn(cmd[0], cmd) except OSError, e: sys.stderr.write("unable to execute %s: %s\n" % (cmd[0], e.strerror)) os._exit(1) sys.stderr.write("unable to execute %s for unknown reasons" % cmd[0]) os._exit(1)
Example #6
Source File: stack_symbolizer.py From clusterfuzz with Apache License 2.0 | 6 votes |
def __init__(self, args, close_stderr=False): pid, fd = pty.fork() if pid == 0: # We're the child. Transfer control to command. if close_stderr: dev_null = os.open('/dev/null', 0) os.dup2(dev_null, 2) os.execvp(args[0], args) else: # Disable echoing. attr = termios.tcgetattr(fd) attr[3] = attr[3] & ~termios.ECHO termios.tcsetattr(fd, termios.TCSANOW, attr) # Set up a file()-like interface to the child process self.r = os.fdopen(fd, 'r', 1) self.w = os.fdopen(os.dup(fd), 'w', 1)
Example #7
Source File: spawn.py From Computable with MIT License | 6 votes |
def _spawn_posix(cmd, search_path=1, verbose=0, dry_run=0): log.info(' '.join(cmd)) if dry_run: return exec_fn = search_path and os.execvp or os.execv pid = os.fork() if pid == 0: # in the child try: exec_fn(cmd[0], cmd) except OSError, e: sys.stderr.write("unable to execute %s: %s\n" % (cmd[0], e.strerror)) os._exit(1) sys.stderr.write("unable to execute %s for unknown reasons" % cmd[0]) os._exit(1)
Example #8
Source File: launcher.py From EPG with MIT License | 6 votes |
def call(fn, *, log_relpath, args=None, kwargs=None, mpi_proc_per_machine=1, mpi_machines=1, **__): local_eval_dir = os.path.join(LOCAL_LOG_PATH, log_relpath) if os.path.exists(local_eval_dir): print(colorize( 'Directory %s exists. Removing existing data (this is the default behavior for backend=local)' % local_eval_dir, color='red', highlight=True)) shutil.rmtree(local_eval_dir) os.makedirs(local_eval_dir, exist_ok=True) args = args or [] kwargs = kwargs or {} write_metadata(local_eval_dir, args=args, kwargs=kwargs) def thunk(): return fn(*args, **kwargs) mpi_procs = mpi_proc_per_machine * mpi_machines if mpi_procs > 1: cmd = make_command(thunk, local_eval_dir, mpi_procs, mpi_hosts_path=None) return os.execvp(cmd[0], cmd) else: return run_with_logger(thunk, local_eval_dir)
Example #9
Source File: manage.py From flasky-first-edition with MIT License | 6 votes |
def test(coverage=False): """Run the unit tests.""" if coverage and not os.environ.get('FLASK_COVERAGE'): import sys os.environ['FLASK_COVERAGE'] = '1' os.execvp(sys.executable, [sys.executable] + sys.argv) import unittest tests = unittest.TestLoader().discover('tests') unittest.TextTestRunner(verbosity=2).run(tests) if COV: COV.stop() COV.save() print('Coverage Summary:') COV.report() basedir = os.path.abspath(os.path.dirname(__file__)) covdir = os.path.join(basedir, 'tmp/coverage') COV.html_report(directory=covdir) print('HTML version: file://%s/index.html' % covdir) COV.erase()
Example #10
Source File: rd.py From rubber-docker with MIT License | 6 votes |
def contain(command, image_name, image_dir, container_id, container_dir): linux.unshare(linux.CLONE_NEWNS) # create a new mount namespace linux.unshare(linux.CLONE_NEWUTS) # switch to a new UTS namespace linux.sethostname(container_id) # change hostname to container_id linux.mount(None, '/', None, linux.MS_PRIVATE | linux.MS_REC, None) new_root = create_container_root( image_name, image_dir, container_id, container_dir) print('Created a new root fs for our container: {}'.format(new_root)) _create_mounts(new_root) old_root = os.path.join(new_root, 'old_root') os.makedirs(old_root) linux.pivot_root(new_root, old_root) os.chdir('/') linux.umount2('/old_root', linux.MNT_DETACH) # umount old root os.rmdir('/old_root') # rmdir the old_root dir os.execvp(command[0], command)
Example #11
Source File: rd.py From rubber-docker with MIT License | 6 votes |
def contain(command, image_name, image_dir, container_id, container_dir): linux.unshare(linux.CLONE_NEWNS) # create a new mount namespace linux.mount(None, '/', None, linux.MS_PRIVATE | linux.MS_REC, None) new_root = create_container_root( image_name, image_dir, container_id, container_dir) print('Created a new root fs for our container: {}'.format(new_root)) _create_mounts(new_root) old_root = os.path.join(new_root, 'old_root') os.makedirs(old_root) linux.pivot_root(new_root, old_root) os.chdir('/') linux.umount2('/old_root', linux.MNT_DETACH) # umount old root os.rmdir('/old_root') # rmdir the old_root dir os.execvp(command[0], command)
Example #12
Source File: prompt.py From Bolt with GNU General Public License v3.0 | 6 votes |
def prompt(default=None): editor = 'nano' with tempfile.NamedTemporaryFile(mode='r+') as tmpfile: if default: tmpfile.write(default) tmpfile.flush() child_pid = os.fork() is_child = child_pid == 0 if is_child: os.execvp(editor, [editor, tmpfile.name]) else: os.waitpid(child_pid, 0) tmpfile.seek(0) return tmpfile.read().strip()
Example #13
Source File: connect_instance.py From Ithemal with MIT License | 6 votes |
def connect_to_instance(self, instance): # type: (Dict[str, Any]) -> None ssh_address = 'ec2-user@{}'.format(instance['PublicDnsName']) ssh_args = ['ssh', '-X', '-i', self.pem_key, '-t', ssh_address] if self.com: conn_com = "bash -lc '{}'".format(' '.join(self.com).replace("'", r"\'")) else: conn_com = "bash -lc '~/ithemal/aws/aws_utils/tmux_attach.sh || /home/ithemal/ithemal/aws/aws_utils/tmux_attach.sh'" if self.host: ssh_args.append(conn_com) else: if self.root: user = 'root' else: user = 'ithemal' ssh_args.append('sudo docker exec -u {} -it ithemal {}'.format(user, conn_com)) os.execvp('ssh', ssh_args) sys.exit(1)
Example #14
Source File: terminal.py From ashier with Apache License 2.0 | 6 votes |
def SpawnPTY(argv): """Spawn a process and connect its controlling terminal to a PTY. Create a new PTY device and spawn a process with the controlling terminal of the child process set to the slave end of the new PTY. Args: argv: arguments (including executable name) for the child process. Returns: A pair containing the PID of the child process and the file descriptor for the master end of the new PTY device. """ assert argv, 'SpawnPTY: argv is an empty list' (pid, fd) = pty.fork() if pid == 0: try: os.execvp(argv[0], argv) except OSError as err: print "# Error: cannot execute program '%s'" % argv[0] print '# %s\n%s' % (str(err), chr(4)) sys.exit(1) return (pid, fd)
Example #15
Source File: manage.py From braindump with MIT License | 6 votes |
def test(coverage=False): """Run the unit tests.""" import sys if coverage and not os.environ.get('FLASK_COVERAGE'): os.environ['FLASK_COVERAGE'] = '1' os.execvp(sys.executable, [sys.executable] + sys.argv) import unittest import xmlrunner tests = unittest.TestLoader().discover('tests') results = xmlrunner.XMLTestRunner(output='test-reports').run(tests) if COV: COV.stop() COV.save() print('Coverage Summary:') COV.report() basedir = os.path.abspath(os.path.dirname(__file__)) covdir = os.path.join(basedir, 'test-reports/coverage') COV.html_report(directory=covdir) print('HTML version: file://%s/index.html' % covdir) COV.erase() if (len(results.failures) > 0 or len(results.errors) > 0): sys.exit(1)
Example #16
Source File: TestCmd.py From gyp with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, cmd, bufsize=-1): p2cread, p2cwrite = os.pipe() c2pread, c2pwrite = os.pipe() self.pid = os.fork() if self.pid == 0: # Child os.dup2(p2cread, 0) os.dup2(c2pwrite, 1) os.dup2(c2pwrite, 2) for i in range(3, popen2.MAXFD): try: os.close(i) except: pass try: os.execvp(cmd[0], cmd) finally: os._exit(1) # Shouldn't come here, I guess os._exit(1) os.close(p2cread) self.tochild = os.fdopen(p2cwrite, 'w', bufsize) os.close(c2pwrite) self.fromchild = os.fdopen(c2pread, 'r', bufsize) popen2._active.append(self)
Example #17
Source File: ssh.py From mesos-cli with Apache License 2.0 | 6 votes |
def main(args): term = blessings.Terminal() # There's a security bug in Mavericks wrt. urllib2: # http://bugs.python.org/issue20585 if platform.system() == "Darwin": os.environ["no_proxy"] = "*" task = MASTER.task(args.task) cmd = [ "ssh", "-t", task.slave["hostname"], "cd {0} && bash".format(task.directory) ] if task.directory == "": print(term.red + "warning: the task no longer exists on the " + "target slave. Will not enter sandbox" + term.white + "\n\n") cmd = cmd[:-1] log.fn(os.execvp, "ssh", cmd)
Example #18
Source File: TestCmd.py From gyp with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, cmd, bufsize=-1): p2cread, p2cwrite = os.pipe() c2pread, c2pwrite = os.pipe() self.pid = os.fork() if self.pid == 0: # Child os.dup2(p2cread, 0) os.dup2(c2pwrite, 1) os.dup2(c2pwrite, 2) for i in range(3, popen2.MAXFD): try: os.close(i) except: pass try: os.execvp(cmd[0], cmd) finally: os._exit(1) # Shouldn't come here, I guess os._exit(1) os.close(p2cread) self.tochild = os.fdopen(p2cwrite, 'w', bufsize) os.close(c2pwrite) self.fromchild = os.fdopen(c2pread, 'r', bufsize) popen2._active.append(self)
Example #19
Source File: utils.py From Corsy with GNU General Public License v3.0 | 6 votes |
def prompt(default=None): editor = 'nano' with tempfile.NamedTemporaryFile(mode='r+') as tmpfile: if default: tmpfile.write(default) tmpfile.flush() child_pid = os.fork() is_child = child_pid == 0 if is_child: os.execvp(editor, [editor, tmpfile.name]) else: os.waitpid(child_pid, 0) tmpfile.seek(0) return tmpfile.read().strip()
Example #20
Source File: zephyr_mirror_backend.py From python-zulip-api with Apache License 2.0 | 6 votes |
def maybe_restart_mirroring_script() -> None: if os.stat(os.path.join(options.stamp_path, "stamps", "restart_stamp")).st_mtime > start_time or ( (options.user == "tabbott" or options.user == "tabbott/extra") and os.stat(os.path.join(options.stamp_path, "stamps", "tabbott_stamp")).st_mtime > start_time ): logger.warning("") logger.warning("zephyr mirroring script has been updated; restarting...") maybe_kill_child() try: zephyr._z.cancelSubs() except OSError: # We don't care whether we failed to cancel subs properly, but we should log it logger.exception("") while True: try: os.execvp(os.path.abspath(__file__), sys.argv) except Exception: logger.exception("Error restarting mirroring script; trying again... Traceback:") time.sleep(1)
Example #21
Source File: manage.py From livetv_mining with Apache License 2.0 | 6 votes |
def test(coverage=False): """Run the unit tests.""" if coverage and not os.environ.get('FLASK_COVERAGE'): os.environ['FLASK_COVERAGE'] = '1' os.execvp(sys.executable, [sys.executable] + sys.argv) testresult = TextTestRunner(verbosity=2).run(TestLoader().discover('tests')) if cov: cov.stop() cov.save() print('Coverage Summary:') cov.report() covdir = app.config.get('COVERAGE_DIRECTORY', '') if covdir: covdir = os.path.join(covdir, datetime.utcnow().strftime('%Y-%m-%d-%H-%M-%S')) if not os.path.exists(covdir): os.makedirs(covdir) cov.html_report(directory=covdir) print('Coverage HTML version: file://{}/index.html'.format(covdir)) cov.erase() if len(testresult.failures) + len(testresult.errors) > 0: sys.exit(1)
Example #22
Source File: client.py From luscan-devel with GNU General Public License v2.0 | 5 votes |
def runshell(self): settings_dict = self.connection.settings_dict args = [self.executable_name] db = settings_dict['OPTIONS'].get('db', settings_dict['NAME']) user = settings_dict['OPTIONS'].get('user', settings_dict['USER']) passwd = settings_dict['OPTIONS'].get('passwd', settings_dict['PASSWORD']) host = settings_dict['OPTIONS'].get('host', settings_dict['HOST']) port = settings_dict['OPTIONS'].get('port', settings_dict['PORT']) defaults_file = settings_dict['OPTIONS'].get('read_default_file') # Seems to be no good way to set sql_mode with CLI. if defaults_file: args += ["--defaults-file=%s" % defaults_file] if user: args += ["--user=%s" % user] if passwd: args += ["--password=%s" % passwd] if host: if '/' in host: args += ["--socket=%s" % host] else: args += ["--host=%s" % host] if port: args += ["--port=%s" % port] if db: args += [db] if os.name == 'nt': sys.exit(os.system(" ".join(args))) else: os.execvp(self.executable_name, args)
Example #23
Source File: utils.py From restrain-jit with MIT License | 5 votes |
def exec_cc(cmd, args): """ Execute with current context. Yes, you're right -- I'm naming it after call/cc. Return a generator. The first yielded one is the status of the execution of subprocess command. The following ones are the the buffer batches of stderr, each of which is a Python 'bytes' object """ file = cmd err_in, err_out = os.pipe() out_in, out_out = os.pipe() if os.fork(): _, status = os.wait() os.close(err_out) os.close(out_out) yield status while True: load = os.read(err_in, 1024) if not load: break yield load else: # for child process os.close(err_in) os.close(out_in) os.dup2(err_out, sys.stderr.fileno()) os.dup2(out_out, sys.stdout.fileno()) os.execvpe(file, [cmd, *args], dict(os.environ)) # in case that os.execvp fails sys.exit(127)
Example #24
Source File: client.py From luscan-devel with GNU General Public License v2.0 | 5 votes |
def runshell(self): conn_string = self.connection._connect_string() args = [self.executable_name, "-L", conn_string] if os.name == 'nt': sys.exit(os.system(" ".join(args))) else: os.execvp(self.executable_name, args)
Example #25
Source File: client.py From luscan-devel with GNU General Public License v2.0 | 5 votes |
def runshell(self): args = [self.executable_name, self.connection.settings_dict['NAME']] if os.name == 'nt': sys.exit(os.system(" ".join(args))) else: os.execvp(self.executable_name, args)
Example #26
Source File: client.py From luscan-devel with GNU General Public License v2.0 | 5 votes |
def runshell(self): settings_dict = self.connection.settings_dict args = [self.executable_name] if settings_dict['USER']: args += ["-U", settings_dict['USER']] if settings_dict['HOST']: args.extend(["-h", settings_dict['HOST']]) if settings_dict['PORT']: args.extend(["-p", str(settings_dict['PORT'])]) args += [settings_dict['NAME']] if os.name == 'nt': sys.exit(os.system(" ".join(args))) else: os.execvp(self.executable_name, args)
Example #27
Source File: external_search_command.py From SplunkForPCAP with MIT License | 5 votes |
def _execute(path, argv, environ): if environ is None: os.execvp(path, argv) else: os.execvpe(path, argv, environ) return # endregion
Example #28
Source File: ui.py From ish with MIT License | 5 votes |
def connect_to(self, selected_ip, all_ips, target): self.stderr("Found {} IPs for {}:".format(len(all_ips), target)) for ip in all_ips: if ip == selected_ip: self.stderr(" - {} (selected)".format(ip)) else: self.stderr(" - {}".format(ip)) cmd = '/usr/bin/ssh' arguments = [cmd, selected_ip] arguments.extend(sys.argv[2:]) self.execvp(cmd, arguments) self.exit(2)
Example #29
Source File: recipe-576387.py From code with MIT License | 5 votes |
def _child(self, cmd): # Note sh below doesn't setup a seperate group (job control) # for non interactive shells (hmm maybe -m option does?) os.setpgrp() #seperate group so we can kill it os.dup2(self.outw,1) #stdout to write side of pipe os.dup2(self.errw,2) #stderr to write side of pipe #stdout & stderr connected to pipe, so close all other files map(os.close,[self.outr,self.outw,self.errr,self.errw]) try: cmd = ['/bin/sh', '-c', cmd] os.execvp(cmd[0], cmd) finally: #exit child on error os._exit(1)
Example #30
Source File: ui.py From ish with MIT License | 5 votes |
def __init__(self, caller, err=sys.stderr, out=sys.stdout, exit=sys.exit, execvp=os.execvp): self.caller = caller self.err = err self.out = out self.exit = exit self.execvp = execvp