Story #19132

Updated by Peter Amstutz 9 months ago

Support versioning for registered workflows in Workbench. 

 Possible features: 

 * When launching a workflow, user can choose among multiple versions 
 * Can easily determine which version of the workflow was used to run a particular pipeline. 
 * Text of workflow that is used for execution is more like the text that the user started from (instead of workflow packing). 

 Possible design: 

 * Use collection versioning 
 * Store workflow metadata in properties 
 ** entry point 
 ** input spec 
 ** git commit/branch/repo?    if uploaded a git directory 
 ** docker jobs image to use 
 * Are "workflow" records even needed any more?    Could be kept in a collection with "type: workflow" property  
 and metadata such as entry point and input spec. 
 * Identify the workflow version used for a given pipeline by matching the PDH  


 * arvados-cwl-runner support for creating/updating new-style registered workflows 
 * Workbench 2 support (this is probably the majority of the work) 
 ** for picking 
 ** viewing 
 ** and launching new-style registered workflows