def make_tool(conda_meta, plugin, action): signature = action.signature inputs = XMLNode('inputs') advanced = [] for case in signature_to_galaxy(signature): xml = case.inputs_xml() if case.is_advanced(): if type(xml) is list: advanced.extend(xml) else: advanced.append(xml) else: if type(xml) is list: inputs.extend(xml) else: inputs.append(xml)
if case.is_advanced(): if type(xml) is list: advanced.extend(xml) else: advanced.append(xml) else: if type(xml) is list: inputs.extend(xml) else: inputs.append(xml) if advanced: section = XMLNode('section', name=galaxy_ui_var(tag='section', name='extra_opts'), title='Click here for additional options') section.extend(advanced) inputs.append(section) outputs = XMLNode('outputs') for name, spec in signature.outputs.items(): output = make_output(name, spec) outputs.append(output) tool = XMLNode('tool', id=make_tool_id(plugin.id, action.id), name=make_tool_name(plugin.name, action.id), version=f'{plugin.version}+q2galaxy.{q2galaxy.__version__}') tool.append(XMLNode('description', action.name)) tool.append(make_command(plugin, action)) tool.append(make_version_command(plugin)) tool.append(make_config())