Python os.spawnlp() Examples
The following are 14
code examples of os.spawnlp().
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: notebook.py From pyGSTi with Apache License 2.0 | 6 votes |
def launch_new(self, outputFilename, templateFilename=DefaultTemplate): ''' Save and then launch this notebook with a new jupyter server. Note that this function waits to return until the notebook server exists, and so is difficult to work with. Parameters ---------- outputFilename : str filename to save this notebook to templateFilename : str, optional filename to build this notebook from (see save_to) ''' self.save_to(outputFilename, templateFilename) _call('jupyter notebook {}'.format(outputFilename), shell=True) # this waits for notebook to complete #_os.system('jupyter notebook {}'.format(outputFilename)) # same behavior as above #processid = _os.spawnlp(_os.P_NOWAIT, 'jupyter', 'notebook', _os.path.abspath(outputFilename)) #DOESN'T WORK #print("DB: spawned notebook %d!" % processid)
Example #2
Source File: pydev_monkey.py From PyDev.Debugger with Eclipse Public License 1.0 | 5 votes |
def create_spawnl(original_name): def new_spawnl(mode, path, *args): """ os.spawnl(mode, path, arg0, arg1, ...) os.spawnlp(mode, file, arg0, arg1, ...) """ if _get_apply_arg_patching(): args = patch_args(args) send_process_created_message() return getattr(os, original_name)(mode, path, *args) return new_spawnl
Example #3
Source File: pydev_monkey.py From PyDev.Debugger with Eclipse Public License 1.0 | 5 votes |
def patch_new_process_functions_with_warning(): monkey_patch_os('execl', create_warn_multiproc) monkey_patch_os('execle', create_warn_multiproc) monkey_patch_os('execlp', create_warn_multiproc) monkey_patch_os('execlpe', create_warn_multiproc) monkey_patch_os('execv', create_warn_multiproc) monkey_patch_os('execve', create_warn_multiproc) monkey_patch_os('execvp', create_warn_multiproc) monkey_patch_os('execvpe', create_warn_multiproc) monkey_patch_os('spawnl', create_warn_multiproc) monkey_patch_os('spawnle', create_warn_multiproc) monkey_patch_os('spawnlp', create_warn_multiproc) monkey_patch_os('spawnlpe', create_warn_multiproc) monkey_patch_os('spawnv', create_warn_multiproc) monkey_patch_os('spawnve', create_warn_multiproc) monkey_patch_os('spawnvp', create_warn_multiproc) monkey_patch_os('spawnvpe', create_warn_multiproc) monkey_patch_os('posix_spawn', create_warn_multiproc) if not IS_JYTHON: if not IS_WINDOWS: monkey_patch_os('fork', create_warn_multiproc) try: import _posixsubprocess monkey_patch_module(_posixsubprocess, 'fork_exec', create_warn_fork_exec) except ImportError: pass else: # Windows try: import _subprocess except ImportError: import _winapi as _subprocess monkey_patch_module(_subprocess, 'CreateProcess', create_CreateProcessWarnMultiproc)
Example #4
Source File: python.py From airflow with Apache License 2.0 | 5 votes |
def pyspy(): """ This decorator provide deterministic profiling. It generate and save flame graph to file. It uses``pyspy`` internally. Running py-spy inside of a docker container will also usually bring up a permissions denied error even when running as root. This error is caused by docker restricting the process_vm_readv system call we are using. This can be overridden by setting --cap-add SYS_PTRACE when starting the docker container. Alternatively you can edit the docker-compose yaml file .. code-block:: yaml your_service: cap_add: - SYS_PTRACE In the case of Airflow Breeze, you should modify the ``scripts/perf/perf_kit/python.py`` file. """ pid = str(os.getpid()) suffix = datetime.datetime.now().isoformat() filename = f"{PYSPY_OUTPUT}/flame-{suffix}-{pid}.html" pyspy_pid = os.spawnlp( os.P_NOWAIT, "sudo", "sudo", "py-spy", "record", "--idle", "-o", filename, "-p", pid ) try: yield finally: os.kill(pyspy_pid, signal.SIGINT) print(f"Report saved to: {filename}")
Example #5
Source File: pyfestival.py From Cherry-Autonomous-Racecar with MIT License | 5 votes |
def start(self): args = [self._festival_bin, "--server"] self._process = subprocess.Popen( args, stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE, close_fds = True) stdout, stderr = self._process.communicate() if stderr.rstrip() == "socket: bind failed": raise ServerError(stderr.rstrip()) #self._pid = os.spawnlp(os.P_NOWAIT, "festival","festival", "--server") #print self._pid
Example #6
Source File: test_launchd.py From ccs-twistedextensions with Apache License 2.0 | 5 votes |
def tearDown(self): """ Un-load the launchd job and report any errors it encountered. """ os.spawnlp(os.P_WAIT, "launchctl", "launchctl", "unload", self.job.path) err = self.stderr.getContent() if 'Traceback' in err: self.fail(err)
Example #7
Source File: recipe-286238.py From code with MIT License | 5 votes |
def edit(filehandle): """spawns an editor returns the file as a string; by default uses emacs if EDITOR is not defined in the environment, expects a filehandle as returned by NamedTemporaryFile()""" editor = os.getenv('EDITOR','emacs') x = os.spawnlp(os.P_WAIT,editor,editor,filehandle.name) if x != 0: print "ERROR" return filehandle.read()
Example #8
Source File: LaunchPath.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def launchpath_mac(path): os.spawnlp(os.P_NOWAIT, 'open', 'open', path)
Example #9
Source File: LaunchPath.py From BitTorrent with GNU General Public License v3.0 | 5 votes |
def launchpath_posix(path): if default_posix_browser: os.spawnlp(os.P_NOWAIT, default_posix_browser, default_posix_browser, path)
Example #10
Source File: pydev_monkey.py From filmkodi with Apache License 2.0 | 5 votes |
def create_spawnl(original_name): def new_spawnl(mode, path, *args): """ os.spawnl(mode, path, arg0, arg1, ...) os.spawnlp(mode, file, arg0, arg1, ...) """ import os args = patch_args(args) return getattr(os, original_name)(mode, path, *args) return new_spawnl
Example #11
Source File: pydev_monkey.py From filmkodi with Apache License 2.0 | 5 votes |
def patch_new_process_functions_with_warning(): monkey_patch_os('execl', create_warn_multiproc) monkey_patch_os('execle', create_warn_multiproc) monkey_patch_os('execlp', create_warn_multiproc) monkey_patch_os('execlpe', create_warn_multiproc) monkey_patch_os('execv', create_warn_multiproc) monkey_patch_os('execve', create_warn_multiproc) monkey_patch_os('execvp', create_warn_multiproc) monkey_patch_os('execvpe', create_warn_multiproc) monkey_patch_os('spawnl', create_warn_multiproc) monkey_patch_os('spawnle', create_warn_multiproc) monkey_patch_os('spawnlp', create_warn_multiproc) monkey_patch_os('spawnlpe', create_warn_multiproc) monkey_patch_os('spawnv', create_warn_multiproc) monkey_patch_os('spawnve', create_warn_multiproc) monkey_patch_os('spawnvp', create_warn_multiproc) monkey_patch_os('spawnvpe', create_warn_multiproc) if sys.platform != 'win32': monkey_patch_os('fork', create_warn_multiproc) try: import _posixsubprocess monkey_patch_module(_posixsubprocess, 'fork_exec', create_warn_fork_exec) except ImportError: pass else: # Windows try: import _subprocess except ImportError: import _winapi as _subprocess monkey_patch_module(_subprocess, 'CreateProcess', create_CreateProcessWarnMultiproc)
Example #12
Source File: Mime.py From bazarr with GNU General Public License v3.0 | 5 votes |
def install_mime_info(application, package_file): """Copy 'package_file' as ``~/.local/share/mime/packages/<application>.xml.`` If package_file is None, install ``<app_dir>/<application>.xml``. If already installed, does nothing. May overwrite an existing file with the same name (if the contents are different)""" application += '.xml' new_data = open(package_file).read() # See if the file is already installed package_dir = os.path.join('mime', 'packages') resource = os.path.join(package_dir, application) for x in BaseDirectory.load_data_paths(resource): try: old_data = open(x).read() except: continue if old_data == new_data: return # Already installed global _cache_uptodate _cache_uptodate = False # Not already installed; add a new copy # Create the directory structure... new_file = os.path.join(BaseDirectory.save_data_path(package_dir), application) # Write the file... open(new_file, 'w').write(new_data) # Update the database... command = 'update-mime-database' if os.spawnlp(os.P_WAIT, command, command, BaseDirectory.save_data_path('mime')): os.unlink(new_file) raise Exception("The '%s' command returned an error code!\n" \ "Make sure you have the freedesktop.org shared MIME package:\n" \ "http://standards.freedesktop.org/shared-mime-info/" % command)
Example #13
Source File: pydev_monkey.py From PyDev.Debugger with Eclipse Public License 1.0 | 4 votes |
def patch_new_process_functions(): # os.execl(path, arg0, arg1, ...) # os.execle(path, arg0, arg1, ..., env) # os.execlp(file, arg0, arg1, ...) # os.execlpe(file, arg0, arg1, ..., env) # os.execv(path, args) # os.execve(path, args, env) # os.execvp(file, args) # os.execvpe(file, args, env) monkey_patch_os('execl', create_execl) monkey_patch_os('execle', create_execl) monkey_patch_os('execlp', create_execl) monkey_patch_os('execlpe', create_execl) monkey_patch_os('execv', create_execv) monkey_patch_os('execve', create_execve) monkey_patch_os('execvp', create_execv) monkey_patch_os('execvpe', create_execve) # os.spawnl(mode, path, ...) # os.spawnle(mode, path, ..., env) # os.spawnlp(mode, file, ...) # os.spawnlpe(mode, file, ..., env) # os.spawnv(mode, path, args) # os.spawnve(mode, path, args, env) # os.spawnvp(mode, file, args) # os.spawnvpe(mode, file, args, env) monkey_patch_os('spawnl', create_spawnl) monkey_patch_os('spawnle', create_spawnl) monkey_patch_os('spawnlp', create_spawnl) monkey_patch_os('spawnlpe', create_spawnl) monkey_patch_os('spawnv', create_spawnv) monkey_patch_os('spawnve', create_spawnve) monkey_patch_os('spawnvp', create_spawnv) monkey_patch_os('spawnvpe', create_spawnve) monkey_patch_os('posix_spawn', create_posix_spawn) if not IS_JYTHON: if not IS_WINDOWS: monkey_patch_os('fork', create_fork) try: import _posixsubprocess monkey_patch_module(_posixsubprocess, 'fork_exec', create_fork_exec) except ImportError: pass else: # Windows try: import _subprocess except ImportError: import _winapi as _subprocess monkey_patch_module(_subprocess, 'CreateProcess', create_CreateProcess)
Example #14
Source File: pydev_monkey.py From filmkodi with Apache License 2.0 | 4 votes |
def patch_new_process_functions(): # os.execl(path, arg0, arg1, ...) # os.execle(path, arg0, arg1, ..., env) # os.execlp(file, arg0, arg1, ...) # os.execlpe(file, arg0, arg1, ..., env) # os.execv(path, args) # os.execve(path, args, env) # os.execvp(file, args) # os.execvpe(file, args, env) monkey_patch_os('execl', create_execl) monkey_patch_os('execle', create_execl) monkey_patch_os('execlp', create_execl) monkey_patch_os('execlpe', create_execl) monkey_patch_os('execv', create_execv) monkey_patch_os('execve', create_execve) monkey_patch_os('execvp', create_execv) monkey_patch_os('execvpe', create_execve) # os.spawnl(mode, path, ...) # os.spawnle(mode, path, ..., env) # os.spawnlp(mode, file, ...) # os.spawnlpe(mode, file, ..., env) # os.spawnv(mode, path, args) # os.spawnve(mode, path, args, env) # os.spawnvp(mode, file, args) # os.spawnvpe(mode, file, args, env) monkey_patch_os('spawnl', create_spawnl) monkey_patch_os('spawnle', create_spawnl) monkey_patch_os('spawnlp', create_spawnl) monkey_patch_os('spawnlpe', create_spawnl) monkey_patch_os('spawnv', create_spawnv) monkey_patch_os('spawnve', create_spawnve) monkey_patch_os('spawnvp', create_spawnv) monkey_patch_os('spawnvpe', create_spawnve) if sys.platform != 'win32': monkey_patch_os('fork', create_fork) try: import _posixsubprocess monkey_patch_module(_posixsubprocess, 'fork_exec', create_fork_exec) except ImportError: pass else: # Windows try: import _subprocess except ImportError: import _winapi as _subprocess monkey_patch_module(_subprocess, 'CreateProcess', create_CreateProcess)