Project

General

Profile

Arvados Composer » History » Revision 2

Revision 1 (Peter Amstutz, 09/26/2019 05:21 PM) → Revision 2/3 (Peter Amstutz, 10/03/2019 01:35 PM)

h1. Arvados Composer 

 Arvados Composer is a graphical workflow editor integrated with Arvados.    It is originally based on "Rabix Composer":https://github.com/rabix/composer 

 h2. Running from Composer 

 This is described in the "walkthrough":https://doc.arvados.org/user/composer/composer.html 

 You can paste in a keep reference into the file input, in the form "keep:portabledatahash+123/path/to/file.txt".    You currently you cannot choose files through Composer.    However, when you press "Run" it will open up a Workbench workflow submission page in a new tab.    You are able to choose Workflow inputs here. 

 Be aware that Composer marks inputs as "optional" by default.    At least one input needs to be marked as "required".    If all inputs are optional (not required, null by default) the Workbench page for choosing inputs will be skipped, which may lead to confusion. 

 *Docker images used by your workflow must be uploaded using arv-keepdocker* 

 If the Docker image isn't found, launching the workflow from composer will fail (unfortunately, as of this writing, there is no error message). 

 h2. Registering the workflow to run from Workbench (and also running from the command line) 

 Composer workflow are stored in git repository managed by Arvados. 

 From Composer, the repositories list can be accessed by clicking on the "gear" icon under "My Repositories", or the "Repositories" link on the Workbench drop-down menu. 

 The repositories page provides information on how to to clone the repository, see also "Working with an Arvados git repository":https://doc.arvados.org/v1.4/user/tutorials/git-arvados-guide.html in the user guide. 

 Once you have cloned the repository, you can "submit a worklow from the command line using arvados-cwl-runner":https://doc.arvados.org/v1.4/user/cwl/cwl-runner.html 

 <pre> 
 $ arvados-cwl-runner composerdemo.cwl 
 </pre> 

 To register a workflow so it can be executed through workbench, use "arvados-cwl-runner --create-workflow":https://doc.arvados.org/v1.4/user/tutorials/writing-cwl-workflow.html 

 <pre> 
 $ arvados-cwl-runner --create-workflow composerdemo.cwl 
 xxxxx-7fd4e-dfynud09qop82ji 
 </pre> 

 After doing so, you will be able to run the workflow on Workbench using "Run a process". 

 You can update a workflow definition using --update-workflow.    You need to know the UUID of the workflow record (this is printed out when you run --create-workflow, or can be found by browsing the workflows list on Workbench.) 

 <pre> 
 $ arvados-cwl-runner --update-workflow xxxxx-7fd4e-dfynud09qop82ji composerdemo.cwl 
 </pre>