Run the Pipeline with CWL-runner


Procedure

Local installation is supported by most Unix-like operating systems such as macOS or Linux. Minimum system requirements must be met. See System and software installation.

To run the pipeline on macOS, perform these additional configuration steps:

  1. To enable CWL-runner to set up volumes, run the command: $ export TMPDIR=/tmp/docker_tmp
  2. To increase the memory available to docker:
    • Click the docker icon in the menu bar to open the docker menu.
    • Click Preferences, and navigate to the Advanced tab.
    • Use the slider to increase the memory limit. We recommend ≥32 GB for Targeted and ≥96 GB for WTA and ATAC-Seq.
      Lower limits are sufficient for smaller datasets.
    • Click Apply & Restart at the bottom of the window.

Running CWL-runner

  1. In the terminal, ensure that you are in a directory that contains the CWL files that were downloaded from the Bitbucket repository. The edited YML file for input specifications must also be present in this directory.

  2. Run the pipeline by entering the command:

    $ cwl-runner workflow.cwl input.yml

    If running the sequencing analysis pipeline, the workflow is the file rhapsody_pipeline_<version>.cwl, and the input specification file is the pipeline_inputs_template_<version>.yml.

  3. If desired, you can specify the output directory for the analysis using the flag --outdir. An example command:

   $ cwl-runner --outdir /path/to/results_folder rhapsody_pipeline_2.0.cwl my_sample.yml

Note: The output directory must be an existing directory. If no output directory is specified, files are output to the working directory.

  1. Jobs in some steps can run in parallel. To enable this, use the flag --parallel. An example command:

    $ cwl-runner --parallel --outdir /path/to/results_folder rhapsody_pipeline_2.0.cwl my_sample.yml
    
  2. Confirm that the following message displays after the pipeline is completed: Final process status is success.

  3. Access the output files. All output files are found in the output directory specified in the CWL-runner command. If no output directory is specified, the files are output to the directory from which the command was called.