galaxy.jobs.runners.util.cli.shell package

Abstract base class for runners which execute commands via a shell.

class galaxy.jobs.runners.util.cli.shell.BaseShellExec(*args, **kwargs)[source]

Bases: object

__init__(*args, **kwargs)[source]

Constructor for shell executor instance.

execute(cmd, persist=False, timeout=60)[source]

Execute the specified command via defined shell.

Submodules

galaxy.jobs.runners.util.cli.shell.local module

class galaxy.jobs.runners.util.cli.shell.local.LocalShell(**kwds)[source]

Bases: galaxy.jobs.runners.util.cli.shell.BaseShellExec

>>> shell = LocalShell()
>>> def exec_python(script, **kwds): return shell.execute(['python', '-c', script], **kwds)
>>> exec_result = exec_python("from __future__ import print_function; print('Hello World')")
>>> exec_result.stderr == u''
True
>>> exec_result.stdout.strip() == u'Hello World'
True
>>> exec_result = exec_python("import time; time.sleep(90)", timeout=1, timeout_check_interval=.1)
>>> exec_result.stdout == u''
True
>>> exec_result.stderr == 'Execution timed out'
True
>>> exec_result.returncode == TIMEOUT_RETURN_CODE
True
>>> shell.execute('echo hi').stdout == "hi\n"
True
__init__(**kwds)[source]
execute(cmd, persist=False, timeout=60, timeout_check_interval=3, **kwds)[source]

galaxy.jobs.runners.util.cli.shell.rsh module

class galaxy.jobs.runners.util.cli.shell.rsh.RemoteShell(rsh='rsh', rcp='rcp', hostname='localhost', username=None, options=None, **kwargs)[source]

Bases: galaxy.jobs.runners.util.cli.shell.local.LocalShell

__init__(rsh='rsh', rcp='rcp', hostname='localhost', username=None, options=None, **kwargs)[source]
execute(cmd, persist=False, timeout=60)[source]
class galaxy.jobs.runners.util.cli.shell.rsh.SecureShell(rsh='ssh', rcp='scp', private_key=None, port=None, strict_host_key_checking=True, **kwargs)[source]

Bases: galaxy.jobs.runners.util.cli.shell.rsh.RemoteShell

SSH_NEW_KEY_STRING = 'Are you sure you want to continue connecting'
__init__(rsh='ssh', rcp='scp', private_key=None, port=None, strict_host_key_checking=True, **kwargs)[source]
class galaxy.jobs.runners.util.cli.shell.rsh.ParamikoShell(username, hostname, password=None, private_key=None, port=22, timeout=60, **kwargs)[source]

Bases: object

__init__(username, hostname, password=None, private_key=None, port=22, timeout=60, **kwargs)[source]
connect()[source]
execute(cmd, timeout=60)[source]
class galaxy.jobs.runners.util.cli.shell.rsh.GlobusSecureShell(rsh='gsissh', rcp='gsiscp', **kwargs)[source]

Bases: galaxy.jobs.runners.util.cli.shell.rsh.SecureShell

__init__(rsh='gsissh', rcp='gsiscp', **kwargs)[source]