diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..c9c651b --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Shruti Sharma + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index b80fde6..8a0bcfc 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,26 @@ # gunzip_fqgz_process -The nextflow wrapper for the `gunzip` process. +## This nextflow wrapper helps to implement `gunzip` process of a `fastq` pipeline that includes: -https://github.com/nextflow-hub/trimmed_gunzip_fqgz \ No newline at end of file +1. Define a default parameter `params.trimmed=true` +2. Check if the `inputRawFilePattern` is trimmed or untrimmed +3. The `trimmed` file has `p` in the file pattern whereas untrimmed file does not have `p` in the file pattern +4. Based on the file pattern the input parameter of the script is defined +5. Execute the script to gunzip the input file using `gzip –dc` command and stores the output into the `publishDir` + + +## Execute the script by using the following command: + +```nextflow run main.nf``` + +You will see the execution of a `gzip` process. + +## Execute it again adding the -resume option as shown below: + +```nextflow run main.nf -resume``` + +The -resume option skips the execution of any step that has been processed in a previous execution. + +## Adding a publishDir directive to the gzip process to store the process results into a directory of your choice. + +In this script, it stores the result files locally into `results/gzip` directory. \ No newline at end of file diff --git a/main.nf b/main.nf index 4c543d4..e8ebd38 100644 --- a/main.nf +++ b/main.nf @@ -1,13 +1,22 @@ #!/usr/bin/env nextflow - +/* +####################### +Code documentation +####################### +1. Define a default parameter `params.trimmed=true` +2. Check if the `inputRawFilePattern` is trimmed or untrimmed +3. The `trimmed` file has `p` in the file pattern whereas untrimmed file does not have `p` in the file pattern +4. Based on the file pattern the input parameter of the script is defined +5. Execute the script to gunzip the input file using `gzip –dc` command and stores the output into the `publishDir` +*/ /* ################ params ################ */ -//NOTE: default parameter + params.trimmed=true @@ -20,7 +29,7 @@ NEXTFLOW Global Config inputUntrimmedRawFilePattern = "./*_{R1,R2}.fastq.gz" -//NOTE: This pipeline is starts with `trimmed` because of the `p` in the file pattern. + inputTrimmedRawFilePattern = "./*_{R1,R2}.p.fastq.gz" inputRawFilePattern = params.trimmed ? inputTrimmedRawFilePattern : inputUntrimmedRawFilePattern @@ -49,8 +58,9 @@ process gzip { script: outputExtension = params.trimmed ? '.p.fastq' : '.fastq' - // rename the output files - // G04880_R1.p.fastq.gz > G04880_R1.p.fastq + /* rename the output files + XYZ.p.fastq.gz XYZ.p.fastq + */ genome_1_fq = read_1_gz.name.split("\\.")[0] + outputExtension genome_2_fq = read_2_gz.name.split("\\.")[0] + outputExtension @@ -58,5 +68,5 @@ process gzip { gzip -dc ${read_1_gz} > ${genome_1_fq} gzip -dc ${read_2_gz} > ${genome_2_fq} """ -//gzip -dc G04880_R1.p.fastq.gz > G04880_R1.p.fastq +//gzip -dc XYZ_R1.p.fastq.gz > XYZ_R1.p.fastq }