Commit Graph
30156 Commits
Author SHA1 Message Date
Dannon Baker a19596e3ea Fix dataset-model's edit url 2018-01-10 08:39:30 -05:00
Dannon Baker 087537a7ad Merge pull request #5271 from guerler/fix_workflow_leak
[17.09] Only collect required attributes of linked steps
2018-01-05 17:47:56 -05:00
guerler 8602ecbfac Only collect required attributes of linked steps 2018-01-05 11:08:18 -05:00
Dannon Baker bdbc1a680e Merge pull request #5253 from mvdbeek/catch_pysam_errors_when_viewing_bam_files
[17.09] Catch and display error when displaying broken BAM file
2018-01-04 19:05:23 -05:00
mvdbeek 7483648b3e Catch error when displaying broken BAM file
This should fix https://github.com/galaxyproject/galaxy/issues/5252.
2018-01-02 11:59:47 +02:00
Martin Cech 41ce472cf2 Merge pull request #5249 from mvdbeek/fix_wrong_tool_id_after_switching_versions
[17.09] Fix wrong tool id after switching versions
2018-01-01 14:20:21 -05:00
mvdbeek cb4ef22e1b Build client 2017-12-31 20:22:58 +02:00
mvdbeek d448001fe6 Also update tool_id when switching versions in workflow editor 2017-12-31 20:18:02 +02:00
John Chilton 44635eae1d Merge pull request #5217 from mvdbeek/fail_if_galaxy_json_tools_write_to_stderr
[17.09] Fail job if tools that use galaxy.json write to stderr
2017-12-15 10:39:59 -05:00
mvdbeek 3f6c45578e Fix dataset spelling (thx @nsoranzo) 2017-12-15 16:13:32 +01:00
Marius van den Beek d52802d796 Merge pull request #6 from jmchilton/fail_if_galaxy_json_tools_write_to_stderr
Let ToolProvidedMetadata interface more directly decide if it has failed outputs.
2017-12-15 14:48:07 +01:00
John Chilton 121285b40b Let ToolProvidedMetadata interface more directly decide if it has failed outputs.
I like this better for three reasons:

- Since usually it is scripts producing this JSON - we have the most control at that point for determining the failure and we don't have to deal with an artificial dependency between the tool's stdio and the output.
- At some point we could potentially allow some datasets to be ok now even though the job fails.
- It is a cleaner interface at the Python level between job finish and output collection IMO (no need for isinstance checking).
2017-12-15 08:34:35 -05:00
mvdbeek b39772011a Optionally allow dataset populators to fail 2017-12-15 13:36:38 +01:00
mvdbeek 9ee2a7d457 Adjust stderr collection to (Legacy-)ToolProvidedMetadata 2017-12-15 11:23:38 +01:00
mvdbeek 62a3ff3562 Do not assert dataset state in test_gzipped_html_content_blocked_by_default test 2017-12-14 18:16:51 +01:00
mvdbeek 3d2adcd1f3 Restrict reading tool provided metadata to tools that actually provide metadata 2017-12-14 17:49:39 +01:00
mvdbeek a1f399c451 Read in stderr form galaxy.json
before checking whether stderr and exit code combination should result in a
failed job. This should fix https://github.com/galaxyproject/galaxy/issues/5214.
2017-12-14 17:21:09 +01:00
mvdbeek 710177f398 Add API tests for history uploads from URL 2017-12-14 17:21:09 +01:00
Martin Cech 42c572f344 Merge pull request #5147 from jmchilton/1709_docs_fixes
[17.09] Small deployer doc fixes.
2017-12-08 09:15:04 -05:00
Dannon Baker e9f05cb1b1 Merge pull request #5099 from mvdbeek/toolshed_install_stability
[17.09] Toolshed install stability improvements
2017-12-07 11:23:31 -05:00
Nicola Soranzo a0eae9510c Merge branch 'release_17.05' into release_17.09 2017-12-07 16:21:38 +00:00
Nicola Soranzo 86ab6fd227 Merge pull request #5140 from jmchilton/subworkflow_fixes
[17.05] Fix connecting non-input modules to subworkflow inputs.
2017-12-07 15:47:13 +00:00
John Chilton e8a1280f78 [17.09] Deployer doc fixes. 2017-12-06 20:18:26 -05:00
Dannon Baker cd1454c40a Merge pull request #5141 from jmchilton/master
[17.09] Re-merge master into release_17.09.
2017-12-06 13:28:43 -05:00
John Chilton fd223e3033 Fix connecting non-input modules to subworkflow inputs.
It has been broken since introduced in 16.01, it just happens that the test tools I normally use have the same complete hack of an output type.
2017-12-06 11:25:47 -05:00
Martin Cech b0c03240fd Merge pull request #5135 from jmchilton/17.09_admin_docs
[17.09] Migrate documentation for setting up a production instance to Galaxy.
2017-12-06 11:11:43 -05:00
John Chilton befa077cc4 Rework headings in jobs docs.
Thanks to comment from @erasche review.
2017-12-06 07:45:40 -05:00
John Chilton d24b545d70 Migrate documentation for setting up a production instance to Galaxy.
This is a bugfix for the future bug of missing documentation for 17.09 and before. 18.01 will require a significant rewrite of these pages for the uWSGI and configuration changes to Galaxy and the release_17.09 branch of these docs is now being hosted https://docs.galaxyproject.org/en/release_17.09/, so backporting this configuration documentation will allow us to provide permenant links to this 17.09 varaint of all this documentation (with information about paste and galaxy.ini for instance).

This content currently includes:

- the production configuration page
- the cluster configuration page
- the job configuration page
- the scaling information page
- the ftp configuration page
- the top-level nginx page (for external auth content still linking out to the hub)
- the top-level apache page (for external auth content still linking out to the hub)
- the job metrics configuration page

Includes small tweaks to sphinx documentation generation.

- Add a quick build mode that skips source generation / Python docs (export GALAXY_DOCS_SKIP_SOURCE=1 to build this way). This speeds up review of core Sphinx docs.
- Use AutoStructify for better Markdown integration.

Updates to the documentation above and beyond what is on the corresponding Hub pages to reflect more of the state of art as of 17.09 including:

- Update the job configuration page with information about XML macros.
- Mention and link to newer style resubmission condition expressions (not just an enumerated string anymore).
- Updated list of dynamic job runner configuration parameters.
- Mention the ``raw`` attribute for ``env`` directives in the job configuration page.
- Mention the ``total_walltime`` limit added in #3217.
- Drop mentions of older URL-based job conf configuration stuff.
- Mention newer Local and Paramiko based shell runners in CLI section.
- Mention newer slurm job styles in CLI section.
- Improved Pulsar links.
- Fix dataset security link in Apache display sites config.
- Update job metrics page to link to a new Github issue instead of old Trello issues.
2017-12-05 22:04:20 -05:00
Björn Grüning 22aa02f594 Merge pull request #5121 from mvdbeek/fix_icm_datatype_config
[17.09] Fix ICM datatype sniffer config
2017-12-04 10:10:10 +01:00
mvdbeek d73bb6c6c6 Fix ICM datatype sniffer config
Probably a bad merge in https://github.com/galaxyproject/galaxy/pull/5108
2017-12-04 07:51:53 +01:00
Dannon Baker c41fc0a427 Merge pull request #5118 from mvdbeek/backport_sdf_sniffing_fixes
[17.09] Backport stricter checks for SDF sniffing #4729
2017-12-02 08:37:00 -05:00
Nicola Soranzo 95579883de More precise SDF sniffer
First check 4th line: if this is conforming, scan up to 10000 lines.
Add 2 test files downloaded from:

https://github.com/rdkit/rdkit/tree/master/Code/GraphMol/FileParsers/test_data
2017-12-02 06:34:02 +01:00
Nicola Soranzo 72aa96c7bc Stricter checks for SDF sniffing
I had a bunch of protein FASTA files being sniffed as 'sdf'.

Also fix https://github.com/galaxyproject/galaxy/issues/4558 .
2017-12-02 06:34:02 +01:00
mvdbeek eb3d2eac20 Fix installation of data manager revision updates
Without this updates of data managers fails with
```
AttributeError: 'NoneType' object has no attribute 'get'
  File "galaxy/web/framework/middleware/sentry.py", line 40, in __call__
    iterable = self.application(environ, start_response)
  File "/bioinfo/guests/mvandenb/galaxy/.venv/local/lib/python2.7/site-packages/paste/recursive.py", line 85, in __call__
    return self.application(environ, start_response)
  File "/bioinfo/guests/mvandenb/galaxy/.venv/local/lib/python2.7/site-packages/paste/httpexceptions.py", line 640, in __call__
    return self.application(environ, start_response)
  File "galaxy/web/framework/base.py", line 136, in __call__
    return self.handle_request(environ, start_response)
  File "galaxy/web/framework/base.py", line 215, in handle_request
    body = method(trans, **kwargs)
  File "galaxy/web/framework/decorators.py", line 98, in decorator
    return func(self, trans, *args, **kwargs)
  File "galaxy/webapps/galaxy/controllers/admin_toolshed.py", line 1849, in update_to_changeset_revision
    persist=True)
  File "tool_shed/galaxy_install/metadata/installed_repository_metadata_manager.py", line 30, in __init__
    metadata_dict=metadata_dict, user=None)
  File "tool_shed/metadata/metadata_generator.py", line 63, in __init__
    self.metadata_dict = {'shed_config_filename': self.shed_config_dict.get('config_filename', None)}
```
2017-11-30 13:47:38 +01:00
mvdbeek 562ea1d5e2 Do not write shed_tool_data_table_config in place
This should prevent errors such as:
```
galaxy.util ERROR 2017-11-17 09:20:12,842 Error parsing file /data/users/mvandenb/gx/config/shed_tool_data_table_conf.xml
Traceback (most recent call last):
  File "lib/galaxy/util/__init__.py", line 217, in parse_xml
    root = tree.parse(fname, parser=ElementTree.XMLParser(target=DoctypeSafeCallbackTarget()))
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 657, in parse
    self._root = parser.close()
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1654, in close
    self._raiseerror(v)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1506, in _raiseerror
    raise err
ParseError: no element found: line 1, column 0
```
reported in https://github.com/galaxyproject/galaxy/issues/5031.
2017-11-30 13:47:38 +01:00
Martin Cech a82d325d18 Merge pull request #5079 from mvdbeek/admin_panel_exception_fix
[17.09] Fix exception in admin panel
2017-11-28 15:49:25 -05:00
Marius van den Beek e903cb708e Merge pull request #5010 from guerler/fix_pages_workflows
[17.09] Do not visit child inputs of invalid conditionals
2017-11-28 16:29:33 +01:00
Eric Rasche 802c943fff Merge pull request #5073 from jmchilton/backport_5045
[17.09] Backport #5045
2017-11-28 14:22:28 +00:00
John Chilton ff3a6b0849 Merge pull request #5086 from mvdbeek/sentry_report_fix
[17.09] Always fill `message` to avoid KeyError for sentry ERROR_TEMPLATE
2017-11-28 08:52:49 -05:00
Marius van den Beek f6aedb0d20 Merge pull request #5042 from abretaud/icm_dt
[17.09] Add ICM datatype for glimmer
2017-11-28 14:47:53 +01:00
mvdbeek 0493763938 Always fill message to avoid KeyError for sentry ERROR_TEMPLATE 2017-11-28 13:58:59 +01:00
mvdbeek 385aaf2bd7 Fix exception in admin panel
TypeError: Non-hexadecimal digit found
  File "galaxy/web/framework/middleware/sentry.py", line 40, in __call__
    iterable = self.application(environ, start_response)
  File "/bioinfo/guests/mvandenb/galaxy/.venv/local/lib/python2.7/site-packages/paste/recursive.py", line 85, in __call__
    return self.application(environ, start_response)
  File "/bioinfo/guests/mvandenb/galaxy/.venv/local/lib/python2.7/site-packages/paste/httpexceptions.py", line 640, in __call__
    return self.application(environ, start_response)
  File "galaxy/web/framework/base.py", line 136, in __call__
    return self.handle_request(environ, start_response)
  File "galaxy/web/framework/base.py", line 215, in handle_request
    body = method(trans, **kwargs)
  File "galaxy/web/framework/decorators.py", line 98, in decorator
    return func(self, trans, *args, **kwargs)
  File "galaxy/webapps/galaxy/controllers/admin_toolshed.py", line 660, in manage_repositories
    return self.repository_installation_grid(trans, **kwd)
  File "galaxy/web/framework/helpers/grids.py", line 85, in __call__
    query = self.build_initial_query(trans, **kwargs)
  File "tool_shed/galaxy_install/grids/admin_toolshed_grids.py", line 334, in build_initial_query
    clause_list.append(self.model_class.table.c.id == trans.security.decode_id(tool_shed_repository_id))
  File "galaxy/web/security/__init__.py", line 107, in decode_id
    return int(id_cipher.decrypt(obj_id.decode('hex')).lstrip("!"))
  File "encodings/hex_codec.py", line 42, in hex_decode
    output = binascii.a2b_hex(input)

This is due to `tool_shed_repository_ids` being a json dump of a list
in certain consitions (noticed this after installing a new repository).
2017-11-27 17:23:50 +01:00
Nicola Soranzo ed162d5a69 Merge pull request #5072 from mvdbeek/metadata_investigation
[BUG][17.09] Fix metadata setting for Otu datatypes
2017-11-27 14:28:55 +00:00
John Chilton a58586f0e4 Cleanup SA objects between workflow invocation scheduling attempts.
This would seem to be a fairly serious memory leak in the abstract but I don't have data that it fixes anything. None the less if it gets into dev and the tests seem to pass I'll open a PR to backport it to at least 17.05 and maybe back even more.
2017-11-24 15:41:13 -05:00
John Chilton f16491cd65 Merge pull request #5070 from mvdbeek/docutils_upgrade
[BUG][[17.09] Fixes galaxy startup when LC_TYPE=UTF-8 on os-x
2017-11-24 15:18:49 -05:00
John Chilton a71d5aa2db Merge pull request #5071 from mvdbeek/installation_fixes
[BUG][17.09] Ignore OSError when chmod'ing integrated_tool_panel_conf.xml
2017-11-24 15:17:23 -05:00
mvdbeek adfb623224 Fix metadata setting for Otu datatypes
I broke this in https://github.com/galaxyproject/galaxy/pull/4388.
I went through the other changes in that PR, and I believe this should be the
only error.
Figured out through the great detective work of @abernard.
2017-11-24 20:58:22 +01:00
mvdbeek cbc74f99e4 Ignore OSError when chmod'ing integrated_tool_panel_conf.xml
This fixes the first error in https://github.com/galaxyproject/galaxy/issues/5031:
```
Exception in thread ToolConfWatcher.thread:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "lib/galaxy/tools/toolbox/watcher.py", line 138, in check
    self.reload_callback()
  File "lib/galaxy/webapps/galaxy/config_watchers.py", line 24, in <lambda>
    self.tool_config_watcher = get_tool_conf_watcher(reload_callback=lambda: reload_toolbox(self.app), tool_cache=self.app.tool_cache)
  File "lib/galaxy/queue_worker.py", line 92, in reload_toolbox
    _get_new_toolbox(app)
  File "lib/galaxy/queue_worker.py", line 111, in _get_new_toolbox
    new_toolbox = tools.ToolBox(tool_configs, app.config.tool_path, app)
  File "lib/galaxy/tools/__init__.py", line 226, in __init__
    app=app,
  File "lib/galaxy/tools/toolbox/base.py", line 1061, in __init__
    super(BaseGalaxyToolBox, self).__init__(config_filenames, tool_root_dir, app)
  File "lib/galaxy/tools/toolbox/base.py", line 87, in __init__
    self._save_integrated_tool_panel()
  File "lib/galaxy/tools/toolbox/integrated_panel.py", line 46, in _save_integrated_tool_panel
    self._write_integrated_tool_panel_config_file()
  File "lib/galaxy/tools/toolbox/integrated_panel.py", line 106, in _write_integrated_tool_panel_config_file
    os.chmod(self._integrated_tool_panel_config, 0o644)
OSError: [Errno 2] No such file or directory: '/data/users/mvandenb/gx/config/integrated_tool_panel.xml'
```
2017-11-24 18:45:12 +01:00
mvdbeek 8db4288ab5 Fixes galaxy startup when LC_TYPE=UTF-8 on os-x
Closes https://github.com/galaxyproject/galaxy/issues/2645.
2017-11-24 17:13:20 +01:00
Anthony Bretaudeau 0bb7612977 don't read too much 2017-11-21 10:33:22 +01:00