diff --git a/.gitignore b/.gitignore
index 94c7db254a8..af1e077b749 100644
--- a/.gitignore
+++ b/.gitignore
@@ -144,4 +144,3 @@ doc/source/dev/schema.rst
*.rej
*~
.idea
-*.bak
diff --git a/config/workflow_resource_mapper_conf.yml.sample b/config/workflow_resource_mapper_conf.yml.sample
deleted file mode 100644
index 648dd09ddee..00000000000
--- a/config/workflow_resource_mapper_conf.yml.sample
+++ /dev/null
@@ -1,14 +0,0 @@
-by_group:
- default: default
- groups:
- default: [project, priority]
- prio_basic: [{name: priority, options: ["low", "med"]}]
- prio_advanced: [{name: priority, options: ["low", "med", "high"]}]
- prio_super:
- - time
- - memory
- - processors
- - name: priority
- options:
- - ultra
- - plus_ultra
diff --git a/config/workflow_resource_params_conf.xml.sample b/config/workflow_resource_params_conf.xml.sample
deleted file mode 100644
index c04d2909aa5..00000000000
--- a/config/workflow_resource_params_conf.xml.sample
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/lib/galaxy/jobs/mapper.py b/lib/galaxy/jobs/mapper.py
index bb26d802779..c9f8f0da874 100644
--- a/lib/galaxy/jobs/mapper.py
+++ b/lib/galaxy/jobs/mapper.py
@@ -137,11 +137,6 @@ class JobRunnerMapper(object):
workflow_invocation_uuid = param_values.get("__workflow_invocation_uuid__", None)
actual_args["workflow_invocation_uuid"] = workflow_invocation_uuid
- if "workflow_resource_params" in function_arg_names:
- param_values = job.raw_param_dict()
- workflow_resource_params = param_values.get("__workflow_resource_params__", None)
- actual_args["workflow_resource_params"] = workflow_resource_params
-
return expand_function(**actual_args)
def __job_params(self, job):
diff --git a/lib/galaxy/util/__init__.py b/lib/galaxy/util/__init__.py
index 4934de90d79..e9142c52980 100644
--- a/lib/galaxy/util/__init__.py
+++ b/lib/galaxy/util/__init__.py
@@ -817,22 +817,6 @@ def xml_text(root, name=None):
return ''
-def parse_resource_parameters(resource_param_file):
- """Code shared between jobs and workflows for reading resource parameter configuration files.
-
- TODO: Allow YAML in addition to XML.
- """
- resource_parameters = {}
- if os.path.exists(resource_param_file):
- resource_definitions = parse_xml(resource_param_file)
- resource_definitions_root = resource_definitions.getroot()
- for parameter_elem in resource_definitions_root.findall("param"):
- name = parameter_elem.get("name")
- resource_parameters[name] = parameter_elem
-
- return resource_parameters
-
-
# asbool implementation pulled from PasteDeploy
truthy = frozenset(['true', 'yes', 'on', 'y', 't', '1'])
falsy = frozenset(['false', 'no', 'off', 'n', 'f', '0'])
diff --git a/lib/galaxy/workflow/resources/__init__.py b/lib/galaxy/workflow/resources/__init__.py
deleted file mode 100644
index a9bf1d07320..00000000000
--- a/lib/galaxy/workflow/resources/__init__.py
+++ /dev/null
@@ -1,176 +0,0 @@
-"""This package is something a placeholder for workflow resource parameters.
-
-This file defines the baked in resource mapper types, and this package contains an
-example of a more open, pluggable approach with greater control.
-"""
-import functools
-import logging
-import os
-import sys
-from copy import deepcopy
-
-import yaml
-
-import galaxy.util
-
-log = logging.getLogger(__name__)
-
-
-def get_resource_mapper_function(app):
- config = app.config
- mapper = getattr(config, "workflow_resource_params_mapper", None)
-
- if mapper is None:
- return _null_mapper_function
- elif ":" in mapper:
- raw_function = _import_resource_mapping_function(mapper)
- # Bind resource parameters here just to not re-parse over and over.
- workflow_resource_params = _read_defined_parameter_definitions(config)
- return functools.partial(raw_function, workflow_resource_params=workflow_resource_params)
- else:
- workflow_resource_params = _read_defined_parameter_definitions(config)
- with open(mapper, "r") as f:
- mapper_definition = yaml.load(f)
-
- if "by_group" in mapper_definition:
- by_group = mapper_definition["by_group"]
- return functools.partial(_resource_parameters_by_group, by_group=by_group, workflow_resource_params=workflow_resource_params)
- else:
- raise Exception("Currently workflow parameter mapper definitions require a by_group definition.")
-
-
-def _read_defined_parameter_definitions(config):
- params_file = getattr(config, "workflow_resource_params_file", None)
- if not params_file or not os.path.exists(params_file):
- # Just re-use job resource parameters.
- params_file = getattr(config, "job_resource_params_file", None)
- if not params_file or not os.path.exists(params_file):
- params_file = None
- log.debug("Loading workflow resource parameter definitions from %s" % params_file)
- if params_file:
- return galaxy.util.parse_resource_parameters(params_file)
- else:
- return {}
-
-
-def _resource_parameters_by_group(trans, **kwds):
- user = trans.user
- by_group = kwds["by_group"]
- workflow_resource_params = kwds["workflow_resource_params"]
-
- params = []
- if validate_by_group_workflow_parameters_mapper(by_group, workflow_resource_params):
- user_permissions = {}
- user_groups = []
- for g in user.groups:
- user_groups.append(g.group.name)
- default_group = by_group.get('default', None)
- for group_name, group_def in by_group.get("groups", {}).items():
- if group_name == default_group or group_name in user_groups:
- for tag in group_def:
- if type(tag) is dict:
- if tag.get('name') not in user_permissions:
- user_permissions[tag.get('name')] = {}
- for option in tag.get('options'):
- user_permissions[tag.get('name')][option] = {}
- else:
- if tag not in user_permissions:
- user_permissions[tag] = {}
-
- # user_permissions is now set.
- params = get_workflow_parameter_list(workflow_resource_params, user_permissions)
- return params
-
-
-# returns an array of parameters that a users set of permissions can access.
-def get_workflow_parameter_list(params, user_permissions):
- param_list = []
- for param_name, param_elem in params.items():
- attr = deepcopy(param_elem.attrib)
- if attr['name'] in user_permissions:
- # Allow 'select' type parameters to be used
- if attr['type'] == 'select':
- option_data = []
- reject_list = []
- for option_elem in param_elem.findall("option"):
- if option_elem.attrib['value'] in user_permissions[attr['name']]:
- option_data.append({
- 'label': option_elem.attrib['label'],
- 'value': option_elem.attrib['value']
- })
- else:
- reject_list.append(option_elem.attrib['label'])
- attr['data'] = option_data
- attr_help = ""
- if 'help' in attr:
- attr_help = attr['help']
- if reject_list:
- attr_help += "
The following options are available but disabled. " + \
- str(reject_list) + \
- " If you believe this is a mistake, please contact your Galaxy admin."
- attr['help'] = attr_help
-
- param_list.append(attr)
- return param_list
-
-
-def validate_by_group_workflow_parameters_mapper(by_group, workflow_resource_params):
- valid = True
- try:
- if 'default' not in by_group:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, 'default' attribute not found!")
- default_group = by_group['default']
- if 'groups' not in by_group:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, 'groups' attribute not found!")
- if default_group not in by_group['groups']:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, default group with title '" +
- default_group + "' not found in 'groups'!")
- for group in by_group['groups']:
- for attrib in by_group['groups'][group]:
- if type(attrib) is dict:
- if 'name' not in attrib:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, "
- "'name' attribute not found in attribute of group '" + group + "'!")
- if attrib['name'] not in workflow_resource_params:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, group with name '" +
- attrib['name'] + "' not found in 'workflow_resource_params'!")
- if 'options' not in attrib:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, "
- "'options' attribute not found in attribute of group '" + group + "'!")
-
- valid_options = []
- for param_option in workflow_resource_params[attrib['name']]:
- valid_options.append(param_option.attrib['value'])
- for option in attrib['options']:
- if option not in valid_options:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, '" + option +
- "' in 'options' of '" + attrib['name'] + "' not found in attribute of group '" + group + "'!")
- else:
- if attrib not in workflow_resource_params:
- raise Exception("'workflow_resource_params_mapper' YAML file is malformed, attribute with name "
- "'" + attrib + "' not found in 'workflow_resource_params'!")
-
- except Exception as e:
- log.exception(e)
- valid = False
- pass
-
- return valid
-
-
-def _import_resource_mapping_function(qualified_function_path):
- full_module_name, function_name = qualified_function_path.split(":", 1)
- try:
- __import__(full_module_name)
- except ImportError:
- raise Exception("Failed to find workflow resource mapper module %s" % full_module_name)
-
- module = sys.modules[full_module_name]
- if hasattr(module, function_name):
- return getattr(module, function_name)
- else:
- raise Exception("Failed to find workflow resource mapper function %s.%s" % (full_module_name, function_name))
-
-
-def _null_mapper_function(*args, **kwds):
- return None
diff --git a/lib/galaxy/workflow/resources/example.py.sample b/lib/galaxy/workflow/resources/example.py.sample
deleted file mode 100644
index 51454600ec0..00000000000
--- a/lib/galaxy/workflow/resources/example.py.sample
+++ /dev/null
@@ -1,22 +0,0 @@
-import logging
-log = logging.getLogger( __name__ )
-
-
-def admin_mapping(trans, stored_workflow, **kwds):
- """
- This example workflow resource parameter mapping simply provides admins the ability to
- specify priorities for workflows. To enable this setup ``workflow_resource_params_file``
- in the Galaxy configuration with a priority definition input called "priority" (such
- as in the example), copy this file without the .sample extension, and set
- ``workflow_resource_params_mapper`` to ``galaxy.workflow.resources.example:admin_mapping``.
- """
- workflow_resource_params = kwds["workflow_resource_params"]
- if trans.user_is_admin():
- priority_attrib = workflow_resource_params.get("priority").attrib
- priority_attrib['data'] = []
- for child in workflow_resource_params.get('priority').getchildren():
- priority_attrib['data'].append(child.attrib)
- time_attrib = workflow_resource_params.get("time").attrib
- return [priority_attrib, time_attrib]
-
- return None