{"_id":"5cbf2786db3da70201fd671d","project":"55faf11ba62ba1170021a9a7","version":{"_id":"55faf11ba62ba1170021a9aa","project":"55faf11ba62ba1170021a9a7","__v":45,"createdAt":"2015-09-17T16:58:03.490Z","releaseDate":"2015-09-17T16:58:03.490Z","categories":["55faf11ca62ba1170021a9ab","55faf8f4d0e22017005b8272","55faf91aa62ba1170021a9b5","55faf929a8a7770d00c2c0bd","55faf932a8a7770d00c2c0bf","55faf94b17b9d00d00969f47","55faf958d0e22017005b8274","55faf95fa8a7770d00c2c0c0","55faf96917b9d00d00969f48","55faf970a8a7770d00c2c0c1","55faf98c825d5f19001fa3a6","55faf99aa62ba1170021a9b8","55faf99fa62ba1170021a9b9","55faf9aa17b9d00d00969f49","55faf9b6a8a7770d00c2c0c3","55faf9bda62ba1170021a9ba","5604570090ee490d00440551","5637e8b2fbe1c50d008cb078","5649bb624fa1460d00780add","5671974d1b6b730d008b4823","5671979d60c8e70d006c9760","568e8eef70ca1f0d0035808e","56d0a2081ecc471500f1795e","56d4a0adde40c70b00823ea3","56d96b03dd90610b00270849","56fbb83d8f21c817002af880","573c811bee2b3b2200422be1","576bc92afb62dd20001cda85","5771811e27a5c20e00030dcd","5785191af3a10c0e009b75b0","57bdf84d5d48411900cd8dc0","57ff5c5dc135231700aed806","5804caf792398f0f00e77521","58458b4fba4f1c0f009692bb","586d3c287c6b5b2300c05055","58ef66d88646742f009a0216","58f5d52d7891630f00fe4e77","59a555bccdbd85001bfb1442","5a2a81f688574d001e9934f5","5b080c8d7833b20003ddbb6f","5c222bed4bc358002f21459a","5c22412594a2a5005cc9e919","5c41ae1c33592700190a291e","5c8a525e2ba7b2003f9b153c","5cbf14d58c79c700ef2b502e"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"category":{"_id":"5cbf14d58c79c700ef2b502e","project":"55faf11ba62ba1170021a9a7","version":"55faf11ba62ba1170021a9aa","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2019-04-23T13:36:21.375Z","from_sync":false,"order":33,"slug":"edit-an-app-1","title":"EDIT AN APP"},"user":"5767bc73bb15f40e00a28777","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2019-04-23T14:56:06.668Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":10,"body":"Workflows are chains of connected tools. You can copy and [edit any of the publicly available workflows](doc:about-the-workflow-editor) hosted on the CGC, or use the workflow editor to build a workflow from scratch.\n\n## Create a workflow\nWorkflows are created as individual apps within projects. So, to create a workflow, first [navigate to the project](doc:view-a-project) in which you want to create your workflow.\n\n1. Go to the **Apps** tab.\n2. Click **+ Add app** in the top-right corner.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/abdee96-cgc-create-a-workflow-1.png\",\n        \"cgc-create-a-workflow-1.png\",\n        402,\n        225,\n        \"#eaeced\"\n      ]\n    }\n  ]\n}\n[/block]\n3. Click the **Create New App** tab, as shown below.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/8ccde41-cgc-create-a-workflow-2.png\",\n        \"cgc-create-a-workflow-2.png\",\n        724,\n        346,\n        \"#cad7e0\"\n      ]\n    }\n  ]\n}\n[/block]\n4. Click **Create a Workflow**.\n5. Name your workflow.\n6. Select the CWL version to use for your workflow. [Learn more](doc:about-the-common-workflow-language) about CWL.\n7. Click **Create**.\n\nOnce you have named your new workflow, you will be taken to the workflow editor, shown below.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/a82b6bc-create-a-workflow-3.png\",\n        \"create-a-workflow-3.png\",\n        1284,\n        667,\n        \"#f7f7f7\"\n      ]\n    }\n  ]\n}\n[/block]\n## Insert apps\nUse the left-hand panel in the workflow editor to find apps, which will be the nodes in your workflow. You have the following options:\n\n* **My Projects** - apps that are already present in one of your projects. Click the refresh icon <img src=\"https://files.readme.io/PLR0voQOTB2WMl0zzwuJ_refresh-icon.jpg\"\nheight=\"20px\" width=\"auto\" align=\"inline\" style=\"margin:1px\"/> to refresh the list of available apps, in case an app has been added during the creation of the workflow.\n* **Public Apps** - Select an app from the Public Apps gallery. You can also group apps based on the **category** (type of analysis) they belong to (e.g. \"Variant-Calling\") or **toolkit** - based on their toolkit (e.g. \"SAMTools\").\n\nBoth of these tabs include a search box at the top of the list that allows you to filter available apps by name.\n\nDrag-and-drop your chosen tools onto the canvas.\n\nTools are graphically represented in the workflow editor as circular nodes, as shown below.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/5a55743-create-a-workflow-4.png\",\n        \"create-a-workflow-4.png\",\n        232,\n        236,\n        \"#c3e6e6\"\n      ]\n    }\n  ]\n}\n[/block]\n### Removing a tool from the workflow editor\nIf you accidentally drag-and-drop the wrong app onto the canvas, click the app and then click on the bin icon in the bottom-right corner of the canvas to remove it.\n\n## Connect tools\nThere are circles on the perimeter of each each node in the workflow editor. These represent the tool's ports, used for data to flow in and out of. Circles on the left of the node represent input ports whereas the ones on the right indicate output ports.\n\nClicking on a port, and dragging will reveal a smart connector. Use this to connect tools into workflows.\n\n## Add input and output nodes to workflows\nTo add an input node and connect it to a tool, drag the smart connector from the tool's input node to the left and release anywhere in the blank canvas space. An input port will be created.\n\nTo add an output node to the workflow, drag the smart connector from a tool's output node to the right and release it anywhere in the blank space. This creates an output port.\n\n## Relabel tools\nTo relabel a tool, double-click it, select the **Step** tab in the object inspector on the right and change the value in the **Label** field.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/2ab592f-create-a-workflow-5.png\",\n        \"create-a-workflow-5.png\",\n        721,\n        488,\n        \"#eff4f3\"\n      ]\n    }\n  ]\n}\n[/block]\nWhen you've finished building a workflow, click the **Save** icon in the top-right corner.","excerpt":"","slug":"create-a-workflow-1","type":"basic","title":"Create a workflow"}
Workflows are chains of connected tools. You can copy and [edit any of the publicly available workflows](doc:about-the-workflow-editor) hosted on the CGC, or use the workflow editor to build a workflow from scratch. ## Create a workflow Workflows are created as individual apps within projects. So, to create a workflow, first [navigate to the project](doc:view-a-project) in which you want to create your workflow. 1. Go to the **Apps** tab. 2. Click **+ Add app** in the top-right corner. [block:image] { "images": [ { "image": [ "https://files.readme.io/abdee96-cgc-create-a-workflow-1.png", "cgc-create-a-workflow-1.png", 402, 225, "#eaeced" ] } ] } [/block] 3. Click the **Create New App** tab, as shown below. [block:image] { "images": [ { "image": [ "https://files.readme.io/8ccde41-cgc-create-a-workflow-2.png", "cgc-create-a-workflow-2.png", 724, 346, "#cad7e0" ] } ] } [/block] 4. Click **Create a Workflow**. 5. Name your workflow. 6. Select the CWL version to use for your workflow. [Learn more](doc:about-the-common-workflow-language) about CWL. 7. Click **Create**. Once you have named your new workflow, you will be taken to the workflow editor, shown below. [block:image] { "images": [ { "image": [ "https://files.readme.io/a82b6bc-create-a-workflow-3.png", "create-a-workflow-3.png", 1284, 667, "#f7f7f7" ] } ] } [/block] ## Insert apps Use the left-hand panel in the workflow editor to find apps, which will be the nodes in your workflow. You have the following options: * **My Projects** - apps that are already present in one of your projects. Click the refresh icon <img src="https://files.readme.io/PLR0voQOTB2WMl0zzwuJ_refresh-icon.jpg" height="20px" width="auto" align="inline" style="margin:1px"/> to refresh the list of available apps, in case an app has been added during the creation of the workflow. * **Public Apps** - Select an app from the Public Apps gallery. You can also group apps based on the **category** (type of analysis) they belong to (e.g. "Variant-Calling") or **toolkit** - based on their toolkit (e.g. "SAMTools"). Both of these tabs include a search box at the top of the list that allows you to filter available apps by name. Drag-and-drop your chosen tools onto the canvas. Tools are graphically represented in the workflow editor as circular nodes, as shown below. [block:image] { "images": [ { "image": [ "https://files.readme.io/5a55743-create-a-workflow-4.png", "create-a-workflow-4.png", 232, 236, "#c3e6e6" ] } ] } [/block] ### Removing a tool from the workflow editor If you accidentally drag-and-drop the wrong app onto the canvas, click the app and then click on the bin icon in the bottom-right corner of the canvas to remove it. ## Connect tools There are circles on the perimeter of each each node in the workflow editor. These represent the tool's ports, used for data to flow in and out of. Circles on the left of the node represent input ports whereas the ones on the right indicate output ports. Clicking on a port, and dragging will reveal a smart connector. Use this to connect tools into workflows. ## Add input and output nodes to workflows To add an input node and connect it to a tool, drag the smart connector from the tool's input node to the left and release anywhere in the blank canvas space. An input port will be created. To add an output node to the workflow, drag the smart connector from a tool's output node to the right and release it anywhere in the blank space. This creates an output port. ## Relabel tools To relabel a tool, double-click it, select the **Step** tab in the object inspector on the right and change the value in the **Label** field. [block:image] { "images": [ { "image": [ "https://files.readme.io/2ab592f-create-a-workflow-5.png", "create-a-workflow-5.png", 721, 488, "#eff4f3" ] } ] } [/block] When you've finished building a workflow, click the **Save** icon in the top-right corner.