Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update igenomes config #77

Merged
merged 14 commits into from
Sep 27, 2023
33 changes: 31 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
strategy:
matrix:
NXF_VER:
- "23.04.0"
- "22.10.1"
- "latest-everything"

steps:
Expand All @@ -36,6 +36,35 @@ jobs:
with:
version: "${{ matrix.NXF_VER }}"

- name: Hash Github Workspace
id: hash_workspace
run: |
echo "digest=$(echo RNA_3.10.1_${{ github.workspace }} | md5sum | cut -c 1-25)" >> $GITHUB_OUTPUT

- name: Cache test data
id: cache-testdata
uses: actions/cache@v3
with:
path: test-datasets/
key: ${{ steps.hash_workspace.outputs.digest }}

- name: Check out test data
if: steps.cache-testdata.outputs.cache-hit != 'true'
uses: actions/checkout@v3
with:
repository: nf-core/test-datasets
ref: circrna
path: test-datasets/

- name: Replace remote paths in samplesheets
run: |
for f in ${{ github.workspace }}/test-datasets/*.csv; do
sed -i "s=https://raw.githubusercontent.com/nf-core/test-datasets/circrna/=${{ github.workspace }}/test-datasets/=g" $f
echo "========== $f ============"
cat $f
echo "========================================"
done;

- name: Run pipeline with test data
run: |
nextflow run ${GITHUB_WORKSPACE} -profile test,docker --outdir ./results
nextflow run ${GITHUB_WORKSPACE} -profile test_cache,docker --outdir ./results --test_data_base ${{ github.workspace }}/test-datasets
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
[![GitHub Actions CI Status](https://github.com/nf-core/circrna/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/circrna/actions?query=workflow%3A%22nf-core+CI%22)
[![GitHub Actions Linting Status](https://github.com/nf-core/circrna/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/circrna/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/circrna/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)

[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/)
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A522.10.1-22aa62.svg)](https://www.nextflow.io/)
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
Expand Down
7 changes: 4 additions & 3 deletions assets/multiqc_config.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
report_comment: >
This report has been generated by the <a href="https://github.com/nf-core/circrna/releases/tag/1.0.0" target="_blank">nf-core/circrna</a>
analysis pipeline. For information about how to interpret these results, please see the
<a href="https://nf-co.re/circrna/1.0.0/docs/output" target="_blank">documentation</a>.
This report has been generated by the <a href="https://github.com/nf-core/circrna/releases/tag/dev"
target="_blank">nf-core/circrna</a> analysis pipeline. For information about how to
interpret these results, please see the <a href="https://nf-co.re/circrna/dev/docs/output"
target="_blank">documentation</a>.

report_section_order:
"nf-core-circrna-methods-description":
Expand Down
856 changes: 510 additions & 346 deletions conf/igenomes.config

Large diffs are not rendered by default.

28 changes: 14 additions & 14 deletions conf/test.config
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,20 @@ params {
config_profile_description = 'Minimal test dataset to check pipeline function'

// Limit resources so that this can run on GitHub Actions
max_cpus = 2
max_memory = 6.GB
max_time = 6.h
max_cpus = 2
max_memory = 6.GB
max_time = 6.h

// Input data for test data
input = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/samples.csv'
fasta = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/chrI.fa'
gtf = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/chrI.gtf'
mature = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/mature.fa'
tool = 'circexplorer2'
phenotype = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/phenotype.csv'
skip_trimming = false
module = 'circrna_discovery,mirna_prediction,differential_expression'
outdir = 'results/'
bsj_reads = 2
species = 'cel'
input = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/samples.csv'
fasta = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/chrI.fa'
gtf = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/chrI.gtf'
mature = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/reference/mature.fa'
tool = 'circexplorer2'
phenotype = 'https://raw.githubusercontent.com/nf-core/test-datasets/circrna/phenotype.csv'
skip_trimming = false
module = 'circrna_discovery,mirna_prediction,differential_expression'
outdir = 'results/'
bsj_reads = 2
species = 'cel'
}
34 changes: 34 additions & 0 deletions conf/test_cache.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
/*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Nextflow config file for running minimal tests
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Defines input files and everything required to run a fast and simple pipeline test.

Use as follows:
nextflow run nf-core/circrna -profile test,<docker/singularity> --outdir <OUTDIR>

----------------------------------------------------------------------------------------
*/

params {
config_profile_name = 'Test profile'
config_profile_description = 'Minimal test dataset to check pipeline function'

// Limit resources so that this can run on GitHub Actions
max_cpus = 2
max_memory = 6.GB
max_time = 6.h

// Test input data
input = "${params.test_data_base}/samples.csv"
fasta = "${params.test_data_base}/reference/chrI.fa"
gtf = "${params.test_data_base}/reference/chrI.gtf"
mature = "${params.test_data_base}/reference/mature.fa"
tool = "circexplorer2"
phenotype = "${params.test_data_base}/phenotype.csv"
skip_trimming = false
module = "circrna_discovery,mirna_prediction,differential_expression"
outdir = "results/"
bsj_reads = 2
species = "cel"
}
12 changes: 8 additions & 4 deletions main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,14 @@ nextflow.enable.dsl = 2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/

// TODO nf-core: Remove this line if you don't need a FASTA file
// This is an example of how to use getGenomeAttribute() to fetch parameters
// from igenomes.config using `--genome`
params.fasta = WorkflowMain.getGenomeAttribute(params, 'fasta')
params.fasta = WorkflowMain.getGenomeAttribute(params, 'fasta')
params.gtf = WorkflowMain.getGenomeAttribute(params, 'gtf')
params.bwa = WorkflowMain.getGenomeAttribute(params, 'bwa')
params.star = WorkflowMain.getGenomeAttribute(params, 'star')
params.bowtie = WorkflowMain.getGenomeAttribute(params, 'bowtie')
params.bowtie2 = WorkflowMain.getGenomeAttribute(params, 'bowtie2')
params.mature = WorkflowMain.getGenomeAttribute(params, 'mature')
FriederikeHanssen marked this conversation as resolved.
Show resolved Hide resolved
params.species = WorkflowMain.getGenomeAttribute(params, 'species_id')

/*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down
2 changes: 1 addition & 1 deletion modules/local/circexplorer2/filter/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ process CIRCEXPLORER2_FILTER {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
tuple val(meta), path(txt)
Expand Down
2 changes: 1 addition & 1 deletion modules/local/ciriquant/filter/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ process CIRIQUANT_FILTER {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
tuple val(meta), path(gtf)
Expand Down
2 changes: 1 addition & 1 deletion modules/local/dcc/filter/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ process DCC_FILTER {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
tuple val(meta), path(txt)
Expand Down
2 changes: 1 addition & 1 deletion modules/local/segemehl/filter/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ process SEGEMEHL_FILTER {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
tuple val(meta), path(results)
Expand Down
2 changes: 1 addition & 1 deletion modules/local/star/sjdb/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ process SJDB {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
path(sjdb)
Expand Down
2 changes: 1 addition & 1 deletion modules/local/stringtie/prepde/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ process STRINGTIE_PREPDE {

script:
"""
for file in \$(ls *.gtf); do sample_id=\${file%".transcripts.gtf"}; touch samples.txt; printf "\$sample_id\t\$file\n" >> samples.txt ; done
for file in \$(ls *.gtf); do sample_id=\${file%".transcripts.gtf"}; touch samples.txt; printf "\$sample_id\t\$file\\n" >> samples.txt ; done

prepDE.py -i samples.txt

Expand Down
2 changes: 1 addition & 1 deletion modules/local/targetscan/database/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ process TARGETSCAN_DATABASE {
conda "conda-forge::sed=4.7"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
'nf-core/ubuntu:20.04' }"

input:
path(mature)
Expand Down
16 changes: 5 additions & 11 deletions nextflow.config
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,9 @@ params {
genome = null
igenomes_base = 's3://ngi-igenomes/igenomes'
igenomes_ignore = false
bowtie = null
bowtie2 = null
bwa = null
hisat2 = null
hisat2_build_memory = '200.GB'
segemehl = null
star = null
gtf = null
FriederikeHanssen marked this conversation as resolved.
Show resolved Hide resolved
mature = null
species = null
save_reference = true

// Trimming
Expand Down Expand Up @@ -219,8 +212,9 @@ profiles {
executor.cpus = 4
executor.memory = 8.GB
}
test { includeConfig 'conf/test.config' }
test_full { includeConfig 'conf/test_full.config' }
test { includeConfig 'conf/test.config' }
test_full { includeConfig 'conf/test_full.config' }
test_cache { includeConfig 'conf/test_cache.config' }
}

// Set default registry for Apptainer, Docker, Podman and Singularity independent of -profile
Expand Down Expand Up @@ -280,8 +274,8 @@ manifest {
homePage = 'https://github.com/nf-core/circrna'
description = """Quantification, miRNA target prediction and differential expression analysis of circular RNAs"""
mainScript = 'main.nf'
nextflowVersion = '!>=23.04.0'
version = '1.0.0'
nextflowVersion = '!>=22.10.1'
version = 'dev'
doi = ''
}

Expand Down
10 changes: 0 additions & 10 deletions workflows/circrna.nf
Original file line number Diff line number Diff line change
Expand Up @@ -50,16 +50,6 @@ for (param in checkPathParamList) { if (param) { file(param, checkIfExists: true
// Check mandatory parameters
if (params.input) { ch_input = file(params.input) } else { exit 1, 'Input samplesheet not specified!' }

// Genome params
params.fasta = params.genome ? params.genomes[ params.genome ].fasta ?: false : false
params.gtf = params.genome ? params.genomes[ params.genome ].gtf ?: false : false
params.bwa = params.genome && params.tool.contains('ciriquant') ? params.genomes[ params.genome ].bwa ?: false : false
params.star = params.genome && ( params.tool.contains('circexplorer2') || params.tool.contains('dcc') || params.tool.contains('circrna_finder') ) ? params.genomes[ params.genome ].star ?: false : false
params.bowtie = params.genome && params.tool.contains('mapsplice') ? params.genomes[ params.genome ].bowtie ?: false : false
params.bowtie2 = params.genome && params.tool.contains('find_circ') ? params.genomes[ params.genome ].bowtie2 ?: false : false
params.mature = params.genome && params.module.contains('mirna_prediction') ? params.genomes[ params.genome ].mature ?: false : false
params.species = params.genome ? params.genomes[ params.genome ].species_id ?: false : false

ch_phenotype = params.phenotype && params.module.contains('differential_expression') ? file(params.phenotype, checkIfExists:true) : Channel.empty()
ch_fasta = params.fasta ? file(params.fasta) : 'null'
ch_gtf = params.gtf ? file(params.gtf) : 'null'
Expand Down