* Add comment line for consistency
* Remove all functions.nf
* Remove include functions.nf and publishDir options
* Replace options.args3 with task.ext.args3 - 3 modules
* Replace options.args3 with task.ext.args3 - 17 modules
* Replace {task.cpus} with task.cpus
* Replace off on off off off off off off off on off on off on off off off on off off off on on off off off on on off off off off off off off on off off off off on off on on off off off on on on on off off off on off on on off on on off off on on on off on on off on off off off off on off off off on off off on off on off off off on on off on off on off off on off off off on off off off on off off off off on off off off on on on off on on off off on off on on on off on on off on on on off off off off off on on off off on off off off off off on off off on on off on on off on off off off on off off off off on on off on off off on off off on off on off off off off off off off off on on off on off off off.args with
* Add def args = task.ext.args line to all modules in script section
* Replace options.args with args and args_list
* Initialise args2 and args3 properly
* Replace container syntax
* Revert container changes for cellranger/mkref
* Replace getProcessName in all modules
* Replace getSoftwareName in all modules
* Unify modules using VERSION variable
* Replae options.suffix with task.ext.suffix
* Remove NF version restriction for CI
* Bump NF version in README
* Replace task.process.tokenize logic with task.process
* Minor tweaks to unify syntax in tests main.nf
* Add a separate nextflow.config for each module
* Transfer remaining module options to nextflow.config
* Remove addParams from tests main.nf
* Remove TODO statements
* Use -c to import module specific config
* Bump NF version to 21.10.3
* Fix tests for artic/minion
* Fix broken publishDir syntax
* Standardise and fix obvious failing module tests
* Remove kronatools to krona
* Comment out tags in subworkflow test.yml
* Fix failing module tests
* Add consistent indentation to nextflow.config
* Comment out subworklow definitions
* Fix kallistobustools/ref
* Fix rmarkdownnotebook
* Fix jupyternotebook
* Quote task.process
* Add plink2/vcf to pytest_modules.yml
* Remove NF_CORE_MODULES_TEST from pytest CI
* Fix more tests
* Move bacteroides_fragilis to prokaryotes folder
* Fix cooler merge tests
* Fix kallistobustools/count tests
* Fix kallistobustools/ref tests
* Update test_10x_1_fastq_gz file for kallistobustools/count tests
* Fix bcftools/query tests
* Fix delly/call tests
* Fix cooler/zoomify tests
* Fix csvtk/split tests
* Fix gatk4/intervallisttools tests
* Fix gatk4/variantfiltration
* Fix pydamage/filter tests
* Fix test data for unicycler
* Fix gstama/collapse module
* Fix leehom tests
* Fix metaphlan3 tests
* Fix pairtools/select tests
* Update nextflow.config
* Update nextflow.config
* feat: update syntax
* Fix arriba tests
* Fix more failing tests
* Update test syntax
* Remove comments from tests nextflow.config
* Apply suggestions from code review
* Fix kallistobustools/count module
* Update dumpsoftwareversions module
* Update custom/dumpsoftwareversions
* Add args2 to untar module
* Update leftover modules
* Remove last remaining addParams
Co-authored-by: JoseEspinosa <kadomu@gmail.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: MaxUlysse <max.u.garcia@gmail.com>
* ci: Remove pytest_subworkflows
* ci(bam_sort_samtools): Depend on paths-filter instead of pytest-workflow
Co-authored-by: Harshil Patel <drpatelhh@gmail.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: Jose Espinosa-Carrasco <kadomu@gmail.com>
* ci: Revert back to one job branch
* ci(align_bowtie2): Run tests that depend on bam_sort_samtools
* ci: Fix anchor not being created yet
* ci: Update sra_fastq tags and pytest_modules
* fix(bam_sort_samtools): Update nextflow.config with params
* test(subworkflows): Update gatk_create_som_pon tags
* ci: Point to subworkflow_hacks branch of nf-core tools
Co-authored-by: Harshil Patel <drpatelhh@gmail.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: Jose Espinosa-Carrasco <kadomu@gmail.com>
* feat(subworkflows): Add align_bowtie2 subworkflow
For testing CI setup
* test(align_bowtie2): Add initial list of changes to test
* test(align_bowtie2): Add initial test
* refactor: Use tags to run subworkflows ci
For every underlying module used by workflow and allow the modules
pytest-modules definition be the source of truth.
* refactor: Use individual directories for subworkflows
* docs(align_bowtie2): Add initial meta.yml
Copied most of it from the bowtie2/align module.
* fix(align_bowtie2): Fix module include paths
* test(bam_sort_samtools): Add initial test
* ci(bam_sort_samtools): Add modules that trigger the tag
* test(bam_stats_samtools): Add initial test
* ci(bam_stats_samtools): Add keys to pick up changes
* docs(bam_samtools): Add initial meta.yml
* test(align_bowtie2): Fix path to subworkflow
* test(align_bowtie2): Update entry point
* fix(bam_sort_samtools): Update include paths
* test(bam_sort_samtools): Fix path
* style: Clean up addParams
* test(samtools_sort): Add suffix for test
* test(align_bowtie2): Add samtools_options for suffix
* test(bam_stats_samtools): Update path
* test(bam_stats_samtools): Use stats input
Otherwise it's just an example of how it's used in the bam_sort_samtools subworkflow
* ci(linting): Skip module linting of subworkflows
* ci(linting): Clean up startsWith statement
* test(bam_stats_samtools): Use single end test data for single end test
* test(bam_stats_samtools): Add expected files
* test(align_bowtie2): Add paired-end test
* test(align_bowtie2): Sort order of output
* test(align_bowtie2): Update hashes
* docs(align_bowtie2): Fix typo
* test(align_bowtie2): Update samtools output names
* test(align_bowtie2): Remove md5sums for bam/bai
* feat(subworkflows): Add nextflow.configs
These can be used for default settings in the future. They can then be
included in the conf/modules.config so that the params don't have to be
duplicated in the root nextflow.config.
* docs(subworkflows): Include modules instead of tools
* fix: Update to versions
* chore(align_bowtie2): Remove duplicate tag
* style: Format yamls
* test(subworkflows): Only check versions for modules
* chore: Update subworkflows to match rnaseq dev
* fix(subworkflows): Update paths
* fix(bam_sort_samtools): Fix sort parameters for testing
* Apply suggestions from code review
Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
* docs: Update TODOs with a message
* ci: Try using a matrix for strategy
* ci: Try passing an array
* Revert "ci: Try passing an array"
This reverts commit d3611fcd8332bbb9a8501e8dd299d0a623aaecaa.
Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
* Update fastqc to produce multi-version versions.yml
* Update readme and pull request template
* Fix markdownlint
* remove variable
* Change publish dir to lowercase
* Re-add getSoftwareName
* Add custom pytest-workflow test to ensure versions.yml is valid
* Add docstring
* Remove __init__.py as it is not needed
* Remove changes to README, since this part went to nf-co.re
* Add NF_CORE_TEST env var
* Fix editorconfig
* Add additional consistency checks for versions.yml
* Update multiqc module
* Fix output channel
* feat(homer): Add initial makeTagDirectory
* feat(homer): Add initial findPeaks module
* feat(homer): Update with new options
See 1d30e2c21a
* fix(homer): Correct findpeaks process name
* fix(homer): Takes a bam file instead of bed
* feat(homer): Add initial makeTagDirectory test
* fix(homer): Hardcode genome and configureHomer
I'd like to modularize configureHomer, but I need to figure out how
exactly the genomes work.
* fix(homer): bam => bed
Bam requires samtools to be present, which it's not in this docker image
* feat(homer): Add initial configureHomer script
* ci(homer): Add initial test
* test(homer): Reproducible configuration workaround
- I can't run both tests(one file and two files) at the same time because it breaks
- I can't copy the genome stuff from the configurehomer module because it's read only
- So I can't make the makeTagDirectory module depend on configureHomer
* test(homer): Add placeholder annotatepeaks
The required inputs are necessarily required for all workflows from what
I've used, but I'll need to look at the actual docs
* test(homer): Add missing B.bed
* test(homer): Rename two => groseq
Then all of the various workflows that homer provides can be e2e tested
* feat(homer): Add initial makeUCSCfile module
* test(homer): Add start to makeUCSCfile testing
* chore(homer): Add various cleanups
* test(homer): Rewrite annotatepeaks
Not passing yet
* test(homer): Rewrite configurehomer
* test(homer): Rewrite findpeaks
Still failing
* test(homer): Rewrite makeucscfile
Not passing yet
* test(homer): Rewrite maketagdirectory
All homer modules now follow the new structure. Time to make them pass.
* test(homer): Fix typo for workflow name
* fix(homer): Use correct container
* fix(homer): Accept fasta in maketagdirectory
Apparently all of the homer stuff can just take any old fasta and you
don't need to configure the genome ahead of time with configureHomer
* test(homer): makeTagDirectory passes now
* fix(homer): Update containers in makeucscfile
* test(homer): Rewrite makeucscfile
Takes input from maketagdirectory which is how the module should be used
* fix(homer): Update makeUCSCFile bedgraph path
* test(homer): Update makeucscfile expected output
* fix(homer): Update containers in findpeaks
* fix(homer): Change findpeaks args
The user is just going to have to know what they're doing for now
* test(homer): findPeaks rewrite with tagDir input
* test(homer): Update expected files for findPeaks
And bump filters
* style: Appease editorconfig
* ci: Remove old workflow
* tests(homer): Add md5sums
* test(homer): Add meta test
* style(homer): Capitalize HOMER
* docs(homer): Add maketagdirectory meta.yml
* docs(homer): Add makeucscfile meta.yml
* docs(homer): Add findpeaks meta.yml
* test(homer): Update to new test data standards
* chore: Remove stuff that got revived in the rebase
* chore: software => modules
* test(homer): Update tags
* test(homer): Update annotatepeaks
* ci: Fix uploading of artifacts
GitHub actions doesn't like the / in the tags
* test(homer): Remove annotate md5sum
This is failing and breaking new tests
* test(homer): Use bams instead of beds
* test(homer): Fix meta maketagdirectory
* test(homer): Fix input in all tests
* test(homer): Move back to bed files
Forgot samtools isn't present
* chore(homer): Add TODOs for tests
* test(homer): Add bed format arg
* test(homer): Update md5sums
* test(homer): Fix tags tsvs
* style(homer): Appease nf-core linting
* docs(homer): Be in line with what is in the main.nf file
Co-authored-by: Kevin Menden <kevin.menden@live.com>
Co-authored-by: Kevin Menden <kevin.menden@live.com>
* Update README
* Rename pytest_software.yml to pytest_modules.yml
* Rename main software directory to modules
* Remove deprecated modules
* Rename tests software to modules
* Replace paths for tests in pytest_modules.yml
* Replace software with modules in Github Actions
* Replace software with modules in main.nf tests
* Rename software to modules in test.yml
* Update functions.nf for publish_by_id
* Pass a list of publish_by_id instead of a string
* Remove NF version
* Rename code linting file
* Run separate workflow for nf-core modules lint
* Adjust nf-core update comment
* Comment out linting from pytest-workflow.yml
* Remove commented out linting code from pytest-workflow.yml
* Adjust spacing
* Adjust spacing again
* Move NF version to job level for linting
* Add CAPSULE_LOG none env when installing NF
* Remove NXF_ANSI_LOG env for linting
* Revert changes
* ci: Add modules lint step
Moved it ahead of the nextflow install so ideally it'll fail before we
bother doing any more setup
* ci: _ => /
* Update tests/config/pytest_software.yml
Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>