Question: Workflow import error - from release 16.07, to release 17.01
1
gravatar for matt.chambers42
18 months ago by
matt.chambers4250 wrote:

I'm trying to import workflows from a 16.07 instance to a 17.01 one. The tools are slightly different, so I'm getting a lovely Internal Server Error which tells me nothing. So I go to the log and find more detail that is almost, but not entirely, completely unhelpful:

129.114.104.5 - - [24/May/2017:12:13:47 -0500] "POST /workflow/import_workflow HTTP/1.0" 500 - "http://129.114.18.61/workflow/import_workflow" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"
Error - <type 'exceptions.KeyError'="">: 'input_opts'
URL: http://129.114.18.61/workflow/import_workflow
File '/opt/galaxy/galaxy-app/lib/galaxy/web/framework/middleware/error.py', line 154 in __call__
  app_iter = self.application(environ, sr_checker)
File '/opt/galaxy/galaxy-app/.venv/local/lib/python2.7/site-packages/paste/recursive.py', line 85 in __call__
  return self.application(environ, start_response)
File '/opt/galaxy/galaxy-app/.venv/local/lib/python2.7/site-packages/paste/httpexceptions.py', line 640 in __call__
  return self.application(environ, start_response)
File '/opt/galaxy/galaxy-app/lib/galaxy/web/framework/base.py', line 134 in __call__
  return self.handle_request( environ, start_response )
File '/opt/galaxy/galaxy-app/lib/galaxy/web/framework/base.py', line 193 in handle_request
  body = method( trans, **kwargs )
File '/opt/galaxy/galaxy-app/lib/galaxy/webapps/galaxy/controllers/workflow.py', line 956 in import_workflow
  workflow, missing_tool_tups = self._workflow_from_dict( trans, data, source=src, add_to_menu=add_to_menu )
File '/opt/galaxy/galaxy-app/lib/galaxy/web/base/controller.py', line 1180 in _workflow_from_dict
  exact_tools=exact_tools,
File '/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py', line 206 in build_workflow_from_dict
  exact_tools=exact_tools,
File '/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py', line 298 in _workflow_from_dict
  module, step = self.__track_module_from_dict( trans, steps, steps_by_external_id, step_dict, exact_tools=exact_tools )
File '/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py', line 850 in __track_module_from_dict
  module, step = self.__module_from_dict( trans, step_dict, exact_tools=exact_tools )
File '/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py', line 897 in __module_from_dict
  module.save_to_step( step )
File '/opt/galaxy/galaxy-app/lib/galaxy/workflow/modules.py', line 880 in save_to_step
  step.tool_inputs = self.tool.params_to_strings( self.state.inputs, self.trans.app )
File '/opt/galaxy/galaxy-app/lib/galaxy/tools/__init__.py', line 1378 in params_to_strings
  return params_to_strings( self.inputs, params, app )
File '/opt/galaxy/galaxy-app/lib/galaxy/tools/parameters/__init__.py', line 149 in params_to_strings
  value = params[ key ].value_to_basic( value, app )
File '/opt/galaxy/galaxy-app/lib/galaxy/tools/parameters/grouping.py', line 91 in value_to_basic
  rval_dict[ input.name ] = input.value_to_basic( d[input.name], app )
KeyError: 'input_opts'


CGI Variables
-------------
  CONTENT_LENGTH: '531'
  CONTENT_TYPE: 'multipart/form-data; boundary=----WebKitFormBoundary3FMOXG9DsshH6EHO'
  HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
  HTTP_ACCEPT_ENCODING: 'gzip, deflate'
  HTTP_ACCEPT_LANGUAGE: 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2'
  HTTP_CACHE_CONTROL: 'max-age=0'
  HTTP_CONNECTION: 'close'
  HTTP_COOKIE: 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a'
  HTTP_HOST: '129.114.18.61'
  HTTP_ORIGIN: 'http://129.114.18.61'
  HTTP_REFERER: 'http://129.114.18.61/workflow/import_workflow'
  HTTP_UPGRADE_INSECURE_REQUESTS: '1'
  HTTP_USER_AGENT: 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
  PATH_INFO: '/workflow/import_workflow'
  REMOTE_ADDR: '129.114.104.5'
  REQUEST_METHOD: 'POST'
  SERVER_NAME: '127.0.0.1'
  SERVER_PORT: '8080'
  SERVER_PROTOCOL: 'HTTP/1.0'


WSGI Variables
--------------
  application: <paste.recursive.RecursiveMiddleware object="" at="" 0x7f757f01bf90="">
  controller_action_key: u'web.workflow.import_workflow'
  is_api_request: False
  paste.cookies: (<SimpleCookie: galaxysession="c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a">, 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a')
  paste.expected_exceptions: [<class 'paste.httpexceptions.HTTPException'="">]
  paste.httpexceptions: <paste.httpexceptions.HTTPExceptionHandler object="" at="" 0x7f757f01bf10="">
  paste.httpserver.proxy.host: 'dummy'
  paste.httpserver.proxy.scheme: 'http'
  paste.httpserver.thread_pool: <paste.httpserver.ThreadPool object="" at="" 0x7f757fb1d210="">
  paste.recursive.forward: <paste.recursive.Forwarder from=""/>
  paste.recursive.include: <paste.recursive.Includer from=""/>
  paste.recursive.include_app_iter: <paste.recursive.IncluderAppIter from=""/>
  paste.recursive.script_name: ''
  paste.throw_errors: True
  request_id: '590675c640a411e78eacfa163e8ef98e'
  webob._body_file: (<_io.BufferedReader>, <socket._fileobject object="" at="" 0x7f758c077250="" length="531">)
  webob._parsed_post_vars: (MultiDict([('url', u'http://js-156-29.jetstream-cloud.org/u/chambm/w/human-sequence-database-search-variant-confirmation-jetstream-imported-from-uploaded-file/json'), ('file_data', u''), ('import_button', u'Import')]), <_io.BytesIO object at 0x7f7580124a10>)
  webob._parsed_query_vars: (GET([]), '')
  webob.is_body_seekable: True
  wsgi process: 'Multithreaded'
------------------------------------------------------------

Now, if I could see the argument values in the traceback instead of just the argument names, it should give me a strong idea about which part of the workflow is causing the problem. Apparently the inspect or cgitb modules in python will accomplish this, but I have no idea where to insert it so that it will take effect for the whole of Galaxy.

workflow import 17.01 galaxy 16.07 • 518 views
ADD COMMENTlink modified 18 months ago by Jennifer Hillman Jackson25k • written 18 months ago by matt.chambers4250

After a few false starts, I found that editing some code in lib/galaxy/web/framework/middleware/error.py achieved my desired effect. It is quite verbose because the workflow dictionary is huge, but it actually allowed me to pinpoint the problematic tool: Query to Tabular.

Here is the original error, cgitb style:

A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/opt/galaxy/galaxy-app/lib/galaxy/web/framework/middleware/error.py in __call__(self=<galaxy.web.framework.middleware.error.ErrorMiddleware object>, environ={'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}, start_response=<function replacement_start_response>)
153 __traceback_supplement__ = Supplement, self, environ
154 sr_checker = ResponseStartChecker(start_response)
155 app_iter = self.application(environ, sr_checker)
156 return self.make_catching_iter(app_iter, environ, sr_checker)
157 except:
app_iter undefined
self = <galaxy.web.framework.middleware.error.ErrorMiddleware object>
self.application = <paste.recursive.RecursiveMiddleware object>
environ = {'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}
sr_checker = <galaxy.web.framework.middleware.error.ResponseStartChecker object>
/opt/galaxy/galaxy-app/.venv/local/lib/python2.7/site-packages/paste/recursive.py in __call__(self=<paste.recursive.RecursiveMiddleware object>, environ={'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}, start_response=<galaxy.web.framework.middleware.error.ResponseStartChecker object>)
83 environ['paste.recursive.script_name'] = my_script_name
84 try:
85 return self.application(environ, start_response)
86 except ForwardRequestException as e:
87 middleware = CheckForRecursionMiddleware(
self = <paste.recursive.RecursiveMiddleware object>
self.application = <paste.httpexceptions.HTTPExceptionHandler object>
environ = {'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}
start_response = <galaxy.web.framework.middleware.error.ResponseStartChecker object>
/opt/galaxy/galaxy-app/.venv/local/lib/python2.7/site-packages/paste/httpexceptions.py in __call__(self=<paste.httpexceptions.HTTPExceptionHandler object>, environ={'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}, start_response=<galaxy.web.framework.middleware.error.ResponseStartChecker object>)
638 []).append(HTTPException)
639 try:
640 return self.application(environ, start_response)
641 except HTTPException as exc:
642 return exc(environ, start_response)
self = <paste.httpexceptions.HTTPExceptionHandler object>
self.application = <galaxy.webapps.galaxy.buildapp.GalaxyWebApplication object>
environ = {'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}
start_response = <galaxy.web.framework.middleware.error.ResponseStartChecker object>
/opt/galaxy/galaxy-app/lib/galaxy/web/framework/base.py in __call__(self=<galaxy.webapps.galaxy.buildapp.GalaxyWebApplication object>, environ={'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}, start_response=<galaxy.web.framework.middleware.error.ResponseStartChecker object>)
132 self.trace( message="Starting request" )
133 try:
134 return self.handle_request( environ, start_response )
135 finally:
136 self.trace( message="Handle request finished" )
self = <galaxy.webapps.galaxy.buildapp.GalaxyWebApplication object>
self.handle_request = <bound method GalaxyWebApplication.handle_reques...pps.galaxy.buildapp.GalaxyWebApplication object>>
environ = {'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}
start_response = <galaxy.web.framework.middleware.error.ResponseStartChecker object>
/opt/galaxy/galaxy-app/lib/galaxy/web/framework/base.py in handle_request(self=<galaxy.webapps.galaxy.buildapp.GalaxyWebApplication object>, environ={'CONTENT_LENGTH': '32889', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryX7pN5OBBmeRDvhU3', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4,so;q=0.2,hu;q=0.2', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'galaxysession=c6ca0ddb55be603a14cbe07075a87ab2ebb9de99b46f305bd035b4cf143e2201a77f6cdf42ac961a', 'HTTP_HOST': '129.114.18.61', 'HTTP_ORIGIN': 'http://129.114.18.61', ...}, start_response=<galaxy.web.framework.middleware.error.ResponseStartChecker object>, body_renderer=None)
191 kwargs.pop( '_', None )
192 try:
193 body = method( trans, **kwargs )
194 except Exception as e:
195 body = self.handle_controller_exception( e, trans, **kwargs )
body = None
method = <bound method WorkflowController.import_workflow....controllers.workflow.WorkflowController object>>
trans = <galaxy.web.framework.webapp.GalaxyWebTransaction object>
kwargs = {'file_data': FieldStorage('file_data', u'Galaxy-Workflow-Mous...earch_and_variant_confirmation_(iTRAQ4,_HCD).ga'), 'import_button': u'Import', 'url': u'http://js-156-29.jetstream-cloud.org/u/chambm/...ation-jetstream-imported-from-uploaded-file/json'}
/opt/galaxy/galaxy-app/lib/galaxy/webapps/galaxy/controllers/workflow.py in import_workflow(self=<galaxy.webapps.galaxy.controllers.workflow.WorkflowController object>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, cntrller='workflow', **kwd={'file_data': FieldStorage('file_data', u'Galaxy-Workflow-Mous...earch_and_variant_confirmation_(iTRAQ4,_HCD).ga'), 'import_button': u'Import', 'url': u'http://js-156-29.jetstream-cloud.org/u/chambm/...ation-jetstream-imported-from-uploaded-file/json'})
954 if cntrller != 'api':
955 src = workflow_source
956 workflow, missing_tool_tups = self._workflow_from_dict( trans, data, source=src, add_to_menu=add_to_menu )
957 workflow = workflow.latest_workflow
958 if workflow_name:
workflow undefined
missing_tool_tups undefined
self = <galaxy.webapps.galaxy.controllers.workflow.WorkflowController object>
self._workflow_from_dict = <bound method WorkflowController._workflow_from_....controllers.workflow.WorkflowController object>>
trans = <galaxy.web.framework.webapp.GalaxyWebTransaction object>
data = {u'a_galaxy_workflow': u'true', u'annotation': u'', u'format-version': u'0.1', u'name': u'Human sequence database search and variant confirmation (label-free, CID)', u'steps': {u'0': {u'annotation': u'', u'content_id': None, u'id': 0, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'Input protein FASTA'}], u'label': None, u'name': u'Input dataset', u'outputs': [], u'position': {u'left': 269, u'top': 200}, u'tool_errors': None, ...}, u'1': {u'annotation': u'', u'content_id': None, u'id': 1, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'MGF Files (Dataset Collection) - Experimental Data'}], u'label': None, u'name': u'Input dataset collection', u'outputs': [], u'position': {u'left': 216, u'top': 285.5}, u'tool_errors': None, ...}, u'10': {u'annotation': u'', u'content_id': u'Cut1', u'id': 10, u'input_connections': {u'input': {u'id': 9, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Cut', u'name': u'input'}], u'label': None, u'name': u'Cut', u'outputs': [{u'name': u'out_file1', u'type': u'tabular'}], u'position': {u'left': 2025.5, u'top': 1084.5}, u'post_job_actions': {u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-novel-peptides'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'2': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/search_gui/3.1.4.1', u'id': 2, u'input_connections': {u'input_database': {u'id': 0, u'output_name': u'output'}, u'peak_lists': {u'id': 1, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Search GUI', u'name': u'peak_lists'}, {u'description': u'runtime parameter for tool Search GUI', u'name': u'input_database'}], u'label': None, u'name': u'Search GUI', u'outputs': [{u'name': u'searchgui_results', u'type': u'searchgui_archive'}], u'position': {u'left': 507.5, u'top': 187.5}, u'post_job_actions': {u'RenameDatasetActionsearchgui_results': {u'action_arguments': {u'newname': u'#{peak_lists|basename}-#{input_database|basename}.searchgui-zip'}, u'action_type': u'RenameDatasetAction', u'output_name': u'searchgui_results'}}, ...}, u'3': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/peptide_shaker/1.16.0', u'id': 3, u'input_connections': {u'searchgui_input': {u'id': 2, u'output_name': u'searchgui_results'}}, u'inputs': [{u'description': u'runtime parameter for tool Peptide Shaker', u'name': u'searchgui_input'}], u'label': None, u'name': u'Peptide Shaker', u'outputs': [{u'name': u'mzidentML', u'type': u'mzid'}, {u'name': u'output_cps', u'type': u'peptideshaker_archive'}, {u'name': u'output_zip', u'type': u'zip'}, {u'name': u'output_certificate', u'type': u'txt'}, {u'name': u'output_hierarchical', u'type': u'tabular'}, {u'name': u'output_psm_phosphorylation', u'type': u'tabular'}, {u'name': u'output_psm', u'type': u'tabular'}, {u'name': u'output_extended_psm', u'type': u'tabular'}, {u'name': u'output_peptides_phosphorylation', u'type': u'tabular'}, {u'name': u'output_peptides', u'type': u'tabular'}, {u'name': u'output_proteins_phosphorylation', u'type': u'tabular'}, {u'name': u'output_proteins', u'type': u'tabular'}], u'position': {u'left': 560, u'top': 351}, u'post_job_actions': {u'HideDatasetActionmzidentML': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'mzidentML'}, u'HideDatasetActionoutput_certificate': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_certificate'}, u'HideDatasetActionoutput_cps': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_cps'}, u'HideDatasetActionoutput_extended_psm': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_extended_psm'}, u'HideDatasetActionoutput_hierarchical': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_hierarchical'}, u'HideDatasetActionoutput_peptides': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides'}, u'HideDatasetActionoutput_peptides_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides_phosphorylation'}, u'HideDatasetActionoutput_proteins': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins'}, u'HideDatasetActionoutput_proteins_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins_phosphorylation'}, u'HideDatasetActionoutput_psm_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_psm_phosphorylation'}, ...}, ...}, u'4': {u'annotation': u'', u'content_id': u'Grep1', u'id': 4, u'input_connections': {u'input': {u'id': 3, u'output_name': u'output_psm'}}, u'inputs': [{u'description': u'runtime parameter for tool Select', u'name': u'input'}], u'label': None, u'name': u'Select', u'outputs': [{u'name': u'out_file1', u'type': u'input'}], u'position': {u'left': 853.875, u'top': 558.5}, u'post_job_actions': {u'HideDatasetActionout_file1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'out_file1'}, u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.variant-psms'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'5': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'6': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/tabular_to_fasta/tab2fasta/1.1.0', u'id': 6, u'input_connections': {u'input': {u'id': 5, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Tabular-to-FASTA', u'name': u'input'}], u'label': None, u'name': u'Tabular-to-FASTA', u'outputs': [{u'name': u'output', u'type': u'fasta'}], u'position': {u'left': 1311.5, u'top': 747.5}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-query-peptides-fasta'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'7': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastp_wrapper/0.1.08', u'id': 7, u'input_connections': {u'query': {u'id': 6, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool NCBI BLAST+ blastp', u'name': u'query'}], u'label': None, u'name': u'NCBI BLAST+ blastp', u'outputs': [{u'name': u'output1', u'type': u'tabular'}], u'position': {u'left': 1488.515625, u'top': 853.515625}, u'post_job_actions': {u'HideDatasetActionoutput1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output1'}, u'RenameDatasetActionoutput1': {u'action_arguments': {u'newname': u'#{query|basename}.blastp-xml'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output1'}}, ...}, u'8': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/blastxml_..._selectable/blastxml_to_tabular_selectable/1.0.0', u'id': 8, u'input_connections': {u'blastxml_file': {u'id': 7, u'output_name': u'output1'}}, u'inputs': [{u'description': u'runtime parameter for tool BLAST XML to selected tabular columns', u'name': u'blastxml_file'}], u'label': None, u'name': u'BLAST XML to selected tabular columns', u'outputs': [{u'name': u'tabular_file', u'type': u'tabular'}, {u'name': u'unmatched_file', u'type': u'tabular'}], u'position': {u'left': 1773.5, u'top': 869.5}, u'post_job_actions': {u'HideDatasetActiontabular_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'tabular_file'}, u'HideDatasetActionunmatched_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'unmatched_file'}, u'RenameDatasetActiontabular_file': {u'action_arguments': {u'newname': u'#{blastxml_file|basename}.blastp-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'tabular_file'}}, ...}, ...}, u'uuid': u'3cf88b54-27db-4aa6-9289-9a3697cc20be'}
source undefined
src = 'uploaded file'
add_to_menu = False
/opt/galaxy/galaxy-app/lib/galaxy/web/base/controller.py in _workflow_from_dict(self=<galaxy.webapps.galaxy.controllers.workflow.WorkflowController object>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, data={u'a_galaxy_workflow': u'true', u'annotation': u'', u'format-version': u'0.1', u'name': u'Human sequence database search and variant confirmation (label-free, CID)', u'steps': {u'0': {u'annotation': u'', u'content_id': None, u'id': 0, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'Input protein FASTA'}], u'label': None, u'name': u'Input dataset', u'outputs': [], u'position': {u'left': 269, u'top': 200}, u'tool_errors': None, ...}, u'1': {u'annotation': u'', u'content_id': None, u'id': 1, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'MGF Files (Dataset Collection) - Experimental Data'}], u'label': None, u'name': u'Input dataset collection', u'outputs': [], u'position': {u'left': 216, u'top': 285.5}, u'tool_errors': None, ...}, u'10': {u'annotation': u'', u'content_id': u'Cut1', u'id': 10, u'input_connections': {u'input': {u'id': 9, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Cut', u'name': u'input'}], u'label': None, u'name': u'Cut', u'outputs': [{u'name': u'out_file1', u'type': u'tabular'}], u'position': {u'left': 2025.5, u'top': 1084.5}, u'post_job_actions': {u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-novel-peptides'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'2': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/search_gui/3.1.4.1', u'id': 2, u'input_connections': {u'input_database': {u'id': 0, u'output_name': u'output'}, u'peak_lists': {u'id': 1, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Search GUI', u'name': u'peak_lists'}, {u'description': u'runtime parameter for tool Search GUI', u'name': u'input_database'}], u'label': None, u'name': u'Search GUI', u'outputs': [{u'name': u'searchgui_results', u'type': u'searchgui_archive'}], u'position': {u'left': 507.5, u'top': 187.5}, u'post_job_actions': {u'RenameDatasetActionsearchgui_results': {u'action_arguments': {u'newname': u'#{peak_lists|basename}-#{input_database|basename}.searchgui-zip'}, u'action_type': u'RenameDatasetAction', u'output_name': u'searchgui_results'}}, ...}, u'3': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/peptide_shaker/1.16.0', u'id': 3, u'input_connections': {u'searchgui_input': {u'id': 2, u'output_name': u'searchgui_results'}}, u'inputs': [{u'description': u'runtime parameter for tool Peptide Shaker', u'name': u'searchgui_input'}], u'label': None, u'name': u'Peptide Shaker', u'outputs': [{u'name': u'mzidentML', u'type': u'mzid'}, {u'name': u'output_cps', u'type': u'peptideshaker_archive'}, {u'name': u'output_zip', u'type': u'zip'}, {u'name': u'output_certificate', u'type': u'txt'}, {u'name': u'output_hierarchical', u'type': u'tabular'}, {u'name': u'output_psm_phosphorylation', u'type': u'tabular'}, {u'name': u'output_psm', u'type': u'tabular'}, {u'name': u'output_extended_psm', u'type': u'tabular'}, {u'name': u'output_peptides_phosphorylation', u'type': u'tabular'}, {u'name': u'output_peptides', u'type': u'tabular'}, {u'name': u'output_proteins_phosphorylation', u'type': u'tabular'}, {u'name': u'output_proteins', u'type': u'tabular'}], u'position': {u'left': 560, u'top': 351}, u'post_job_actions': {u'HideDatasetActionmzidentML': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'mzidentML'}, u'HideDatasetActionoutput_certificate': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_certificate'}, u'HideDatasetActionoutput_cps': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_cps'}, u'HideDatasetActionoutput_extended_psm': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_extended_psm'}, u'HideDatasetActionoutput_hierarchical': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_hierarchical'}, u'HideDatasetActionoutput_peptides': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides'}, u'HideDatasetActionoutput_peptides_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides_phosphorylation'}, u'HideDatasetActionoutput_proteins': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins'}, u'HideDatasetActionoutput_proteins_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins_phosphorylation'}, u'HideDatasetActionoutput_psm_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_psm_phosphorylation'}, ...}, ...}, u'4': {u'annotation': u'', u'content_id': u'Grep1', u'id': 4, u'input_connections': {u'input': {u'id': 3, u'output_name': u'output_psm'}}, u'inputs': [{u'description': u'runtime parameter for tool Select', u'name': u'input'}], u'label': None, u'name': u'Select', u'outputs': [{u'name': u'out_file1', u'type': u'input'}], u'position': {u'left': 853.875, u'top': 558.5}, u'post_job_actions': {u'HideDatasetActionout_file1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'out_file1'}, u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.variant-psms'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'5': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'6': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/tabular_to_fasta/tab2fasta/1.1.0', u'id': 6, u'input_connections': {u'input': {u'id': 5, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Tabular-to-FASTA', u'name': u'input'}], u'label': None, u'name': u'Tabular-to-FASTA', u'outputs': [{u'name': u'output', u'type': u'fasta'}], u'position': {u'left': 1311.5, u'top': 747.5}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-query-peptides-fasta'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'7': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastp_wrapper/0.1.08', u'id': 7, u'input_connections': {u'query': {u'id': 6, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool NCBI BLAST+ blastp', u'name': u'query'}], u'label': None, u'name': u'NCBI BLAST+ blastp', u'outputs': [{u'name': u'output1', u'type': u'tabular'}], u'position': {u'left': 1488.515625, u'top': 853.515625}, u'post_job_actions': {u'HideDatasetActionoutput1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output1'}, u'RenameDatasetActionoutput1': {u'action_arguments': {u'newname': u'#{query|basename}.blastp-xml'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output1'}}, ...}, u'8': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/blastxml_..._selectable/blastxml_to_tabular_selectable/1.0.0', u'id': 8, u'input_connections': {u'blastxml_file': {u'id': 7, u'output_name': u'output1'}}, u'inputs': [{u'description': u'runtime parameter for tool BLAST XML to selected tabular columns', u'name': u'blastxml_file'}], u'label': None, u'name': u'BLAST XML to selected tabular columns', u'outputs': [{u'name': u'tabular_file', u'type': u'tabular'}, {u'name': u'unmatched_file', u'type': u'tabular'}], u'position': {u'left': 1773.5, u'top': 869.5}, u'post_job_actions': {u'HideDatasetActiontabular_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'tabular_file'}, u'HideDatasetActionunmatched_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'unmatched_file'}, u'RenameDatasetActiontabular_file': {u'action_arguments': {u'newname': u'#{blastxml_file|basename}.blastp-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'tabular_file'}}, ...}, ...}, u'uuid': u'3cf88b54-27db-4aa6-9289-9a3697cc20be'}, source='uploaded file', add_to_menu=False, publish=False, exact_tools=False)
1178 add_to_menu=add_to_menu,
1179 publish=publish,
1180 exact_tools=exact_tools,
1181 )
1182 return created_workflow.stored_workflow, created_workflow.missing_tools
exact_tools = False
/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py in build_workflow_from_dict(self=<galaxy.managers.workflows.WorkflowContentsManager instance>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, data={u'a_galaxy_workflow': u'true', u'annotation': u'', u'format-version': u'0.1', u'name': u'Human sequence database search and variant confirmation (label-free, CID)', u'steps': {u'0': {u'annotation': u'', u'content_id': None, u'id': 0, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'Input protein FASTA'}], u'label': None, u'name': u'Input dataset', u'outputs': [], u'position': {u'left': 269, u'top': 200}, u'tool_errors': None, ...}, u'1': {u'annotation': u'', u'content_id': None, u'id': 1, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'MGF Files (Dataset Collection) - Experimental Data'}], u'label': None, u'name': u'Input dataset collection', u'outputs': [], u'position': {u'left': 216, u'top': 285.5}, u'tool_errors': None, ...}, u'10': {u'annotation': u'', u'content_id': u'Cut1', u'id': 10, u'input_connections': {u'input': {u'id': 9, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Cut', u'name': u'input'}], u'label': None, u'name': u'Cut', u'outputs': [{u'name': u'out_file1', u'type': u'tabular'}], u'position': {u'left': 2025.5, u'top': 1084.5}, u'post_job_actions': {u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-novel-peptides'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'2': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/search_gui/3.1.4.1', u'id': 2, u'input_connections': {u'input_database': {u'id': 0, u'output_name': u'output'}, u'peak_lists': {u'id': 1, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Search GUI', u'name': u'peak_lists'}, {u'description': u'runtime parameter for tool Search GUI', u'name': u'input_database'}], u'label': None, u'name': u'Search GUI', u'outputs': [{u'name': u'searchgui_results', u'type': u'searchgui_archive'}], u'position': {u'left': 507.5, u'top': 187.5}, u'post_job_actions': {u'RenameDatasetActionsearchgui_results': {u'action_arguments': {u'newname': u'#{peak_lists|basename}-#{input_database|basename}.searchgui-zip'}, u'action_type': u'RenameDatasetAction', u'output_name': u'searchgui_results'}}, ...}, u'3': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/peptide_shaker/1.16.0', u'id': 3, u'input_connections': {u'searchgui_input': {u'id': 2, u'output_name': u'searchgui_results'}}, u'inputs': [{u'description': u'runtime parameter for tool Peptide Shaker', u'name': u'searchgui_input'}], u'label': None, u'name': u'Peptide Shaker', u'outputs': [{u'name': u'mzidentML', u'type': u'mzid'}, {u'name': u'output_cps', u'type': u'peptideshaker_archive'}, {u'name': u'output_zip', u'type': u'zip'}, {u'name': u'output_certificate', u'type': u'txt'}, {u'name': u'output_hierarchical', u'type': u'tabular'}, {u'name': u'output_psm_phosphorylation', u'type': u'tabular'}, {u'name': u'output_psm', u'type': u'tabular'}, {u'name': u'output_extended_psm', u'type': u'tabular'}, {u'name': u'output_peptides_phosphorylation', u'type': u'tabular'}, {u'name': u'output_peptides', u'type': u'tabular'}, {u'name': u'output_proteins_phosphorylation', u'type': u'tabular'}, {u'name': u'output_proteins', u'type': u'tabular'}], u'position': {u'left': 560, u'top': 351}, u'post_job_actions': {u'HideDatasetActionmzidentML': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'mzidentML'}, u'HideDatasetActionoutput_certificate': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_certificate'}, u'HideDatasetActionoutput_cps': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_cps'}, u'HideDatasetActionoutput_extended_psm': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_extended_psm'}, u'HideDatasetActionoutput_hierarchical': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_hierarchical'}, u'HideDatasetActionoutput_peptides': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides'}, u'HideDatasetActionoutput_peptides_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides_phosphorylation'}, u'HideDatasetActionoutput_proteins': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins'}, u'HideDatasetActionoutput_proteins_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins_phosphorylation'}, u'HideDatasetActionoutput_psm_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_psm_phosphorylation'}, ...}, ...}, u'4': {u'annotation': u'', u'content_id': u'Grep1', u'id': 4, u'input_connections': {u'input': {u'id': 3, u'output_name': u'output_psm'}}, u'inputs': [{u'description': u'runtime parameter for tool Select', u'name': u'input'}], u'label': None, u'name': u'Select', u'outputs': [{u'name': u'out_file1', u'type': u'input'}], u'position': {u'left': 853.875, u'top': 558.5}, u'post_job_actions': {u'HideDatasetActionout_file1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'out_file1'}, u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.variant-psms'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'5': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'6': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/tabular_to_fasta/tab2fasta/1.1.0', u'id': 6, u'input_connections': {u'input': {u'id': 5, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Tabular-to-FASTA', u'name': u'input'}], u'label': None, u'name': u'Tabular-to-FASTA', u'outputs': [{u'name': u'output', u'type': u'fasta'}], u'position': {u'left': 1311.5, u'top': 747.5}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-query-peptides-fasta'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'7': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastp_wrapper/0.1.08', u'id': 7, u'input_connections': {u'query': {u'id': 6, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool NCBI BLAST+ blastp', u'name': u'query'}], u'label': None, u'name': u'NCBI BLAST+ blastp', u'outputs': [{u'name': u'output1', u'type': u'tabular'}], u'position': {u'left': 1488.515625, u'top': 853.515625}, u'post_job_actions': {u'HideDatasetActionoutput1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output1'}, u'RenameDatasetActionoutput1': {u'action_arguments': {u'newname': u'#{query|basename}.blastp-xml'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output1'}}, ...}, u'8': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/blastxml_..._selectable/blastxml_to_tabular_selectable/1.0.0', u'id': 8, u'input_connections': {u'blastxml_file': {u'id': 7, u'output_name': u'output1'}}, u'inputs': [{u'description': u'runtime parameter for tool BLAST XML to selected tabular columns', u'name': u'blastxml_file'}], u'label': None, u'name': u'BLAST XML to selected tabular columns', u'outputs': [{u'name': u'tabular_file', u'type': u'tabular'}, {u'name': u'unmatched_file', u'type': u'tabular'}], u'position': {u'left': 1773.5, u'top': 869.5}, u'post_job_actions': {u'HideDatasetActiontabular_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'tabular_file'}, u'HideDatasetActionunmatched_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'unmatched_file'}, u'RenameDatasetActiontabular_file': {u'action_arguments': {u'newname': u'#{blastxml_file|basename}.blastp-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'tabular_file'}}, ...}, ...}, u'uuid': u'3cf88b54-27db-4aa6-9289-9a3697cc20be'}, source='uploaded file', add_to_menu=False, publish=False, create_stored_workflow=True, exact_tools=False)
204 data,
205 name=name,
206 exact_tools=exact_tools,
207 )
208 if 'uuid' in data:
exact_tools = False
/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py in _workflow_from_dict(self=<galaxy.managers.workflows.WorkflowContentsManager instance>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, data={u'a_galaxy_workflow': u'true', u'annotation': u'', u'format-version': u'0.1', u'name': u'Human sequence database search and variant confirmation (label-free, CID)', u'steps': {u'0': {u'annotation': u'', u'content_id': None, u'id': 0, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'Input protein FASTA'}], u'label': None, u'name': u'Input dataset', u'outputs': [], u'position': {u'left': 269, u'top': 200}, u'tool_errors': None, ...}, u'1': {u'annotation': u'', u'content_id': None, u'id': 1, u'input_connections': {}, u'inputs': [{u'description': u'', u'name': u'MGF Files (Dataset Collection) - Experimental Data'}], u'label': None, u'name': u'Input dataset collection', u'outputs': [], u'position': {u'left': 216, u'top': 285.5}, u'tool_errors': None, ...}, u'10': {u'annotation': u'', u'content_id': u'Cut1', u'id': 10, u'input_connections': {u'input': {u'id': 9, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Cut', u'name': u'input'}], u'label': None, u'name': u'Cut', u'outputs': [{u'name': u'out_file1', u'type': u'tabular'}], u'position': {u'left': 2025.5, u'top': 1084.5}, u'post_job_actions': {u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-novel-peptides'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'2': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/search_gui/3.1.4.1', u'id': 2, u'input_connections': {u'input_database': {u'id': 0, u'output_name': u'output'}, u'peak_lists': {u'id': 1, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Search GUI', u'name': u'peak_lists'}, {u'description': u'runtime parameter for tool Search GUI', u'name': u'input_database'}], u'label': None, u'name': u'Search GUI', u'outputs': [{u'name': u'searchgui_results', u'type': u'searchgui_archive'}], u'position': {u'left': 507.5, u'top': 187.5}, u'post_job_actions': {u'RenameDatasetActionsearchgui_results': {u'action_arguments': {u'newname': u'#{peak_lists|basename}-#{input_database|basename}.searchgui-zip'}, u'action_type': u'RenameDatasetAction', u'output_name': u'searchgui_results'}}, ...}, u'3': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/peptideshaker/peptide_shaker/1.16.0', u'id': 3, u'input_connections': {u'searchgui_input': {u'id': 2, u'output_name': u'searchgui_results'}}, u'inputs': [{u'description': u'runtime parameter for tool Peptide Shaker', u'name': u'searchgui_input'}], u'label': None, u'name': u'Peptide Shaker', u'outputs': [{u'name': u'mzidentML', u'type': u'mzid'}, {u'name': u'output_cps', u'type': u'peptideshaker_archive'}, {u'name': u'output_zip', u'type': u'zip'}, {u'name': u'output_certificate', u'type': u'txt'}, {u'name': u'output_hierarchical', u'type': u'tabular'}, {u'name': u'output_psm_phosphorylation', u'type': u'tabular'}, {u'name': u'output_psm', u'type': u'tabular'}, {u'name': u'output_extended_psm', u'type': u'tabular'}, {u'name': u'output_peptides_phosphorylation', u'type': u'tabular'}, {u'name': u'output_peptides', u'type': u'tabular'}, {u'name': u'output_proteins_phosphorylation', u'type': u'tabular'}, {u'name': u'output_proteins', u'type': u'tabular'}], u'position': {u'left': 560, u'top': 351}, u'post_job_actions': {u'HideDatasetActionmzidentML': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'mzidentML'}, u'HideDatasetActionoutput_certificate': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_certificate'}, u'HideDatasetActionoutput_cps': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_cps'}, u'HideDatasetActionoutput_extended_psm': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_extended_psm'}, u'HideDatasetActionoutput_hierarchical': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_hierarchical'}, u'HideDatasetActionoutput_peptides': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides'}, u'HideDatasetActionoutput_peptides_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_peptides_phosphorylation'}, u'HideDatasetActionoutput_proteins': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins'}, u'HideDatasetActionoutput_proteins_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_proteins_phosphorylation'}, u'HideDatasetActionoutput_psm_phosphorylation': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output_psm_phosphorylation'}, ...}, ...}, u'4': {u'annotation': u'', u'content_id': u'Grep1', u'id': 4, u'input_connections': {u'input': {u'id': 3, u'output_name': u'output_psm'}}, u'inputs': [{u'description': u'runtime parameter for tool Select', u'name': u'input'}], u'label': None, u'name': u'Select', u'outputs': [{u'name': u'out_file1', u'type': u'input'}], u'position': {u'left': 853.875, u'top': 558.5}, u'post_job_actions': {u'HideDatasetActionout_file1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'out_file1'}, u'RenameDatasetActionout_file1': {u'action_arguments': {u'newname': u'#{input|basename}.variant-psms'}, u'action_type': u'RenameDatasetAction', u'output_name': u'out_file1'}}, ...}, u'5': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'6': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/tabular_to_fasta/tab2fasta/1.1.0', u'id': 6, u'input_connections': {u'input': {u'id': 5, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool Tabular-to-FASTA', u'name': u'input'}], u'label': None, u'name': u'Tabular-to-FASTA', u'outputs': [{u'name': u'output', u'type': u'fasta'}], u'position': {u'left': 1311.5, u'top': 747.5}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{input|basename}.blastp-query-peptides-fasta'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, u'7': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastp_wrapper/0.1.08', u'id': 7, u'input_connections': {u'query': {u'id': 6, u'output_name': u'output'}}, u'inputs': [{u'description': u'runtime parameter for tool NCBI BLAST+ blastp', u'name': u'query'}], u'label': None, u'name': u'NCBI BLAST+ blastp', u'outputs': [{u'name': u'output1', u'type': u'tabular'}], u'position': {u'left': 1488.515625, u'top': 853.515625}, u'post_job_actions': {u'HideDatasetActionoutput1': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output1'}, u'RenameDatasetActionoutput1': {u'action_arguments': {u'newname': u'#{query|basename}.blastp-xml'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output1'}}, ...}, u'8': {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/galaxyp/blastxml_..._selectable/blastxml_to_tabular_selectable/1.0.0', u'id': 8, u'input_connections': {u'blastxml_file': {u'id': 7, u'output_name': u'output1'}}, u'inputs': [{u'description': u'runtime parameter for tool BLAST XML to selected tabular columns', u'name': u'blastxml_file'}], u'label': None, u'name': u'BLAST XML to selected tabular columns', u'outputs': [{u'name': u'tabular_file', u'type': u'tabular'}, {u'name': u'unmatched_file', u'type': u'tabular'}], u'position': {u'left': 1773.5, u'top': 869.5}, u'post_job_actions': {u'HideDatasetActiontabular_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'tabular_file'}, u'HideDatasetActionunmatched_file': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'unmatched_file'}, u'RenameDatasetActiontabular_file': {u'action_arguments': {u'newname': u'#{blastxml_file|basename}.blastp-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'tabular_file'}}, ...}, ...}, u'uuid': u'3cf88b54-27db-4aa6-9289-9a3697cc20be'}, name=u'Human sequence database search and variant con... (label-free, CID) (imported from uploaded file)', exact_tools=False)
296
297 for step_dict in self.__walk_step_dicts( data ):
298 module, step = self.__track_module_from_dict( trans, steps, steps_by_external_id, step_dict, exact_tools=exact_tools )
299 is_tool = is_tool_module_type( module.type )
300 if is_tool and module.tool is None:
module = <galaxy.workflow.modules.ToolModule object>
step = <galaxy.model.WorkflowStep object>
self = <galaxy.managers.workflows.WorkflowContentsManager instance>
self.__track_module_from_dict undefined
trans = <galaxy.web.framework.webapp.GalaxyWebTransaction object>
steps = [<galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>]
steps_by_external_id = {0: <galaxy.model.WorkflowStep object>, 1: <galaxy.model.WorkflowStep object>, 2: <galaxy.model.WorkflowStep object>, 3: <galaxy.model.WorkflowStep object>, 4: <galaxy.model.WorkflowStep object>}
step_dict = {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}
exact_tools = False
/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py in __track_module_from_dict(self=<galaxy.managers.workflows.WorkflowContentsManager instance>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, steps=[<galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>, <galaxy.model.WorkflowStep object>], steps_by_external_id={0: <galaxy.model.WorkflowStep object>, 1: <galaxy.model.WorkflowStep object>, 2: <galaxy.model.WorkflowStep object>, 3: <galaxy.model.WorkflowStep object>, 4: <galaxy.model.WorkflowStep object>}, step_dict={u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, exact_tools=False)
848
849 def __track_module_from_dict( self, trans, steps, steps_by_external_id, step_dict, exact_tools=False ):
850 module, step = self.__module_from_dict( trans, step_dict, exact_tools=exact_tools )
851 # Create the model class for the step
852 steps.append( step )
module undefined
step undefined
self = <galaxy.managers.workflows.WorkflowContentsManager instance>
self.__module_from_dict undefined
trans = <galaxy.web.framework.webapp.GalaxyWebTransaction object>
step_dict = {u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}
exact_tools = False
/opt/galaxy/galaxy-app/lib/galaxy/managers/workflows.py in __module_from_dict(self=<galaxy.managers.workflows.WorkflowContentsManager instance>, trans=<galaxy.web.framework.webapp.GalaxyWebTransaction object>, step_dict={u'annotation': u'', u'content_id': u'toolshed.g2.bx.psu.edu/repos/jjohnson/query_tabular/query_tabular/0.1.3', u'id': 5, u'input_connections': {u'tables_0|table': {u'id': 4, u'output_name': u'out_file1'}}, u'inputs': [], u'label': None, u'name': u'Query Tabular', u'outputs': [{u'name': u'sqlitedb', u'type': u'sqlite'}, {u'name': u'output', u'type': u'tabular'}], u'position': {u'left': 978, u'top': 688}, u'post_job_actions': {u'HideDatasetActionoutput': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'output'}, u'HideDatasetActionsqlitedb': {u'action_arguments': {}, u'action_type': u'HideDatasetAction', u'output_name': u'sqlitedb'}, u'RenameDatasetActionoutput': {u'action_arguments': {u'newname': u'#{tables_0.table|basename}.blastp-query-peptides-tsv'}, u'action_type': u'RenameDatasetAction', u'output_name': u'output'}}, ...}, exact_tools=False)
895
896 module = module_factory.from_dict( trans, step_dict, exact_tools=exact_tools )
897 module.save_to_step( step )
898
899 annotation = step_dict[ 'annotation' ]
module = <galaxy.workflow.modules.ToolModule object>
module.save_to_step = <bound method ToolModule.save_to_step of <galaxy.workflow.modules.ToolModule object>>
step = <galaxy.model.WorkflowStep object>
/opt/galaxy/galaxy-app/lib/galaxy/workflow/modules.py in save_to_step(self=<galaxy.workflow.modules.ToolModule object>, step=<galaxy.model.WorkflowStep object>)
878 if self.tool:
879 step.tool_version = self.get_tool_version()
880 step.tool_inputs = self.tool.params_to_strings( self.state.inputs, self.trans.app )
881 else:
882 step.tool_version = None
step = <galaxy.model.WorkflowStep object>
step.tool_inputs = None
self = <galaxy.workflow.modules.ToolModule object>
self.tool = <galaxy.tools.Tool object>
self.tool.params_to_strings = <bound method Tool.params_to_strings of <galaxy.tools.Tool object>>
self.state = <galaxy.tools.DefaultToolState object>
self.state.inputs = {'no_header': False, 'save_db': False, 'sqlquery': "SELECT Sequence || ' PSM=' || group_concat(id,',...P BY Sequence \nORDER BY length(Sequence),Sequence", 'tables': [{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}], 'workdb': 'workdb.sqlite'}
self.trans = <galaxy.web.framework.webapp.GalaxyWebTransaction object>
self.trans.app = <galaxy.app.UniverseApplication object>
/opt/galaxy/galaxy-app/lib/galaxy/tools/__init__.py in params_to_strings(self=<galaxy.tools.Tool object>, params={'no_header': False, 'save_db': False, 'sqlquery': "SELECT Sequence || ' PSM=' || group_concat(id,',...P BY Sequence \nORDER BY length(Sequence),Sequence", 'tables': [{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}], 'workdb': 'workdb.sqlite'}, app=<galaxy.app.UniverseApplication object>)
1376
1377 def params_to_strings( self, params, app ):
1378 return params_to_strings( self.inputs, params, app )
1379
1380 def params_from_strings( self, params, app, ignore_errors=False ):
global params_to_strings = <function params_to_strings>
self = <galaxy.tools.Tool object>
self.inputs = {'tables': <galaxy.tools.parameters.grouping.Rep...ic.HiddenToolParameter object at 0x7fbbe4c72990>}
params = {'no_header': False, 'save_db': False, 'sqlquery': "SELECT Sequence || ' PSM=' || group_concat(id,',...P BY Sequence \nORDER BY length(Sequence),Sequence", 'tables': [{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}], 'workdb': 'workdb.sqlite'}
app = <galaxy.app.UniverseApplication object>
/opt/galaxy/galaxy-app/lib/galaxy/tools/parameters/__init__.py in params_to_strings(params={'tables': <galaxy.tools.parameters.grouping.Rep...ic.HiddenToolParameter object at 0x7fbbe4c72990>}, param_values={'no_header': False, 'save_db': False, 'sqlquery': "SELECT Sequence || ' PSM=' || group_concat(id,',...P BY Sequence \nORDER BY length(Sequence),Sequence", 'tables': [{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}], 'workdb': 'workdb.sqlite'}, app=<galaxy.app.UniverseApplication object>)
147 for key, value in param_values.items():
148 if key in params:
149 value = params[ key ].value_to_basic( value, app )
150 rval[ key ] = str( dumps( value ) )
151 return rval
value = [{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}]
params = {'tables': <galaxy.tools.parameters.grouping.Rep...ic.HiddenToolParameter object at 0x7fbbe4c72990>}
key = 'tables'
].value_to_basic undefined
app = <galaxy.app.UniverseApplication object>
/opt/galaxy/galaxy-app/lib/galaxy/tools/parameters/grouping.py in value_to_basic(self=<galaxy.tools.parameters.grouping.Repeat object>, value=[{'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}], app=<galaxy.app.UniverseApplication object>)
89 rval_dict['__index__'] = d['__index__']
90 for input in self.inputs.values():
91 rval_dict[ input.name ] = input.value_to_basic( d[input.name], app )
92 rval.append( rval_dict )
93 return rval
rval_dict = {'__index__': 0, 'table': {'__class__': 'RuntimeValue'}}
input = <galaxy.tools.parameters.grouping.Section object>
input.name = 'input_opts'
input.value_to_basic = <bound method Section.value_to_basic of <galaxy.tools.parameters.grouping.Section object>>
d = {'__index__': 0, 'table': <galaxy.tools.parameters.basic.RuntimeValue object>, 'tbl_opts': {'col_names': 'id,Proteins,Sequence', 'indexes': [], 'load_named_columns': True, 'pkey_autoincr': '', 'table_name': 'psm'}}
app = <galaxy.app.UniverseApplication object>
<type 'exceptions.KeyError'>: 'input_opts'
__class__ = <type 'exceptions.KeyError'>
__delattr__ = <method-wrapper '__delattr__' of exceptions.KeyError object>
__dict__ = {}
__doc__ = 'Mapping key not found.'
__format__ = <built-in method __format__ of exceptions.KeyError object>
__getattribute__ = <method-wrapper '__getattribute__' of exceptions.KeyError object>
__getitem__ = <method-wrapper '__getitem__' of exceptions.KeyError object>
__getslice__ = <method-wrapper '__getslice__' of exceptions.KeyError object>
__hash__ = <method-wrapper '__hash__' of exceptions.KeyError object>
__init__ = <method-wrapper '__init__' of exceptions.KeyError object>
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of exceptions.KeyError object>
__reduce_ex__ = <built-in method __reduce_ex__ of exceptions.KeyError object>
__repr__ = <method-wrapper '__repr__' of exceptions.KeyError object>
__setattr__ = <method-wrapper '__setattr__' of exceptions.KeyError object>
__setstate__ = <built-in method __setstate__ of exceptions.KeyError object>
__sizeof__ = <built-in method __sizeof__ of exceptions.KeyError object>
__str__ = <method-wrapper '__str__' of exceptions.KeyError object>
__subclasshook__ = <built-in method __subclasshook__ of type object>
__unicode__ = <built-in method __unicode__ of exceptions.KeyError object>
args = ('input_opts',)
message = 'input_opts'
The above is a description of an error in a Python program. Here is
the original traceback:
view raw gistfile1.txt hosted with ❤ by GitHub

ADD REPLYlink written 18 months ago by matt.chambers4250

Will the workflow load if the latest version of the tool is installed first? https://toolshed.g2.bx.psu.edu/view/jjohnson/query_tabular/49ca06d66762

You may be doing that already, but just checking.

There have been some changes in the way dependencies are handled during tool installs in Galaxy version 17.01 and further improved in version 17.05 (the most current release). Upgrading the Galaxy instance would also be a good idea and might be enough to handle this case (load the workflow successfully, then edit it to resolve tool mismatches between the two Galaxy servers), but that would need to be tested.

ADD REPLYlink written 18 months ago by Jennifer Hillman Jackson25k

I posted as an answer intentionally. :) My main concern was with being able to more quickly clean information about exceptions from the Galaxy log (now and in the future). Although I should have posted the code change I made!

To fix this problem, I tried to manually update the JSON syntax of the old workflow (which used Query Tabular 0.1.3 while new instance has 3.0.0). I made a new workflow with 3.0.0 and copied parameters manually. Then I downloaded the new workflows' JSON and copied the tool_state part over to the old workflow. No dice, still got the input_opts KeyError when importing. So I tried importing the new workflow and I got the same error, i.e. I couldn't import the workflow I had just exported a minute earlier. So this has to be a Galaxy bug. I can't try this on main because it doesn't have Query Tabular installed. I'm running a Jetstream instance and 17.05 isn't an option yet. This is on 17.01.

ADD REPLYlink written 18 months ago by matt.chambers4250

Np :) I wanted to make sure we got this settled out as a usage versus code problem (that needs to be fixed) before this dropped off as answered.

I'll recruit some developer help for more troubleshooting. Thanks for the follow up! Jen

ADD REPLYlink written 18 months ago by Jennifer Hillman Jackson25k
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 166 users visited in the last hour