Source code for galaxy.jobs.runners.util.cli.shell

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

from abc import (
    ABCMeta,
    abstractmethod,
)


[docs]class BaseShellExec(metaclass=ABCMeta):
[docs] @abstractmethod def __init__(self, *args, **kwargs): """ Constructor for shell executor instance. """
[docs] @abstractmethod def execute(self, cmd, persist=False, timeout=60): """ Execute the specified command via defined shell. """