Commit Graph
4 Commits
Author SHA1 Message Date
mvdbeek cc0a71bc14 Make dataset discovery respect final_job_state
Fixes https://github.com/galaxyproject/galaxy/issues/9394
2020-02-20 15:31:49 +01:00
John Chilton ca09e803ae Dataset collection state UX test case. 2017-11-30 10:02:03 -05:00
John Chilton 3945c5ed6c Add some docs to more complicated nested collection creation examples.
As suggested by @bgruening in https://github.com/galaxyproject/galaxy/pull/538#discussion_r36004578.
2015-07-31 15:13:00 +01:00
John Chilton 84e8e3e71f Allow tools to create nested collections with dynamic structure.
In this context dynamic structure means the number of elements and identifiers in lists (at some or any level) are not known ahead of time. In these cases, tool authors must resort to using <discover_dataset> tags.

The generic example tool demonstrating this is test/functional/tools/collection_creates_dynamic_nested.xml - which demonstrates building a list of lists from a tool.

A common use case will probably be building a list of pairs, a tool demonstrating this can be found at test/functional/tools/collection_creates_dynamic_list_of_pairs.xml. The <discover_datasets> tag infers dynamic information from the filename - so this tool demonstrates mass renaming of a common file name pattern for pairs (_1/_2 suffixes) into a format more readily consumed by <discover_datasets> in a portable shell fashion.

Previously, these <discover_dataset> tags would just use the "designation" concept as the element identifier when building collections. This was insufficient for nested collections because an identifier must be specified at each level of the collection. Now <discover_dataset> tags may define multiple identifier_N patterns - e.g. identifier_0, identifier_1, etc.... If these are specified, a desigination no longer must be specified and will just be interpreted as <value_0>:<value_1>:.... This scheme is completely backward compatible and when there is only a single identifier - desigination and identifier_0 can be used interchangeably.

Testing:

The simple list of lists tool test case can be executed using:

```
./run_tests.sh -framework -id collection_creates_dynamic_list_of_pairs
```

This verifies the nested datasets are setup properly.

The list of pairs example tool test case can be executed using:

```
./run_tests.sh -framework -id collection_creates_dynamic_list_of_pairs
```

This additionally verifies paired dataset collections can be created this way and that the shell commands in the example work properly for renaming the files for easy discovery.

Finally, the following existing test case verifies that designation can be used in lieu of identifier_0 for flat collections (i.e. this generalization is backward compatible):

```
./run_tests.sh -framework -id collection_split_on_column
```
2015-07-31 14:10:55 +01:00