Skip to content

Commit b2a0953

Browse files
rsc3khajoue2actions-user
authored
Rc 2880 warp and forking (#1586)
* update WARP name * update WARP name * Document on Forking WARP and pushing to dockstore * Updated pipeline_versions.txt with all pipeline version information --------- Co-authored-by: Farzaneh Khajouei <[email protected]> Co-authored-by: GitHub Action <[email protected]>
1 parent 2f8a56c commit b2a0953

18 files changed

+77
-14
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

2-
### WDL Analysis Research Pipelines
2+
### Warp Analysis Research Pipelines
33

4-
The WDL Analysis Research Pipelines (WARP) repository is a collection of cloud-optimized pipelines for processing biological data from the Broad Institute Data Sciences Platform and collaborators.
4+
The Warp Analysis Research Pipelines (WARP) repository is a collection of cloud-optimized pipelines for processing biological data from the Broad Institute Data Sciences Platform and collaborators.
55

66
WARP provides robust, standardized data analysis for the Broad Institute Genomics Platform and large consortia like the Human Cell Atlas and the BRAIN Initiative. WARP pipelines are rigorously scientifically validated, high scale, reproducible and open source, released under the [BSD 3-Clause license](https://github.com/broadinstitute/warp/blob/master/LICENSE).
77

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
---
2+
sidebar_position: 5
3+
---
4+
# Forking WARP
5+
6+
The best way to make pipelines your own is to fork WARP. Forking is also a great way to create new pipelines or to suggest improvements to existing pipelines. Here we take you through all the steps needed to fork WARP using Github, and what the best options are for how to deploy your forked code to run in the cloud.
7+
8+
* Start Forking. To start a fork, find the WARP repo on github and select the fork button. You can also choose which branch you want to fork, in this case we will fork the develop branch but you may also wish to fork the released `master` branch. Note you will need to be logged into a github account:
9+
10+
![forking01](../images/forking01.png)
11+
* Configure Fork. From the “Create…” dialog, you can choose a new owner such as yourself and update the description with the purpose of your fork. You can uncheck the lower option if you want to fork all branches rather than the specific one.
12+
13+
![forking02](../images/forking02.png)
14+
* Clone Repo. Now you are almost ready to start modifying your code. This can be managed on github and git as normal. For very small changes, you can edit code directly on github with the edit dialog and submit them directly. For larger changes you might want to use an IDE and git to synchronize your changes with the repo. To do this use the CODE button in github and copy the clone repo line. Then create a local copy of your repo either using your IDE, the github desktop client, or running the `git clone` command (e.g. `git clone [email protected]:rsc3/warp.git`) in your preferred local directory.
15+
16+
![forking03](../images/forking03.png)
17+
18+
* Edit code. Note that you will be on the same branch that you forked from. Here we will stay on this branch though you may want to create a new branch for your code changes. Let’s change the code of the `StarAlign.wdl` workflow so that the task STARsoloFastq can run on a different cloud backend, such as AWS or Azure rather than only GCP. This is the alignment and metric calculation task for single-cell RNA-Seq, and since it is a costly step we might want to change the cloud platform it runs on. So we can add a cloud_provider input to the task, and decide which values are allowed and how they will change the execution. Note that every workflow dependent on `StarAlign.wdl` will also have to be updated to pass the `cloud_provider` input. Commit and push your modifications back to your repository.
19+
20+
![forking04](../images/forking04.png)
21+
22+
* Now that you have modified your fork of WARP, you have several options to deploy your WDL workflows to a backend execution environment. We recommend GA4GH Dockstore for this purpose as a flexible hosting solution which you can use to deploy your code to a variety of execution options. One of those options is Broad Terra, for complete instructions on deploying to Dockstore and then to Terra see [this document on Terra deployment](https://support.terra.bio/hc/en-us/articles/8888504224283-How-to-set-up-a-WDL-on-Github-Dockstore). Continue following this guide to synchronize your code to Dockstore and choose how to deploy it from there.
23+
24+
* Make an account on [Dockstore](https://dockstore.org/) and link your account to your Github account. This will allow you to find your WARP fork branch on Dockstore. Connect your Warp fork to Dockstore.
25+
26+
![forking05](../images/forking05.png)
27+
28+
* Register your workflow to Dockstore: From the workflows tab in Dockstore, select “Register a Workflow”. This will bring up a panel. Select “Register using GitHub Apps”, then “Next”.
29+
30+
![forking06](../images/forking06.png)
31+
32+
* Select “Manage Dockstore installations on GitHub”. This will take you to GitHub with a view of your organizations.
33+
34+
![forking07](../images/forking07.png)
35+
36+
* Select the organization with your fork.
37+
38+
![forking08](../images/forking08.png)
39+
40+
* This will open a new view. You can choose to install Dockstore for all repositories or select just your fork. Select “Install”.
41+
42+
![forking09](../images/forking09.png)
43+
44+
* Find your workflow in Dockstore: In the workflows tab in Dockstore, you will see your organization. Expand it and scroll down to find your workflow of interest.
45+
46+
![forking10](../images/forking10.png)
47+
![forking11](../images/forking11.png)
48+
49+
* NOTE: you may need to push another commit to your branch to get this to show up.
50+
* NOTE: you will need a .dockstore.yml file in the root of your branch in the forked repository. Warp includes this file which will be included in your fork.
51+
* NOTE: If for some reason your workflow of interest is not in the .dockstore.yml file on the commit you checked out you will need to add it.
52+
* Publish your workflow in Dockstore: On the page for your workflow, select the “Versions” tab. Find and select the version for your branch (there may be many versions). Click the “Actions” dropdown and select “Set as Default Version” (it will not be greyed out if it has not already been set as the default version).
53+
54+
![forking12](../images/forking12.png)
55+
56+
* Back at the top of the page, click “Publish”. This will change the “Publish” button to an “Unpublish” button and add a link to “View public page”. Click “View public page”.
57+
58+
![forking13](../images/forking13.png)
59+
60+
* Your new workflow is now published to Dockstore! GA4GH Dockstore provides documentation on deploying your WDL workflows into containers on Dockerhub, Quay, Amazon ECR, and running them on several choices for cloud services.
61+
62+
![forking14](../images/forking14.png)
63+
64+
* See the [Best Practices for Building Pipelines](https://broadinstitute.github.io/warp/docs/About_WARP/BestPractices) page for information on how to execute WDL Workflows. Also see the [cromwell docs](https://cromwell.readthedocs.io/en/latest/backends/Backends/#backends) for some options for backend execution, and [this document describing other options for deploying workflows from Dockstore](https://docs.dockstore.org/en/stable/advanced-topics/tools-vs-workflows.html).
65+
66+
67+
68+
69+
70+
71+
72+
73+

website/docs/get-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ sidebar_position: 1
44

55
# Welcome to WARP
66

7-
WARP (WDL Analysis Research Pipelines) repository is a collection of cloud-optimized pipelines for processing biological data from the Broad Institute Data Sciences Platform and collaborators.
7+
The Warp Analysis Research Pipelines repository is a collection of cloud-optimized pipelines for processing biological data from the Broad Institute Data Sciences Platform and collaborators.
88

99
The contents of this repository are open source and released under the [BSD 3-Clause license](https://github.com/broadinstitute/warp/blob/master/LICENSE).
1010

@@ -33,7 +33,7 @@ Try our pipelines in [Terra](https://app.terra.bio/#workspaces?tagsFilter%5B0%5D
3333

3434
All versioned and released pipelines are in one of the three [pipelines](https://github.com/broadinstitute/warp/tree/master/pipelines) subdirectories: broad (pipelines for the Broad Institute’s Genomics Platform), cemba (pipelines for the BRAIN Initiative) or skylab (pipelines for the BRAIN Initiative and Human Cell Atlas Project).
3535

36-
Each pipeline directory hosts a main workflow WDL that includes a pipeline version number and a corresponding changelog file.
36+
Each pipeline directory hosts a main workflow (WDL) that includes a pipeline version number and a corresponding changelog file.
3737

3838
Workflows may call additional WDLs, referred to as tasks, that are located in the [tasks](https://github.com/broadinstitute/warp/tree/master/tasks) directory.
3939

website/docs/images/forking01.png

31.9 KB
Loading

website/docs/images/forking02.png

54.3 KB
Loading

website/docs/images/forking03.png

41.6 KB
Loading

website/docs/images/forking04.png

88.4 KB
Loading

website/docs/images/forking05.png

48.8 KB
Loading

website/docs/images/forking06.png

61.2 KB
Loading

website/docs/images/forking07.png

54.7 KB
Loading

website/docs/images/forking08.png

28.8 KB
Loading

website/docs/images/forking09.png

54.7 KB
Loading

website/docs/images/forking10.png

40.7 KB
Loading

website/docs/images/forking11.png

32.7 KB
Loading

website/docs/images/forking12.png

14.6 KB
Loading

website/docs/images/forking13.png

5.04 KB
Loading

website/docs/images/forking14.png

26.1 KB
Loading

website/yarn.lock

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8073,16 +8073,6 @@ regenerate@^1.4.0, regenerate@^1.4.2:
80738073
resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
80748074
integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
80758075

8076-
regenerator-runtime@^0.13.11:
8077-
version "0.13.11"
8078-
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
8079-
integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
8080-
8081-
regenerator-runtime@^0.14.0:
8082-
version "0.14.1"
8083-
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
8084-
integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
8085-
80868076
regenerator-runtime@^0.14.0:
80878077
version "0.14.1"
80888078
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"

0 commit comments

Comments
 (0)