) from galaxy.tool_util.output_checker import DETECTED_JOB_STATE from galaxy.util import ( DATABASE_MAX_STRING_SIZE, ExecutionTimer, in_directory, ParamsWithSpecs, shrink_stream_by_size, unicodify, ) from galaxy.util.bunch import Bunch from galaxy.util.logging import get_logger from galaxy.util.monitors import Monitors from .state_handler_factory import build_state_handlers log = get_logger(__name__) STOP_SIGNAL = object() JOB_RUNNER_PARAMETER_UNKNOWN_MESSAGE = "Invalid job runner parameter for this plugin: %s" JOB_RUNNER_PARAMETER_MAP_PROBLEM_MESSAGE = "Job runner parameter '%s' value '%s' could not be converted to the correct type" JOB_RUNNER_PARAMETER_VALIDATION_FAILED_MESSAGE = "Job runner parameter %s failed validation" GALAXY_LIB_ADJUST_TEMPLATE = """GALAXY_LIB="%s"; if [ "$GALAXY_LIB" != "None" ]; then if [ -n "$PYTHONPATH" ]; then PYTHONPATH="$GALAXY_LIB:$PYTHONPATH"; else PYTHONPATH="$GALAXY_LIB"; fi; export PYTHONPATH; fi;""" GALAXY_VENV_TEMPLATE = """GALAXY_VIRTUAL_ENV="%s"; if [ "$GALAXY_VIRTUAL_ENV" != "None" -a -z "$VIRTUAL_ENV" -a -f "$GALAXY_VIRTUAL_ENV/bin/activate" ]; then . "$GALAXY_VIRTUAL_ENV/bin/activate"; fi;""" class RunnerParams(ParamsWithSpecs): def _param_unknown_error(self, name):
""" Actions to be run at job completion (or output hda creation, as in the case of immediate_actions listed below. Currently only used in workflows. """ import datetime import socket from markupsafe import escape from galaxy.util import send_mail from galaxy.util.logging import get_logger log = get_logger(__name__) class DefaultJobAction(object): """ Base job action. """ name = "DefaultJobAction" verbose_name = "Default Job" @classmethod def execute(cls, app, sa_session, action, job, replacement_dict=None): pass @classmethod def get_short_str(cls, pja): if pja.action_arguments: return "%s -> %s" % (pja.action_type, escape(pja.action_arguments)) else: