--- layout: default navsection: userguide title: Create a Workflow with Composer ... {% comment %} Copyright (C) The Arvados Authors. All rights reserved. SPDX-License-Identifier: CC-BY-SA-3.0 {% endcomment %} The Arvados Workflow Composer is a graphical interface for building Common Workflow Language (CWL) workflows to run on Arvados. This tutorial will demonstrate: # Creating a new git repository through Arvados to store the workflow # Creating CommandLineTools for "sort" and "uniq" # Creating a Workflow which uses "sort" and "uniq" to remove duplicate lines from a text file # Submitting the Workflow to run on Arvados h3. 1. Access from workbench !(screenshot)c1.png! h3. 2. Composer starting page !(screenshot)c2.png! h3. 3. Manage git repositories (opens Workbench in new tab) !(screenshot)c2b.png! h3. 4. Add a new repository !(screenshot)c4.png! !(screenshot)c3.png! h3. 5. Return to Composer. Use refresh button to discover new repository (may take a few moments to show up). !(screenshot)c2c.png! h3. 6. Create a new Command Line Tool !(screenshot)c5.png! !(screenshot)c20.png! h3. 7. Set Docker image, base command, and input port for "sort" tool The "Docker Repository" is the name:tag of a "Docker image uploaded Arvados.":{{site.baseurl}}/user/topics/arv-docker.html (Use @arv-keepdocker --pull debian:8@) You can also find prepackaged bioinformatics tools on various sites, such as http://dockstore.org and http://biocontainers.pro/ . !(screenshot)c6.png! h3. 8. Redirect stdout to a file !(screenshot)c7.png! h3. 9. Capture output file !(screenshot)c8.png! h3. 10. Save Command Line Tool !(screenshot)c22.png! h3. 11. Repeat steps 6-10 for "uniq" tool Create a new tool with a "base command" of "uniq". h3. 12. Switch back to "Home" tab and create workflow !(screenshot)c24.png! !(screenshot)c9.png! !(screenshot)c10.png! h3. 13. Drag and drop tools into Workflow !(screenshot)c11.png! h3. 14. Drag from input port of "sort" to empty space to create workflow input !(screenshot)c21.png! h3. 15. Drag from output port of "sort" to input port of "uniq" !(screenshot)c13.png! h3. 16. Drag from output port of "uniq" to empty space to create workflow output !(screenshot)c14.png! h3. 17. Save Workflow !(screenshot)c23.png! h3. 18. Click on "Test" tab then click "Run" !(screenshot)c15.png! h3. 19. Choose input file You may need to "upload an input file":{{site.baseurl}}/user/tutorials/tutorial-keep.html !(screenshot)c16.png! h3. 20. Run the workflow !(screenshot)c17.png! h3. 21. Monitor progress (may take several minutes) !(screenshot)c18.png! h3. 22. Get workflow output !(screenshot)c19.png!