Formatting & content WIP
[rnaseq-cwl-training.git] / _episodes / 04-commandlinetool.md
index 0575a01561fd71919f991a11bf925592f31f5943..cae16826d6d11d8308e038fc1a7780be6d2b9a0f 100644 (file)
@@ -14,7 +14,7 @@ It is time to add the last step in the analysis.
 
 This will use the "featureCounts" tool from the "subread" package.
 
-### 1. File header
+# 1. File header
 
 Create a new file "featureCounts.cwl"
 
@@ -25,7 +25,7 @@ cwlVersion: v1.2
 class: CommandLineTool
 ```
 
-### 2. Command line tool inputs
+# 2. Command line tool inputs
 
 A CommandLineTool describes a single invocation of a command line program.
 
@@ -50,7 +50,7 @@ inputs:
   counts_input_bam: File
 ```
 
-### 3. Specifying the program to run
+# 3. Specifying the program to run
 
 Give the name of the program to run in `baseCommand`.
 
@@ -58,7 +58,7 @@ Give the name of the program to run in `baseCommand`.
 baseCommand: featureCounts
 ```
 
-### 4. Command arguments
+# 4. Command arguments
 
 The easiest way to describe the command line is with an `arguments`
 section.  This takes a comma-separated list of command line arguments.
@@ -78,7 +78,7 @@ arguments: [-T, $(runtime.cores),
             $(inputs.counts_input_bam)]
 ```
 
-### 5. Outputs section
+# 5. Outputs section
 
 In CWL, you must explicitly identify the outputs of a program.  This
 associates output parameters with specific files, and enables the
@@ -103,7 +103,7 @@ outputs:
       glob: featurecounts.tsv
 ```
 
-### 6. Running in a container
+# 6. Running in a container
 
 In order to run the tool, it needs to be installed.
 Using software containers, a tool can be pre-installed into a
@@ -133,7 +133,7 @@ hints:
     dockerPull: quay.io/biocontainers/subread:1.5.0p3--0
 ```
 
-### 7. Running a tool on its own
+# 7. Running a tool on its own
 
 When creating a tool wrapper, it is helpful to run it on its own to test it.
 
@@ -157,7 +157,7 @@ The invocation is also the same:
 cwl-runner featureCounts.cwl featureCounts.yaml
 ```
 
-### 8. Adding it to the workflow
+# 8. Adding it to the workflow
 
 Now that we have confirmed that it works, we can add it to our workflow.
 We add it to `steps`, connecting the output of samtools to