Commit Graph
9 Commits
Author SHA1 Message Date
John Chilton 2aa7f04364 Replace __rip_value with dict.pop.
Thanks @bgruening.
2015-12-06 09:50:55 +00:00
John Chilton b11002bef3 Don't iterate over unused key.
Thanks to @bgruening.
2015-12-06 09:50:55 +00:00
John Chilton 40e6932a25 Fix workflow API tests for workflow output changes. 2015-12-04 20:37:37 +00:00
John Chilton a597e0e834 Implement workflow outputs for format 2 workflow definitions.
Copy CWL style of specifying a outputs specification block at the top-level of the workflow specification and within that use the "source" attribute to specify the output. Reuse the specification used by "$link"s to describe this output - namely <label_or_order_index>[#<output_name=output>].
2015-12-04 20:34:57 +00:00
John Chilton 1bd0a4e970 Refactoring and more testing of format 2 workflow implementation code...
... toward more reusable design.
2015-12-04 20:34:57 +00:00
John Chilton 70a9f21393 Update workflow format 2 code with infrastructure for nesting runnables.
In downstream work this is used for subworkflows and nested tools. Not sure which of these would potentially hit main line Galaxy first so setting this all up in its own commit.
2015-12-04 20:34:57 +00:00
John Chilton b0b26e6901 Allow specifying Format 2 workflow by path.
This will allow importing workflow relative resources in subsequent passes at this.
2015-12-04 20:34:56 +00:00
John Chilton 4a279ffb64 Allow inputs section for Format 2 workflow definitions.
Arguably a more natural way to define inputs, regardless it allows more CWL-like input definitions for workflows.
2015-12-04 20:34:56 +00:00
John Chilton b4c77b7617 Introduce "Format 2" workflow definitions.
This is a slight tightening up of the ad-hoc, experimental workflow YAML definition used by the test framework (and by Kyle, but lets just admit Kyle is part of Galaxy's test framework).

This format is still defined entirely client side by transcoding the YAML or python object description into real (or format 1) Galaxy workflows - so these cannot realisticaly be declared part of Galaxy's public interface and can remain experimental and subject to change.

In addition to refactoring the code implementing these workflows for upstream modifications to explore new features, the format itself has been made slightly more stringent in two ways:

 - 'steps' must now be explicit (previously converted auto-convert list to dict).
 - Ensure the workflow declared a 'class' is defined and the class is 'GalaxyWorkflow'.

This will help with discovery of workflow objects with downstream tooling (planemo for workflows?) and brings the Galaxy definition slightly more inline with the CWL definition for workflows (very slightly).
2015-11-18 10:50:43 +00:00