From 4ff89cbbeadc01b42d7867654f9a19d2e07850e3 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 10 Jun 2025 17:15:13 +0100 Subject: [PATCH 01/26] basic nf-test yml file (cherry picked from commit fc744985cf2f011e5bb3353ce5af0345f486cf8c) --- nf-test.yaml | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 nf-test.yaml diff --git a/nf-test.yaml b/nf-test.yaml new file mode 100644 index 0000000..335f491 --- /dev/null +++ b/nf-test.yaml @@ -0,0 +1,47 @@ +on: + # PRs and push to main + push: + branches: + - main + pull_request: + branches: + - main +name: Test nf-test installation +jobs: + test: + runs-on: ubuntu-latest + name: A test to install nf-test + strategy: + matrix: + NF-TEST_VER: + - "0.9.2" + with-pdiff: + - true + - false +steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: "20" + cache: "npm" + - name: Install dependencies + run: npm ci + - name: Build + run: npm run build + - uses: actions/setup-java@v4 + with: + distribution: "temurin" + java-version: "17" + - uses: nf-core/setup-nextflow@v2 + + - uses: actions/setup-python@v5 + with: + python-version: "3.11" + + - name: nf-test install action step + uses: ./ + with: + version: "${{ matrix.NF-TEST_VER }}" + install-pdiff: "${{ matrix.with-pdiff }}" + - name: Smoke test + run: nf-test version \ No newline at end of file From 21fc7958ea3b48f20928f052d219b440fe1d0898 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Wed, 11 Jun 2025 11:33:10 +0100 Subject: [PATCH 02/26] move nf-test.yaml under github dir (cherry picked from commit 694cf0a125787f699d6f408b4876b25ec1c9d377) --- .github/workflows/nf-test.yaml | 47 ++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/workflows/nf-test.yaml diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml new file mode 100644 index 0000000..335f491 --- /dev/null +++ b/.github/workflows/nf-test.yaml @@ -0,0 +1,47 @@ +on: + # PRs and push to main + push: + branches: + - main + pull_request: + branches: + - main +name: Test nf-test installation +jobs: + test: + runs-on: ubuntu-latest + name: A test to install nf-test + strategy: + matrix: + NF-TEST_VER: + - "0.9.2" + with-pdiff: + - true + - false +steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: "20" + cache: "npm" + - name: Install dependencies + run: npm ci + - name: Build + run: npm run build + - uses: actions/setup-java@v4 + with: + distribution: "temurin" + java-version: "17" + - uses: nf-core/setup-nextflow@v2 + + - uses: actions/setup-python@v5 + with: + python-version: "3.11" + + - name: nf-test install action step + uses: ./ + with: + version: "${{ matrix.NF-TEST_VER }}" + install-pdiff: "${{ matrix.with-pdiff }}" + - name: Smoke test + run: nf-test version \ No newline at end of file From 87bab307d18082d829bd96995a592541d6b6509b Mon Sep 17 00:00:00 2001 From: dishalodha Date: Wed, 11 Jun 2025 12:07:16 +0100 Subject: [PATCH 03/26] update the nf-test.yaml to basic format (cherry picked from commit 6b33ac792a7791f5707ce326b64f31089b3d544a) --- .github/workflows/nf-test.yaml | 61 ++++++++++++---------------------- nf-test.yaml | 47 -------------------------- 2 files changed, 22 insertions(+), 86 deletions(-) delete mode 100644 nf-test.yaml diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index 335f491..45d1752 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -1,47 +1,30 @@ -on: - # PRs and push to main - push: - branches: - - main - pull_request: - branches: - - main -name: Test nf-test installation +name: NF Tests +on: [push, pull_request] jobs: test: runs-on: ubuntu-latest - name: A test to install nf-test - strategy: - matrix: - NF-TEST_VER: - - "0.9.2" - with-pdiff: - - true - - false -steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: "20" - cache: "npm" - - name: Install dependencies - run: npm ci - - name: Build - run: npm run build - - uses: actions/setup-java@v4 + + steps: + - name: Checkout + uses: actions/checkout@v4 with: - distribution: "temurin" - java-version: "17" - - uses: nf-core/setup-nextflow@v2 + fetch-depth: 0 - - uses: actions/setup-python@v5 + - name: Set up JDK 11 + uses: actions/setup-java@v2 with: - python-version: "3.11" + java-version: '11' + distribution: 'adopt' - - name: nf-test install action step - uses: ./ + - name: Setup Nextflow latest-edge + uses: nf-core/setup-nextflow@v1 with: - version: "${{ matrix.NF-TEST_VER }}" - install-pdiff: "${{ matrix.with-pdiff }}" - - name: Smoke test - run: nf-test version \ No newline at end of file + version: "latest-edge" + + - name: Install nf-test + run: | + wget -qO- https://get.nf-test.com | bash + sudo mv nf-test /usr/local/bin/ + + - name: Run Tests + run: nf-test test --ci #this is used to prevent updating the snapshot \ No newline at end of file diff --git a/nf-test.yaml b/nf-test.yaml deleted file mode 100644 index 335f491..0000000 --- a/nf-test.yaml +++ /dev/null @@ -1,47 +0,0 @@ -on: - # PRs and push to main - push: - branches: - - main - pull_request: - branches: - - main -name: Test nf-test installation -jobs: - test: - runs-on: ubuntu-latest - name: A test to install nf-test - strategy: - matrix: - NF-TEST_VER: - - "0.9.2" - with-pdiff: - - true - - false -steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: "20" - cache: "npm" - - name: Install dependencies - run: npm ci - - name: Build - run: npm run build - - uses: actions/setup-java@v4 - with: - distribution: "temurin" - java-version: "17" - - uses: nf-core/setup-nextflow@v2 - - - uses: actions/setup-python@v5 - with: - python-version: "3.11" - - - name: nf-test install action step - uses: ./ - with: - version: "${{ matrix.NF-TEST_VER }}" - install-pdiff: "${{ matrix.with-pdiff }}" - - name: Smoke test - run: nf-test version \ No newline at end of file From b71deca77b1e4a54825d5437dfc9daa5bc25dab2 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Wed, 11 Jun 2025 15:45:49 +0100 Subject: [PATCH 04/26] update the version of nextflow (cherry picked from commit cff3d46d82d9b3d74e3ca1975571a6716c2409b0) --- .github/workflows/nf-test.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index 45d1752..1b993b2 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -17,9 +17,9 @@ jobs: distribution: 'adopt' - name: Setup Nextflow latest-edge - uses: nf-core/setup-nextflow@v1 + uses: nf-core/setup-nextflow@v2 with: - version: "latest-edge" + version: "latest-stable" - name: Install nf-test run: | From a16a0596acfd8d14eaa2edb0006d545888a15ebc Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Jun 2025 11:55:05 +0100 Subject: [PATCH 05/26] update nextflow version (cherry picked from commit bb9f5a36d6c2e4d7dd3b7d76ad5266e060987be2) --- .github/workflows/nf-test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index 1b993b2..c4bc9b0 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -16,7 +16,7 @@ jobs: java-version: '11' distribution: 'adopt' - - name: Setup Nextflow latest-edge + - name: Setup Nextflow latest uses: nf-core/setup-nextflow@v2 with: version: "latest-stable" From 015c2095fc756f62dcc734bc7ff224e3f44fdbc3 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Feb 2026 14:32:51 +0000 Subject: [PATCH 06/26] update nf-test --- .github/workflows/nf-test.yaml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index c4bc9b0..a07b4e0 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -1,5 +1,10 @@ name: NF Tests on: [push, pull_request] + +env: + NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity + NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity + NFTEST_VER: "0.9.0" jobs: test: runs-on: ubuntu-latest @@ -11,7 +16,7 @@ jobs: fetch-depth: 0 - name: Set up JDK 11 - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: java-version: '11' distribution: 'adopt' @@ -22,9 +27,9 @@ jobs: version: "latest-stable" - name: Install nf-test - run: | - wget -qO- https://get.nf-test.com | bash - sudo mv nf-test /usr/local/bin/ + uses: nf-core/setup-nf-test@v1 + with: + version: ${{ env.NFTEST_VER }} - name: Run Tests run: nf-test test --ci #this is used to prevent updating the snapshot \ No newline at end of file From 021a9d19d4a69d3c0838245428c8009d1486c169 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Thu, 19 Feb 2026 12:35:04 +0000 Subject: [PATCH 07/26] added singularity --- .github/workflows/nf-test.yaml | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index a07b4e0..c7aff96 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -8,7 +8,14 @@ env: jobs: test: runs-on: ubuntu-latest - + name: nf-tes + needs: [nf-test-changes] + if: ( needs.nf-test-changes.outputs.paths != '[]' ) + strategy: + fail-fast: false + matrix: + path: ["${{ fromJson(needs.nf-test-changes.outputs.paths) }}"] + profile: [singularity] steps: - name: Checkout uses: actions/checkout@v4 @@ -31,5 +38,18 @@ jobs: with: version: ${{ env.NFTEST_VER }} + - name: Setup apptainer + uses: eWaterCycle/setup-apptainer@main + + - name: Set up Singularity + run: | + mkdir -p $NXF_SINGULARITY_CACHEDIR + mkdir -p $NXF_SINGULARITY_LIBRARYDIR + + - name: Set up Python + uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5 + with: + python-version: "3.11" + - name: Run Tests - run: nf-test test --ci #this is used to prevent updating the snapshot \ No newline at end of file + run: nf-test test --ci --changed-since HEAD^ #this is used to prevent updating the snapshot From 7604ee9a804f45cca1ab95ec0bbf144316520bac Mon Sep 17 00:00:00 2001 From: dishalodha Date: Thu, 19 Feb 2026 12:36:28 +0000 Subject: [PATCH 08/26] correct nf-test --- .github/workflows/nf-test.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index c7aff96..0078a5b 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -52,4 +52,4 @@ jobs: python-version: "3.11" - name: Run Tests - run: nf-test test --ci --changed-since HEAD^ #this is used to prevent updating the snapshot + run: nf-test test --ci #this is used to prevent updating the snapshot From ee0e8cf2e4beffccd4f01130f122980c917e89b9 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Thu, 19 Feb 2026 12:38:48 +0000 Subject: [PATCH 09/26] correct nf-test --- .github/workflows/nf-test.yaml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/nf-test.yaml b/.github/workflows/nf-test.yaml index 0078a5b..d7b570c 100644 --- a/.github/workflows/nf-test.yaml +++ b/.github/workflows/nf-test.yaml @@ -8,14 +8,7 @@ env: jobs: test: runs-on: ubuntu-latest - name: nf-tes - needs: [nf-test-changes] - if: ( needs.nf-test-changes.outputs.paths != '[]' ) - strategy: - fail-fast: false - matrix: - path: ["${{ fromJson(needs.nf-test-changes.outputs.paths) }}"] - profile: [singularity] + steps: - name: Checkout uses: actions/checkout@v4 From 2fa42bb9784c45fa6553c2a13abb36dfeec4d612 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Fri, 13 Mar 2026 12:35:22 +0000 Subject: [PATCH 10/26] correct the linting --- modules/ensembl/annotation/dumpanno/meta.yml | 48 ++++----- modules/ensembl/database/dbfactory/meta.yml | 39 ++++---- .../ensembl/download/assemblydata/meta.yml | 45 ++++----- modules/ensembl/download/genbank/meta.yml | 34 ++++--- modules/ensembl/dump/genomestats/meta.yml | 47 +++++---- modules/ensembl/fasta/dumpfastanuc/meta.yml | 53 ++++++---- .../ensembl/fasta/dumpfastapeptide/meta.yml | 53 ++++++---- modules/ensembl/genbank/extractgb/meta.yml | 98 ++++++++++++------- modules/ensembl/gff3/dumpgff3/meta.yml | 53 ++++++---- modules/ensembl/gff3/validation/meta.yml | 53 +++++----- modules/ensembl/manifest/integrity/meta.yml | 69 ++++++------- modules/ensembl/manifest/maker/meta.yml | 49 +++------- 12 files changed, 351 insertions(+), 290 deletions(-) diff --git a/modules/ensembl/annotation/dumpanno/meta.yml b/modules/ensembl/annotation/dumpanno/meta.yml index e474f32..8d6bd20 100644 --- a/modules/ensembl/annotation/dumpanno/meta.yml +++ b/modules/ensembl/annotation/dumpanno/meta.yml @@ -1,7 +1,8 @@ ---- name: "annotation_dumpanno" -description: This module is used to dump the functional annotation of a genome from core databases. +description: + This module is used to dump the functional annotation of a genome from + core databases. keywords: - container @@ -9,42 +10,29 @@ keywords: - docker - ensembl-legacy-scripts - fasta - + tools: - "annotation": homepage: "https://github.com/Ensembl/nextflow_modules" - description: "This module handles all annotation-related interactions with the core database, including annotation dumping and processing" - license: ['Apache License version 2.0'] + description: + "This module handles all annotation-related interactions with the\ + \ core database, including annotation dumping and processing" + license: ["Apache License version 2.0"] + identifier: "" input: # Only when we have meta - - meta: - type: map - description: | - A meta map including 'core database information'. - e.g. [ id:'db_name', server_details:[ host:'db' ] ] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - + - - db: {} output: - - meta: - type: map - description: | - Database containing meta information. - e.g. [ id:'db_name', server_details:[ host:'db' ] ] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - - - functional_annotation.json: - type: map - description: | - Functional annotation file containing biotypes. - e.g [ db:'database name', file("*.json") ] - pattern: ".json" - + - functional_annotation: + - db: {} + - functional_annotation: {} + - "*.json": {} - versions: - type: file - description: File containing software versions. - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing software versions. + pattern: "versions.yml" authors: - "@ensembl-dev" maintainers: diff --git a/modules/ensembl/database/dbfactory/meta.yml b/modules/ensembl/database/dbfactory/meta.yml index d0cb82f..25f5444 100644 --- a/modules/ensembl/database/dbfactory/meta.yml +++ b/modules/ensembl/database/dbfactory/meta.yml @@ -1,6 +1,7 @@ ---- name: "database_dbfactory" -description: Generate a list of one or more databases plus some associated meta table information. +description: + Generate a list of one or more databases plus some associated meta table + information. keywords: - container @@ -13,28 +14,28 @@ tools: - database: description: "Modules which function to read or write information from core databases." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - server: - type: map - description: "Groovy Map containing mysql server host, port, user and password - meta and file of JSON database filter information." - e.g. [[ host:"mysql-host-test-prod" ], [ filter_map:"dbrename_re" ]] - - filtermap: - type: map - description: "Prefix to filter core databases. [default: none]" - + - - server: + type: map + description: > + Groovy Map containing mysql server host, port, user and password meta and + file of JSON database filter information. + e.g. [[ host:"mysql-host-test-prod" ], [ filter_map:"dbrename_re" ]] + - filter_map: {} output: - dbs_meta_json: - type: file - description: "JSON file containing database metadata." - pattern: "dbs.json" + - dbs.json: + type: file + description: "JSON file containing database metadata." + pattern: "dbs.json" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/download/assemblydata/meta.yml b/modules/ensembl/download/assemblydata/meta.yml index 0f93a86..63372ea 100644 --- a/modules/ensembl/download/assemblydata/meta.yml +++ b/modules/ensembl/download/assemblydata/meta.yml @@ -1,6 +1,7 @@ ---- name: "download_assemblydata" -description: Generate a list of one or more databases plus some associated meta table information. +description: + Generate a list of one or more databases plus some associated meta table + information. keywords: - ensembl-genomio @@ -13,34 +14,28 @@ keywords: tools: - download: - description: "Modules which function to download information or various data from externally hosted resources." + description: + "Modules which function to download information or various data from\ + \ externally hosted resources." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing A single INSDC GCA or NCBI 'amended' GCF genome assembly accession meta information. - e.g. `[ accession:'GCA_000000000.1' ]` - + - - meta: + type: map + description: | + Groovy Map containing A single INSDC GCA or NCBI 'amended' GCF genome assembly accession meta information. + e.g. `[ accession:'GCA_000000000.1' ]` output: - - min_set: - type: map - description: "Groovy Map including various genome assembly data files (.txt, .fna, .gbff) into compressed Gzip archives." - e.g. [ accession:'GCA_000000000.1', file("*_assembly_report.txt"), file("*_genomic.fna.gz"), file("*_genomic.gbff.gz") ] - pattern: (*.txt, *.fna.gz, *.gbff.gz) - - opt_set: - type: map - description: "Groovy Map including various genome assembly data files (.txt, .faa, .gff) into compressed Gzip archives." - e.g. [ accession:'GCA_000000000.1', file("*_assembly_report.txt"), file("*_genomic.gff.gz"), file("*_genomic.gbff.gz") ] - pattern: (*.txt, *.fna.gz, *.gbff.gz) + - min_set: [] + - opt_set: [] - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/download/genbank/meta.yml b/modules/ensembl/download/genbank/meta.yml index 79b8e31..151d5b9 100644 --- a/modules/ensembl/download/genbank/meta.yml +++ b/modules/ensembl/download/genbank/meta.yml @@ -1,4 +1,3 @@ ---- name: "download_genbank" description: Download a single sequence from NCBI GenBank. @@ -12,27 +11,30 @@ keywords: tools: - download: - description: "Modules which function to download information or various data from externally hosted resources." + description: + "Modules which function to download information or various data from\ + \ externally hosted resources." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - accession: - type: map - description: Meta map including sequence accession. Sequence record associated with - NCBI accession (e.g. NC_0-9+, NM_0-9+, NT_0-9+, NP_0-9+) - e.g. [[ accession:'NC_12341']] - + - - meta: {} output: - gb_sequence: - type: file - description: A sequence record outfile in genbank format. - pattern: "output.gb" + - meta: + type: file + description: A sequence record outfile in genbank format. + pattern: "output.gb" + - output.gb: + type: file + description: A sequence record outfile in genbank format. + pattern: "output.gb" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/dump/genomestats/meta.yml b/modules/ensembl/dump/genomestats/meta.yml index 65ebf0a..1e69215 100644 --- a/modules/ensembl/dump/genomestats/meta.yml +++ b/modules/ensembl/dump/genomestats/meta.yml @@ -1,4 +1,3 @@ ---- name: "dump_genomestats" description: A module for dumping a core database keywords: @@ -10,29 +9,41 @@ keywords: tools: - dump: - description: "Modules which function to dump various forms of data from a core database." + description: + "Modules which function to dump various forms of data from a core\ + \ database." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - db: - type: map - description: "A meta map including 'core database name'." - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - + - - db: + type: map + description: > + A meta map including 'core database name'. + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', + ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" output: - core_stats: - type: map - description: "JSON file containing core database statistics (assembly and annotation)." - e.g [ db:"database name", file("core_stats.json") ] - pattern: "core_stats.json" + - db: + type: map + description: > + JSON file containing core database statistics (assembly and annotation). + e.g [ db:"database name", file("core_stats.json") ] + pattern: "core_stats.json" + - core_stats.json: + type: map + description: > + JSON file containing core database statistics (assembly and annotation). + e.g [ db:"database name", file("core_stats.json") ] + pattern: "core_stats.json" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/fasta/dumpfastanuc/meta.yml b/modules/ensembl/fasta/dumpfastanuc/meta.yml index 09f29c1..0b6c504 100644 --- a/modules/ensembl/fasta/dumpfastanuc/meta.yml +++ b/modules/ensembl/fasta/dumpfastanuc/meta.yml @@ -1,4 +1,3 @@ ---- name: "fasta_dumpfastanuc" description: A module for dumping core database gene module nucleotide fasta seqs @@ -12,29 +11,47 @@ keywords: tools: - "fasta": - description: "Modules which function to facilitate data deposition/retrieval of fasta sequences." + description: + "Modules which function to facilitate data deposition/retrieval of\ + \ fasta sequences." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - db: - type: map - description: "A meta map including 'core database name'." - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - + - - db: + type: map + description: > + A meta map including 'core database name'. + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', + ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" output: - nucleotide_fasta: - type: map - description: "Fasta file containing nucleotide sequence(s)." - e.g [ db:'database name', file("*_fasta_dna.fasta") ] - pattern: "*_fasta_dna.fasta" + - db: + type: map + description: > + Fasta file containing nucleotide sequence(s). + e.g [ db:'database name', file("*_fasta_dna.fasta") ] + pattern: "*_fasta_dna.fasta" + - fasta_dna: + type: map + description: > + Fasta file containing nucleotide sequence(s). + e.g [ db:'database name', file("*_fasta_dna.fasta") ] + pattern: "*_fasta_dna.fasta" + - "*.fasta": + type: map + description: > + Fasta file containing nucleotide sequence(s). + e.g [ db:'database name', file("*_fasta_dna.fasta") ] + pattern: "*_fasta_dna.fasta" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/fasta/dumpfastapeptide/meta.yml b/modules/ensembl/fasta/dumpfastapeptide/meta.yml index a4f81eb..3a02fcb 100644 --- a/modules/ensembl/fasta/dumpfastapeptide/meta.yml +++ b/modules/ensembl/fasta/dumpfastapeptide/meta.yml @@ -1,4 +1,3 @@ ---- name: "fasta_dumpfastapeptide" description: A module for dumping peptide FASTA sequences from core databases @@ -12,29 +11,47 @@ keywords: tools: - "fasta": - description: "Modules which function to facilitate data deposition/retrieval of fasta sequences." + description: + "Modules which function to facilitate data deposition/retrieval of\ + \ fasta sequences." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - db: - type: map - description: "A meta map including 'core database name'." - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - + - - db: + type: map + description: > + A meta map including 'core database name'. + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', + ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" output: - peptide_fasta: - type: map - description: "Fasta file containing peptide sequence(s)." - e.g [ db:'database name', file("*_fasta_pep.fasta") ] - pattern: "*_fasta_pep.fasta" + - db: + type: map + description: > + Fasta file containing peptide sequence(s). + e.g [ db:'database name', file("*_fasta_pep.fasta") ] + pattern: "*_fasta_pep.fasta" + - fasta_pep: + type: map + description: > + Fasta file containing peptide sequence(s). + e.g [ db:'database name', file("*_fasta_pep.fasta") ] + pattern: "*_fasta_pep.fasta" + - "*.fasta": + type: map + description: > + Fasta file containing peptide sequence(s). + e.g [ db:'database name', file("*_fasta_pep.fasta") ] + pattern: "*_fasta_pep.fasta" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/genbank/extractgb/meta.yml b/modules/ensembl/genbank/extractgb/meta.yml index 9ddcd0f..172113b 100644 --- a/modules/ensembl/genbank/extractgb/meta.yml +++ b/modules/ensembl/genbank/extractgb/meta.yml @@ -1,6 +1,7 @@ ---- name: "genbank_extractgb" -description: Parse a GenBank file and create cleaned up files and validate generated JSON files. +description: + Parse a GenBank file and create cleaned up files and validate generated + JSON files. keywords: - container @@ -12,49 +13,76 @@ keywords: tools: - "genbank": - description: "Modules with functions related to work with Genbank related data files." + description: + "Modules with functions related to work with Genbank related data\ + \ files." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing genome database meta information - e.g. `[ accession:'NC_XXXX.X' ]` - - gb_file: - type: file - description: | - File path to genbank formatted input file (*.gb) - e.g. `[gb_file("genome.gb")]` - + - - meta: + type: map + description: | + Groovy Map containing genome database meta information + e.g. `[ accession:'NC_XXXX.X' ]` + - gb_file: + type: file + description: | + File path to genbank formatted input file (*.gb) + e.g. `[gb_file("genome.gb")]` output: - genome: - type: file - description: Genome metadata (JSON) - pattern: "genome.json" + - meta: + type: file + description: Genome metadata (JSON) + pattern: "genome.json" + - genome.json: + type: file + description: Genome metadata (JSON) + pattern: "genome.json" - seq_regions: - type: file - description: Sequence region(s) meta (JSON) - pattern: "seq_region.json" + - meta: + type: file + description: Sequence region(s) meta (JSON) + pattern: "seq_region.json" + - seq_region.json: + type: file + description: Sequence region(s) meta (JSON) + pattern: "seq_region.json" - dna_fasta: - type: file - description: Genome nucleotide sequence(s) (FASTA) - pattern: "dna.fasta" + - meta: + type: file + description: Genome nucleotide sequence(s) (FASTA) + pattern: "dna.fasta" + - dna.fasta: + type: file + description: Genome nucleotide sequence(s) (FASTA) + pattern: "dna.fasta" - gene_gff: - type: file - description: Gene model information (GFF3) - pattern: "*.gff" + - meta: + type: file + description: Gene model information (GFF3) + pattern: "*.gff" + - "*.gff": + type: file + description: Gene model information (GFF3) + pattern: "*.gff" - pep_fasta: - type: file - description: Genome protein-coding gene amino acid sequence(s) (FASTA) - pattern: "pep.fasta" + - meta: + type: file + description: Genome protein-coding gene amino acid sequence(s) (FASTA) + pattern: "pep.fasta" + - pep.fasta: + type: file + description: Genome protein-coding gene amino acid sequence(s) (FASTA) + pattern: "pep.fasta" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/gff3/dumpgff3/meta.yml b/modules/ensembl/gff3/dumpgff3/meta.yml index 1d27a3c..2df6712 100644 --- a/modules/ensembl/gff3/dumpgff3/meta.yml +++ b/modules/ensembl/gff3/dumpgff3/meta.yml @@ -1,4 +1,3 @@ ---- name: "gff3_dumpgff3" description: write your description here @@ -11,29 +10,47 @@ keywords: tools: - "gff3": - description: "Modules for GFF3 validation, data deposition and retrieval from/into GFF3 file format" + description: + "Modules for GFF3 validation, data deposition and retrieval from/into\ + \ GFF3 file format" homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - db: - type: map - description: "A meta map including 'core database name'." - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" - + - - db: + type: map + description: > + A meta map including 'core database name'. + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', + ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" output: - gff3: - type: map - description: "GFF3 file containing gene model(s)." - e.g [ db:'database name', file("*.gff3") ] - pattern: "*.gff3" + - db: + type: map + description: > + GFF3 file containing gene model(s). + e.g [ db:'database name', file("*.gff3") ] + pattern: "*.gff3" + - gff3: + type: map + description: > + GFF3 file containing gene model(s). + e.g [ db:'database name', file("*.gff3") ] + pattern: "*.gff3" + - "*.gff3": + type: map + description: > + GFF3 file containing gene model(s). + e.g [ db:'database name', file("*.gff3") ] + pattern: "*.gff3" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/gff3/validation/meta.yml b/modules/ensembl/gff3/validation/meta.yml index 344861b..0a18747 100644 --- a/modules/ensembl/gff3/validation/meta.yml +++ b/modules/ensembl/gff3/validation/meta.yml @@ -1,4 +1,3 @@ ---- name: "gff3_validation" description: Check for proper validation of the GFF3 using GenomeTools. @@ -12,37 +11,39 @@ keywords: tools: - "gff3": - description: "Modules for GFF3 validation, data deposition and retrieval from/into GFF3 file format" + description: + "Modules for GFF3 validation, data deposition and retrieval from/into\ + \ GFF3 file format" homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - - gene_models: - type: file - description: GFF3 files - pattern: "*.{gff3}" - + - - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ id:'accession1' ]` + - gene_models: + type: file + description: GFF3 files + pattern: "*.{gff3}" output: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - gene_models: - type: file - description: All files used as entry - pattern: "*.{gff3}" + - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ id:'accession1' ]` + - gene_models.gff3: + type: file + description: All files used as entry + pattern: "*.{gff3}" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/manifest/integrity/meta.yml b/modules/ensembl/manifest/integrity/meta.yml index 44b8ec6..0f4df00 100644 --- a/modules/ensembl/manifest/integrity/meta.yml +++ b/modules/ensembl/manifest/integrity/meta.yml @@ -1,4 +1,3 @@ ---- name: "manifest_integrity" description: Check the data integrity of a set of genomic files, listed by their manifest. keywords: @@ -12,45 +11,47 @@ tools: - "manifest": description: "Nextflow modules for genomic data file manifest comparison/checking" homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - manifest_files: - type: file - description: Set of genomic data files - pattern: "*.{gff3,fasta,json}" - + - - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ id:'accession1' ]` + - manifest_files: + type: file + description: Set of genomic data files + pattern: "*.{gff3,fasta,json}" output: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - all_files: - type: file - description: All files used as entry. - pattern: "*.{gff3,fasta,json}" - - - integrity_file: - type: file - description: Captures potential errors detected during the integrity check of a manifest file (manifest.json). - pattern: "integrity.out" - + - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ id:'accession1' ]` + - '*.*", includeInputs: true': + type: file + description: All files used as entry. + pattern: "*.{gff3,fasta,json}" - error_log: - type: file - description: Integrity error log if it failed - pattern: "integrity.out" + - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ id:'accession1' ]` + - integrity_file: + type: file + description: + Captures potential errors detected during the integrity check of + a manifest file (manifest.json). + pattern: "integrity.out" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "@ensembl-dev" maintainers: diff --git a/modules/ensembl/manifest/maker/meta.yml b/modules/ensembl/manifest/maker/meta.yml index 0f56d39..704557a 100644 --- a/modules/ensembl/manifest/maker/meta.yml +++ b/modules/ensembl/manifest/maker/meta.yml @@ -1,6 +1,7 @@ ---- name: "manifest_maker" -description: Generate a manifest and validate its JSON schema using provided input files and metadata. +description: + Generate a manifest and validate its JSON schema using provided input + files and metadata. keywords: - ensembl - genomics @@ -11,40 +12,22 @@ tools: - "manifest_maker": description: "Nextflow modules for genomic data file manifest comparison/checking." homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] - + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ accession:'accession01' ]` - - manifest_files: - type: file - description: Set of genomic data files - pattern: "*.{gff3,fasta,json}" - + - - meta: + type: map + description: | + Groovy Map containing meta information + e.g. `[ accession:'accession01' ]` + - file_name: {} output: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ accession:'accession1' ]` - - - all_files: - type: file - description: All files used as entry - pattern: "*.{gff3,fasta,json}" - - error_log: - type: file - description: Integrity error log if it failed - pattern: "integrity.out" - versions: - type: file - description: File containing information on module software version - pattern: "versions.yml" - + - versions.yml: + type: file + description: File containing information on module software version + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" maintainers: - - "ensembl-dev@ebi.ac.uk" \ No newline at end of file + - "ensembl-dev@ebi.ac.uk" From b203bc1dfb4301e4e4b4a8f2e225c6a10f6c753e Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 13:12:16 +0000 Subject: [PATCH 11/26] add nf-core lint --- .github/workflows/linting.yaml | 153 +++++++++++++++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 .github/workflows/linting.yaml diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml new file mode 100644 index 0000000..bf31a3f --- /dev/null +++ b/.github/workflows/linting.yaml @@ -0,0 +1,153 @@ +name: Run Linting +on: [push, pull_request] + +env: + NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity + NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # renovate: datasource=github-releases depName=nextflow/nextflow versioning=semver + NXF_VER: "25.10.2" + NXF_SYNTAX_PARSER: "v2" + +# Cancel if a newer run is started +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + nf-core-changes: + name: nf-core-changes + runs-on: + - runs-on=${{ github.run_id }}-nf-core-changes + - runner=4cpu-linux-x64 + - image=ubuntu22-full-x64 + outputs: + modules: ${{ steps.filter.outputs.modules }} + modules_files: ${{ steps.module_names.outputs.result }} + subworkflows: ${{ steps.filter.outputs.subworkflows }} + subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} + steps: + - name: Clean workspace + run: | + sudo rm -rf ./* || true + sudo rm -rf ./.* || true + + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + with: + fetch-depth: 2 # To retrieve the preceding commit. + + - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3 + id: filter + with: + filters: | + modules: + - added|modified: 'modules/ensembl/**' + subworkflows: + - added|modified: 'subworkflows/ensembl/**' + token: "" + list-files: "json" + + - name: Get module name + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 + id: module_names + with: + script: | + return [...new Set(${{ steps.filter.outputs.modules_files }} + .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) + .map(path => path + .replace('modules/ensembl/', '') + .replace(/\/(main\.nf|tests\/.*)$/, '') + ) + )]; + - name: Get subworkflow name + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 + id: subworkflow_names + with: + script: | + return [...new Set(${{ steps.filter.outputs.subworkflows_files }} + .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) + .map(path => path + .replace('subworkflows/ensembl/', '') + .replace(/\/(main\.nf|tests\/.*)$/, '') + ) + )]; + + nf-core-lint-modules: + runs-on: + - runs-on=${{ github.run_id }}-nf-core-lint-modules + - runner=4cpu-linux-x64 + - image=ubuntu22-full-x64 + name: nf-core lint modules + needs: nf-core-changes + if: ${{ needs.nf-core-changes.outputs.modules_files != '[]' }} + strategy: + fail-fast: false + matrix: + module: ${{ fromJson(needs.nf-core-changes.outputs.modules_files || '[]') }} + steps: + - name: Clean workspace + run: | + sudo rm -rf ./* || true + sudo rm -rf ./.* || true + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - name: Set up Python + uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 + with: + python-version: "3.14" + + - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5 + id: cache-pip + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip + restore-keys: | + ${{ runner.os }}-pip + + - name: Install pip + run: python -m pip install --upgrade pip + + - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5 + with: + distribution: "temurin" + java-version: "17" + + - name: Set up Nextflow + uses: nf-core/setup-nextflow@v2 + + - name: Install nf-core tools development version + run: python -m pip install --upgrade --force-reinstall git+https://github.com/nf-core/tools.git@dev + + - name: Lint module ${{ matrix.module }} + run: nf-core modules lint ${{ matrix.module }} + + nf-core-lint-subworkflows: + runs-on: + - runs-on=${{ github.run_id }}-nf-core-lint-subworkflows + - runner=4cpu-linux-x64 + - image=ubuntu22-full-x64 + name: nf-core lint subworkflows + needs: nf-core-changes + if: ${{ needs.nf-core-changes.outputs.subworkflows_files != '[]' }} + strategy: + fail-fast: false + matrix: + subworkflow: ${{ fromJson(needs.nf-core-changes.outputs.subworkflows_files || '[]') }} + steps: + - name: Clean workspace + run: | + sudo rm -rf ./* || true + sudo rm -rf ./.* || true + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - name: Set up Python + uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 + with: + python-version: "3.14" + + - name: Set up Nextflow + uses: nf-core/setup-nextflow@v2 + + - name: Install nf-core tools development version + run: python -m pip install --upgrade --force-reinstall git+https://github.com/nf-core/tools.git@dev + + - name: Lint subworkflow ${{ matrix.subworkflow }} + run: nf-core subworkflows lint ${{ matrix.subworkflow }} \ No newline at end of file From e5778facdc1a375c77ff651e03a10922cf8f1bc3 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 13:19:03 +0000 Subject: [PATCH 12/26] remove clean up --- .github/workflows/linting.yaml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index bf31a3f..4d239d8 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -85,11 +85,6 @@ jobs: matrix: module: ${{ fromJson(needs.nf-core-changes.outputs.modules_files || '[]') }} steps: - - name: Clean workspace - run: | - sudo rm -rf ./* || true - sudo rm -rf ./.* || true - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Set up Python uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 with: @@ -133,11 +128,6 @@ jobs: matrix: subworkflow: ${{ fromJson(needs.nf-core-changes.outputs.subworkflows_files || '[]') }} steps: - - name: Clean workspace - run: | - sudo rm -rf ./* || true - sudo rm -rf ./.* || true - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Set up Python uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 with: From 96f8ac0709251adfffb1523f07510565ec357a34 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 13:54:19 +0000 Subject: [PATCH 13/26] clean up --- .github/workflows/linting.yaml | 82 +++------------------------------- 1 file changed, 6 insertions(+), 76 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 4d239d8..eea87a7 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -5,7 +5,6 @@ env: NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # renovate: datasource=github-releases depName=nextflow/nextflow versioning=semver NXF_VER: "25.10.2" NXF_SYNTAX_PARSER: "v2" @@ -27,15 +26,6 @@ jobs: subworkflows: ${{ steps.filter.outputs.subworkflows }} subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} steps: - - name: Clean workspace - run: | - sudo rm -rf ./* || true - sudo rm -rf ./.* || true - - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - with: - fetch-depth: 2 # To retrieve the preceding commit. - - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3 id: filter with: @@ -45,39 +35,11 @@ jobs: subworkflows: - added|modified: 'subworkflows/ensembl/**' token: "" - list-files: "json" - - - name: Get module name - uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 - id: module_names - with: - script: | - return [...new Set(${{ steps.filter.outputs.modules_files }} - .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) - .map(path => path - .replace('modules/ensembl/', '') - .replace(/\/(main\.nf|tests\/.*)$/, '') - ) - )]; - - name: Get subworkflow name - uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 - id: subworkflow_names - with: - script: | - return [...new Set(${{ steps.filter.outputs.subworkflows_files }} - .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) - .map(path => path - .replace('subworkflows/ensembl/', '') - .replace(/\/(main\.nf|tests\/.*)$/, '') - ) - )]; - - nf-core-lint-modules: - runs-on: - - runs-on=${{ github.run_id }}-nf-core-lint-modules - - runner=4cpu-linux-x64 - - image=ubuntu22-full-x64 - name: nf-core lint modules + list-files: "json" + + nf-core-lint: + runs-on: ubuntu-latest + name: nf-core-lint needs: nf-core-changes if: ${{ needs.nf-core-changes.outputs.modules_files != '[]' }} strategy: @@ -101,43 +63,11 @@ jobs: - name: Install pip run: python -m pip install --upgrade pip - - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5 - with: - distribution: "temurin" - java-version: "17" - - name: Set up Nextflow uses: nf-core/setup-nextflow@v2 - - name: Install nf-core tools development version - run: python -m pip install --upgrade --force-reinstall git+https://github.com/nf-core/tools.git@dev - - name: Lint module ${{ matrix.module }} run: nf-core modules lint ${{ matrix.module }} - - nf-core-lint-subworkflows: - runs-on: - - runs-on=${{ github.run_id }}-nf-core-lint-subworkflows - - runner=4cpu-linux-x64 - - image=ubuntu22-full-x64 - name: nf-core lint subworkflows - needs: nf-core-changes - if: ${{ needs.nf-core-changes.outputs.subworkflows_files != '[]' }} - strategy: - fail-fast: false - matrix: - subworkflow: ${{ fromJson(needs.nf-core-changes.outputs.subworkflows_files || '[]') }} - steps: - - name: Set up Python - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 - with: - python-version: "3.14" - - - name: Set up Nextflow - uses: nf-core/setup-nextflow@v2 - - - name: Install nf-core tools development version - run: python -m pip install --upgrade --force-reinstall git+https://github.com/nf-core/tools.git@dev - + - name: Lint subworkflow ${{ matrix.subworkflow }} run: nf-core subworkflows lint ${{ matrix.subworkflow }} \ No newline at end of file From 24fd16fc5a831a58e99daa71fb721f932b313d7a Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 14:13:21 +0000 Subject: [PATCH 14/26] simplify linting --- .github/workflows/linting.yaml | 64 +++++++++++++++------------------- 1 file changed, 28 insertions(+), 36 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index eea87a7..802c528 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -1,4 +1,5 @@ name: Run Linting + on: [push, pull_request] env: @@ -8,66 +9,57 @@ env: NXF_VER: "25.10.2" NXF_SYNTAX_PARSER: "v2" -# Cancel if a newer run is started concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: nf-core-changes: - name: nf-core-changes - runs-on: - - runs-on=${{ github.run_id }}-nf-core-changes - - runner=4cpu-linux-x64 - - image=ubuntu22-full-x64 + name: Detect changes + runs-on: ubuntu-latest + outputs: modules: ${{ steps.filter.outputs.modules }} - modules_files: ${{ steps.module_names.outputs.result }} subworkflows: ${{ steps.filter.outputs.subworkflows }} - subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} + steps: - - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3 + - uses: actions/checkout@v6 + + - uses: dorny/paths-filter@v3 id: filter with: filters: | modules: - - added|modified: 'modules/ensembl/**' + - 'modules/ensembl/**' subworkflows: - - added|modified: 'subworkflows/ensembl/**' - token: "" - list-files: "json" - + - 'subworkflows/ensembl/**' + nf-core-lint: + name: nf-core lint runs-on: ubuntu-latest - name: nf-core-lint needs: nf-core-changes - if: ${{ needs.nf-core-changes.outputs.modules_files != '[]' }} - strategy: - fail-fast: false - matrix: - module: ${{ fromJson(needs.nf-core-changes.outputs.modules_files || '[]') }} + steps: - - name: Set up Python - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6 + - uses: actions/checkout@v6 + + - uses: actions/setup-python@v6 with: - python-version: "3.14" + python-version: "3.12" - - uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5 - id: cache-pip + - uses: actions/cache@v5 with: path: ~/.cache/pip key: ${{ runner.os }}-pip - restore-keys: | - ${{ runner.os }}-pip - - name: Install pip - run: python -m pip install --upgrade pip + - uses: nf-core/setup-nextflow@v2 + + - name: Install nf-core tools + run: pip install --upgrade git+https://github.com/nf-core/tools.git@dev - - name: Set up Nextflow - uses: nf-core/setup-nextflow@v2 + - name: Lint modules + if: needs.nf-core-changes.outputs.modules == 'true' + run: nf-core modules lint - - name: Lint module ${{ matrix.module }} - run: nf-core modules lint ${{ matrix.module }} - - - name: Lint subworkflow ${{ matrix.subworkflow }} - run: nf-core subworkflows lint ${{ matrix.subworkflow }} \ No newline at end of file + - name: Lint subworkflows + if: needs.nf-core-changes.outputs.subworkflows == 'true' + run: nf-core subworkflows lint \ No newline at end of file From e319d8511240cab48043bc40abbfe7bb6f080699 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 14:22:55 +0000 Subject: [PATCH 15/26] add module names --- .github/workflows/linting.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 802c528..8275bc9 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -38,7 +38,10 @@ jobs: name: nf-core lint runs-on: ubuntu-latest needs: nf-core-changes - + strategy: + fail-fast: false + matrix: + tags: ["${{ fromJson(needs.changes.outputs.modules) }}"] steps: - uses: actions/checkout@v6 @@ -58,8 +61,8 @@ jobs: - name: Lint modules if: needs.nf-core-changes.outputs.modules == 'true' - run: nf-core modules lint + run: nf-core modules lint ${{ matrix.tags }} - name: Lint subworkflows if: needs.nf-core-changes.outputs.subworkflows == 'true' - run: nf-core subworkflows lint \ No newline at end of file + run: nf-core subworkflows lint --all \ No newline at end of file From c9081efeb3a54b32a4c09222e887469ebb41a8ee Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 15:27:10 +0000 Subject: [PATCH 16/26] dont run if there is no changes --- .github/workflows/linting.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 8275bc9..bd66c2a 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -1,5 +1,4 @@ name: Run Linting - on: [push, pull_request] env: @@ -7,7 +6,6 @@ env: NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NXF_VER: "25.10.2" - NXF_SYNTAX_PARSER: "v2" concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} @@ -38,6 +36,7 @@ jobs: name: nf-core lint runs-on: ubuntu-latest needs: nf-core-changes + if: needs.changes.outputs.modules != '[]' strategy: fail-fast: false matrix: @@ -60,7 +59,6 @@ jobs: run: pip install --upgrade git+https://github.com/nf-core/tools.git@dev - name: Lint modules - if: needs.nf-core-changes.outputs.modules == 'true' run: nf-core modules lint ${{ matrix.tags }} - name: Lint subworkflows From e15843f7d51935441bbd367c67a72cf62604d2bb Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 15:38:47 +0000 Subject: [PATCH 17/26] correcting the id --- .github/workflows/linting.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index bd66c2a..f5cfe83 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -36,11 +36,11 @@ jobs: name: nf-core lint runs-on: ubuntu-latest needs: nf-core-changes - if: needs.changes.outputs.modules != '[]' + if: needs.nf-core-changes.outputs.modules != '[]' strategy: fail-fast: false matrix: - tags: ["${{ fromJson(needs.changes.outputs.modules) }}"] + tags: ["${{ fromJson(needs.nf-core-changes.outputs.modules) }}"] steps: - uses: actions/checkout@v6 From 7533b612251e4e57097b4ac0614fdea0841c07d7 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Mon, 16 Mar 2026 17:14:21 +0000 Subject: [PATCH 18/26] correcting modules list --- .github/workflows/linting.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index f5cfe83..2c2eadc 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -31,6 +31,7 @@ jobs: - 'modules/ensembl/**' subworkflows: - 'subworkflows/ensembl/**' + list-files: "json" nf-core-lint: name: nf-core lint @@ -46,7 +47,7 @@ jobs: - uses: actions/setup-python@v6 with: - python-version: "3.12" + python-version: "3.14" - uses: actions/cache@v5 with: @@ -63,4 +64,4 @@ jobs: - name: Lint subworkflows if: needs.nf-core-changes.outputs.subworkflows == 'true' - run: nf-core subworkflows lint --all \ No newline at end of file + run: nf-core subworkflows lint --all \ No newline at end of file From a5a9800f99be1c28253ae5fc301bde8d4221e068 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 13:38:22 +0000 Subject: [PATCH 19/26] trying to extract module names for lint --- .github/workflows/linting.yaml | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 2c2eadc..d50e90a 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -17,9 +17,9 @@ jobs: runs-on: ubuntu-latest outputs: - modules: ${{ steps.filter.outputs.modules }} - subworkflows: ${{ steps.filter.outputs.subworkflows }} - + modules: ${{ steps.filter.outputs.modules_files }} + subworkflows: ${{ steps.filter.outputs.subworkflows_files }} + steps: - uses: actions/checkout@v6 @@ -32,6 +32,19 @@ jobs: subworkflows: - 'subworkflows/ensembl/**' list-files: "json" + + - name: Extract module names + id: modules + run: | + echo '${{ steps.filter.outputs.modules_files }}' \ + | jq -r 'map(split("/")[2]) | unique' \ + > modules.json + echo "modules=$(cat modules.json)" >> $GITHUB_OUTPUT + + - name: Debug + run: | + echo "RAW: ${{ steps.filter.outputs.modules }}" + echo "FILES: ${{ steps.filter.outputs.modules_files }}" nf-core-lint: name: nf-core lint @@ -41,7 +54,7 @@ jobs: strategy: fail-fast: false matrix: - tags: ["${{ fromJson(needs.nf-core-changes.outputs.modules) }}"] + module: ${{ fromJson(needs.nf-core-changes.outputs.modules || '[]') }} steps: - uses: actions/checkout@v6 @@ -60,7 +73,7 @@ jobs: run: pip install --upgrade git+https://github.com/nf-core/tools.git@dev - name: Lint modules - run: nf-core modules lint ${{ matrix.tags }} + run: nf-core modules lint ${{ matrix.module }} - name: Lint subworkflows if: needs.nf-core-changes.outputs.subworkflows == 'true' From c206dda8979973b186388c5fe0c41807cdbaef77 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 13:53:24 +0000 Subject: [PATCH 20/26] linting extracting the correct module --- .github/workflows/linting.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index d50e90a..81777e2 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -37,14 +37,9 @@ jobs: id: modules run: | echo '${{ steps.filter.outputs.modules_files }}' \ - | jq -r 'map(split("/")[2]) | unique' \ + | jq -r 'map((split("/")[2] + "/" + split("/")[3])) | unique' \ > modules.json echo "modules=$(cat modules.json)" >> $GITHUB_OUTPUT - - - name: Debug - run: | - echo "RAW: ${{ steps.filter.outputs.modules }}" - echo "FILES: ${{ steps.filter.outputs.modules_files }}" nf-core-lint: name: nf-core lint From 790a0352959ead6523d28da3bbb0085b4908cae7 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 14:17:09 +0000 Subject: [PATCH 21/26] linting extracting the correct module --- .github/workflows/linting.yaml | 54 ++++++++++++++++++++++++---------- 1 file changed, 39 insertions(+), 15 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 81777e2..28156e8 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -17,29 +17,53 @@ jobs: runs-on: ubuntu-latest outputs: - modules: ${{ steps.filter.outputs.modules_files }} - subworkflows: ${{ steps.filter.outputs.subworkflows_files }} - + # https://github.com/dorny/paths-filter?tab=readme-ov-file#custom-processing-of-changed-files + modules: ${{ steps.filter.outputs.modules }} + modules_files: ${{ steps.module_names.outputs.result }} + subworkflows: ${{ steps.filter.outputs.subworkflows }} + subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} steps: - - uses: actions/checkout@v6 - - - uses: dorny/paths-filter@v3 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4 id: filter with: filters: | modules: - - 'modules/ensembl/**' + - added|modified: 'modules/ensembl/**' subworkflows: - - 'subworkflows/ensembl/**' + - added|modified: 'subworkflows/ensembl/**' + token: "" list-files: "json" - - - name: Extract module names - id: modules + + - name: Get module name + id: module_names + with: + script: | + return [...new Set(${{ steps.filter.outputs.modules_files }} + .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) + .map(path => path + .replace('modules/ensembl/', '') + .replace(/\/(main\.nf|tests\/.*)$/, '') + ) + )]; + + - name: Get subworkflow name + id: subworkflow_names + with: + script: | + return [...new Set(${{ steps.filter.outputs.subworkflows_files }} + .filter(x => x.endsWith('main.nf') || x.endsWith('.nf.test.snap')) + .map(path => path + .replace('subworkflows/nf-core/', '') + .replace(/\/(main\.nf|tests\/.*)$/, '') + ) + )]; + + - name: debug run: | - echo '${{ steps.filter.outputs.modules_files }}' \ - | jq -r 'map((split("/")[2] + "/" + split("/")[3])) | unique' \ - > modules.json - echo "modules=$(cat modules.json)" >> $GITHUB_OUTPUT + echo ${{ steps.filter.outputs.modules_files }} + echo ${{ steps.module_names.outputs.result }} + echo ${{ steps.filter.outputs.subworkflows_files }} + echo ${{ steps.subworkflow_names.outputs.result }} nf-core-lint: name: nf-core lint From dccbe8e89eb8eabfb5675607266140ef504c47e7 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 14:24:31 +0000 Subject: [PATCH 22/26] linting extracting the module nf-core style --- .github/workflows/linting.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index 28156e8..c60d12f 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -23,6 +23,7 @@ jobs: subworkflows: ${{ steps.filter.outputs.subworkflows }} subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} steps: + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4 id: filter with: @@ -35,6 +36,7 @@ jobs: list-files: "json" - name: Get module name + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 id: module_names with: script: | @@ -45,8 +47,8 @@ jobs: .replace(/\/(main\.nf|tests\/.*)$/, '') ) )]; - - name: Get subworkflow name + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 id: subworkflow_names with: script: | @@ -65,15 +67,16 @@ jobs: echo ${{ steps.filter.outputs.subworkflows_files }} echo ${{ steps.subworkflow_names.outputs.result }} + nf-core-lint: name: nf-core lint runs-on: ubuntu-latest needs: nf-core-changes - if: needs.nf-core-changes.outputs.modules != '[]' + if: needs.nf-core-changes.outputs.modules_files != '[]' strategy: fail-fast: false matrix: - module: ${{ fromJson(needs.nf-core-changes.outputs.modules || '[]') }} + module: ${{ fromJson(needs.nf-core-changes.outputs.modules_files) }} steps: - uses: actions/checkout@v6 From 576a2d34d111ce2518f78b5124e2eb2b0f76d221 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 14:28:27 +0000 Subject: [PATCH 23/26] actions update --- .github/workflows/linting.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml index c60d12f..64576e1 100644 --- a/.github/workflows/linting.yaml +++ b/.github/workflows/linting.yaml @@ -23,7 +23,10 @@ jobs: subworkflows: ${{ steps.filter.outputs.subworkflows }} subworkflows_files: ${{ steps.subworkflow_names.outputs.result }} steps: - + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4 id: filter with: From fd4378d7f4f693370b3b059deb6b8e612c6ca36b Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 14:35:53 +0000 Subject: [PATCH 24/26] update snap --- .../urls/extract/tests/main.nf.test.snap | 32 ++++++++--------- .../urls/generate/tests/main.nf.test.snap | 36 +++++++++---------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/modules/ensembl/urls/extract/tests/main.nf.test.snap b/modules/ensembl/urls/extract/tests/main.nf.test.snap index fff3475..aa3b76d 100644 --- a/modules/ensembl/urls/extract/tests/main.nf.test.snap +++ b/modules/ensembl/urls/extract/tests/main.nf.test.snap @@ -14,11 +14,11 @@ ] ] ], + "timestamp": "2025-03-26T15:10:02.948488", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:02.948488" + } }, "versions": { "content": [ @@ -26,11 +26,11 @@ "versions.yml:md5,844210d41d31414da2041f13946f845c" ] ], + "timestamp": "2025-03-26T15:10:02.953735", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:02.953735" + } }, "versions_no_database": { "content": [ @@ -38,23 +38,23 @@ "versions.yml:md5,844210d41d31414da2041f13946f845c" ] ], + "timestamp": "2025-03-26T15:10:06.887747", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:06.887747" + } }, "Should fail with invalid URL format": { "content": [ [ - "\u001b[33mNextflow 25.04.4 is available - Please consider updating your version to it\u001b(B\u001b[m" + "\u001b[33mNextflow 25.10.4 is available - Please consider updating your version to it\u001b(B\u001b[m" ] ], + "timestamp": "2026-03-17T14:33:46.160581013", "meta": { - "nf-test": "0.9.2", + "nf-test": "0.9.4", "nextflow": "24.10.3" - }, - "timestamp": "2025-06-17T11:30:46.552594268" + } }, "versions_no_password": { "content": [ @@ -62,11 +62,11 @@ "versions.yml:md5,844210d41d31414da2041f13946f845c" ] ], + "timestamp": "2025-03-26T15:10:04.907779", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:04.907779" + } }, "connection_info_no_password": { "content": [ @@ -83,11 +83,11 @@ ] ] ], + "timestamp": "2025-03-26T15:10:04.9047", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:04.9047" + } }, "connection_info_no_database": { "content": [ @@ -104,10 +104,10 @@ ] ] ], + "timestamp": "2025-03-26T15:10:06.883916", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:10:06.883916" + } } } \ No newline at end of file diff --git a/modules/ensembl/urls/generate/tests/main.nf.test.snap b/modules/ensembl/urls/generate/tests/main.nf.test.snap index 376ccf6..9fb5ed0 100644 --- a/modules/ensembl/urls/generate/tests/main.nf.test.snap +++ b/modules/ensembl/urls/generate/tests/main.nf.test.snap @@ -2,38 +2,38 @@ "versions_no_database": { "content": [ [ - "versions.yml:md5,d817b1f3c9f2bd1f04c668984320951c" + "versions.yml:md5,ac2fb3abdcb67053013a354749ce87f8" ] ], + "timestamp": "2026-03-17T14:34:20.337929175", "meta": { - "nf-test": "0.9.2", + "nf-test": "0.9.4", "nextflow": "24.10.3" - }, - "timestamp": "2025-06-17T11:31:22.822012541" + } }, "versions_full": { "content": [ [ - "versions.yml:md5,d817b1f3c9f2bd1f04c668984320951c" + "versions.yml:md5,ac2fb3abdcb67053013a354749ce87f8" ] ], + "timestamp": "2026-03-17T14:33:57.911274653", "meta": { - "nf-test": "0.9.2", + "nf-test": "0.9.4", "nextflow": "24.10.3" - }, - "timestamp": "2025-06-17T11:30:59.208840884" + } }, "versions_no_password": { "content": [ [ - "versions.yml:md5,d817b1f3c9f2bd1f04c668984320951c" + "versions.yml:md5,ac2fb3abdcb67053013a354749ce87f8" ] ], + "timestamp": "2026-03-17T14:34:09.150646453", "meta": { - "nf-test": "0.9.2", + "nf-test": "0.9.4", "nextflow": "24.10.3" - }, - "timestamp": "2025-06-17T11:31:11.312214413" + } }, "generated_url_full": { "content": [ @@ -46,11 +46,11 @@ ] ] ], + "timestamp": "2025-03-26T15:48:40.650816", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:48:40.650816" + } }, "generated_url_no_password": { "content": [ @@ -63,11 +63,11 @@ ] ] ], + "timestamp": "2025-03-26T15:48:42.651032", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:48:42.651032" + } }, "generated_url_no_database": { "content": [ @@ -80,10 +80,10 @@ ] ] ], + "timestamp": "2025-03-26T15:48:44.600396", "meta": { "nf-test": "0.9.2", "nextflow": "24.10.5" - }, - "timestamp": "2025-03-26T15:48:44.600396" + } } } \ No newline at end of file From aabf62e3affb67dde9ed2fa5aa0bff2480d09596 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 15:47:08 +0000 Subject: [PATCH 25/26] correct nf-lint --- modules/ensembl/annotation/dumpanno/meta.yml | 62 ++++++---- modules/ensembl/database/dbfactory/meta.yml | 55 +++++---- .../ensembl/download/assemblydata/meta.yml | 53 ++++---- modules/ensembl/download/genbank/meta.yml | 51 ++++---- modules/ensembl/dump/genomestats/meta.yml | 65 +++++----- modules/ensembl/fasta/dumpfastanuc/meta.yml | 71 +++++------ .../ensembl/fasta/dumpfastapeptide/meta.yml | 71 +++++------ modules/ensembl/genbank/extractgb/meta.yml | 116 +++++++----------- modules/ensembl/gff3/dumpgff3/meta.yml | 73 +++++------ modules/ensembl/gff3/validation/meta.yml | 65 +++++----- modules/ensembl/manifest/integrity/meta.yml | 83 +++++++------ modules/ensembl/manifest/maker/meta.yml | 39 +++--- modules/ensembl/metadata/amendgenome/meta.yml | 89 +++++++------- .../ensembl/metadata/genomesummary/meta.yml | 72 ++++++----- modules/ensembl/schema/json/meta.yml | 48 ++++++++ 15 files changed, 526 insertions(+), 487 deletions(-) create mode 100644 modules/ensembl/schema/json/meta.yml diff --git a/modules/ensembl/annotation/dumpanno/meta.yml b/modules/ensembl/annotation/dumpanno/meta.yml index 8d6bd20..4656902 100644 --- a/modules/ensembl/annotation/dumpanno/meta.yml +++ b/modules/ensembl/annotation/dumpanno/meta.yml @@ -1,39 +1,47 @@ -name: "annotation_dumpanno" - -description: - This module is used to dump the functional annotation of a genome from - core databases. +--- +name: "database_dbfactory" +description: > + Generate a list of one or more databases plus some associated meta table information. keywords: - container - core_database - docker - - ensembl-legacy-scripts - - fasta + - database + - ensembl-genomio tools: - - "annotation": - homepage: "https://github.com/Ensembl/nextflow_modules" - description: - "This module handles all annotation-related interactions with the\ - \ core database, including annotation dumping and processing" - license: ["Apache License version 2.0"] - identifier: "" + database: + description: > + Modules which function to read or write information from core databases. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - # Only when we have meta - - - db: {} + - name: server + type: map + description: > + Groovy Map containing MySQL server host, port, user, and password meta information, + e.g. `[ host:"mysql-host-test-prod" ]` + + - name: filter_map + type: file + description: "JSON file containing database filter information." + pattern: "*.json" + output: - - functional_annotation: - - db: {} - - functional_annotation: {} - - "*.json": {} - - versions: - - versions.yml: - type: file - description: File containing software versions. - pattern: "versions.yml" + - name: dbs_meta + type: file + description: "JSON file containing database metadata." + pattern: "dbs.json" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - - "@ensembl-dev" + - "ensembl-dev@ebi.ac.uk" maintainers: - - "@ensembl-dev" + - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/database/dbfactory/meta.yml b/modules/ensembl/database/dbfactory/meta.yml index 25f5444..4656902 100644 --- a/modules/ensembl/database/dbfactory/meta.yml +++ b/modules/ensembl/database/dbfactory/meta.yml @@ -1,7 +1,7 @@ +--- name: "database_dbfactory" -description: - Generate a list of one or more databases plus some associated meta table - information. +description: > + Generate a list of one or more databases plus some associated meta table information. keywords: - container @@ -11,31 +11,36 @@ keywords: - ensembl-genomio tools: - - database: - description: "Modules which function to read or write information from core databases." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + database: + description: > + Modules which function to read or write information from core databases. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - server: - type: map - description: > - Groovy Map containing mysql server host, port, user and password meta and - file of JSON database filter information. - e.g. [[ host:"mysql-host-test-prod" ], [ filter_map:"dbrename_re" ]] - - filter_map: {} + - name: server + type: map + description: > + Groovy Map containing MySQL server host, port, user, and password meta information, + e.g. `[ host:"mysql-host-test-prod" ]` + + - name: filter_map + type: file + description: "JSON file containing database filter information." + pattern: "*.json" + output: - - dbs_meta_json: - - dbs.json: - type: file - description: "JSON file containing database metadata." - pattern: "dbs.json" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: dbs_meta + type: file + description: "JSON file containing database metadata." + pattern: "dbs.json" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/download/assemblydata/meta.yml b/modules/ensembl/download/assemblydata/meta.yml index 63372ea..16e2c39 100644 --- a/modules/ensembl/download/assemblydata/meta.yml +++ b/modules/ensembl/download/assemblydata/meta.yml @@ -1,7 +1,7 @@ +--- name: "download_assemblydata" -description: - Generate a list of one or more databases plus some associated meta table - information. +description: > + Generate a list of one or more databases plus some associated meta table information. keywords: - ensembl-genomio @@ -13,28 +13,37 @@ keywords: - INSDC tools: - - download: - description: - "Modules which function to download information or various data from\ - \ externally hosted resources." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + download: + description: > + Modules which function to download information or various data from + externally hosted resources. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - meta: - type: map - description: | - Groovy Map containing A single INSDC GCA or NCBI 'amended' GCF genome assembly accession meta information. - e.g. `[ accession:'GCA_000000000.1' ]` + - name: meta + type: map + description: > + Groovy Map containing a single INSDC GCA or NCBI 'amended' GCF genome assembly accession meta information, + e.g. `[ accession:'GCA_000000000.1' ]` + output: - - min_set: [] - - opt_set: [] - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: min_set + type: file + description: "Minimal set of downloaded assembly data files" + pattern: "*" + + - name: opt_set + type: file + description: "Optional set of downloaded assembly data files" + pattern: "*" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/download/genbank/meta.yml b/modules/ensembl/download/genbank/meta.yml index 151d5b9..153b23a 100644 --- a/modules/ensembl/download/genbank/meta.yml +++ b/modules/ensembl/download/genbank/meta.yml @@ -1,5 +1,7 @@ +--- name: "download_genbank" -description: Download a single sequence from NCBI GenBank. +description: > + Download a single sequence from NCBI GenBank. keywords: - core_database @@ -10,31 +12,34 @@ keywords: - genomics tools: - - download: - description: - "Modules which function to download information or various data from\ - \ externally hosted resources." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + download: + description: > + Modules which function to download information or various data from + externally hosted resources. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - meta: {} + - name: meta + type: map + description: "Optional meta information about the sequence to download." + output: - - gb_sequence: - - meta: - type: file - description: A sequence record outfile in genbank format. - pattern: "output.gb" - - output.gb: - type: file - description: A sequence record outfile in genbank format. - pattern: "output.gb" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: gb_sequence_file + type: file + description: "A sequence record outfile in GenBank format" + pattern: "output.gb" + + - name: gb_sequence_meta + type: map + description: "Metadata associated with the downloaded GenBank sequence" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/dump/genomestats/meta.yml b/modules/ensembl/dump/genomestats/meta.yml index 1e69215..80d5967 100644 --- a/modules/ensembl/dump/genomestats/meta.yml +++ b/modules/ensembl/dump/genomestats/meta.yml @@ -1,5 +1,8 @@ +--- name: "dump_genomestats" -description: A module for dumping a core database +description: > + A module for dumping a core database, including assembly and annotation statistics. + keywords: - container - core_database @@ -8,41 +11,37 @@ keywords: - json tools: - - dump: - description: - "Modules which function to dump various forms of data from a core\ - \ database." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + dump: + description: > + Modules which function to dump various forms of data from a core database. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - db: - type: map - description: > - A meta map including 'core database name'. - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', - ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + - name: db + type: map + description: > + A meta map including 'core database name', + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + output: - - core_stats: - - db: - type: map - description: > - JSON file containing core database statistics (assembly and annotation). - e.g [ db:"database name", file("core_stats.json") ] - pattern: "core_stats.json" - - core_stats.json: - type: map - description: > - JSON file containing core database statistics (assembly and annotation). - e.g [ db:"database name", file("core_stats.json") ] - pattern: "core_stats.json" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: core_stats_meta + type: map + description: > + Metadata for the core database statistics JSON, e.g. [ db:"database name", file("core_stats.json") ] + + - name: core_stats_file + type: file + description: "JSON file containing core database statistics (assembly and annotation)" + pattern: "core_stats.json" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/fasta/dumpfastanuc/meta.yml b/modules/ensembl/fasta/dumpfastanuc/meta.yml index 0b6c504..3ceff2b 100644 --- a/modules/ensembl/fasta/dumpfastanuc/meta.yml +++ b/modules/ensembl/fasta/dumpfastanuc/meta.yml @@ -1,5 +1,7 @@ +--- name: "fasta_dumpfastanuc" -description: A module for dumping core database gene module nucleotide fasta seqs +description: > + A module for dumping core database gene module nucleotide FASTA sequences. keywords: - container @@ -10,47 +12,38 @@ keywords: - fasta tools: - - "fasta": - description: - "Modules which function to facilitate data deposition/retrieval of\ - \ fasta sequences." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + fasta: + description: > + Modules which function to facilitate data deposition and retrieval + of FASTA sequences. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - db: - type: map - description: > - A meta map including 'core database name'. - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', - ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + - name: db + type: map + description: > + A meta map including 'core database name', + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + output: - - nucleotide_fasta: - - db: - type: map - description: > - Fasta file containing nucleotide sequence(s). - e.g [ db:'database name', file("*_fasta_dna.fasta") ] - pattern: "*_fasta_dna.fasta" - - fasta_dna: - type: map - description: > - Fasta file containing nucleotide sequence(s). - e.g [ db:'database name', file("*_fasta_dna.fasta") ] - pattern: "*_fasta_dna.fasta" - - "*.fasta": - type: map - description: > - Fasta file containing nucleotide sequence(s). - e.g [ db:'database name', file("*_fasta_dna.fasta") ] - pattern: "*_fasta_dna.fasta" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: nucleotide_fasta_meta + type: map + description: > + Metadata for nucleotide FASTA sequences, e.g. [ db:'database name', file("*_fasta_dna.fasta") ] + + - name: nucleotide_fasta_file + type: file + description: "Nucleotide FASTA sequences from the database" + pattern: "*_fasta_dna.fasta" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/fasta/dumpfastapeptide/meta.yml b/modules/ensembl/fasta/dumpfastapeptide/meta.yml index 3a02fcb..c6feafd 100644 --- a/modules/ensembl/fasta/dumpfastapeptide/meta.yml +++ b/modules/ensembl/fasta/dumpfastapeptide/meta.yml @@ -1,5 +1,7 @@ +--- name: "fasta_dumpfastapeptide" -description: A module for dumping peptide FASTA sequences from core databases +description: > + A module for dumping peptide FASTA sequences from core databases. keywords: - container @@ -10,47 +12,38 @@ keywords: - fasta tools: - - "fasta": - description: - "Modules which function to facilitate data deposition/retrieval of\ - \ fasta sequences." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + fasta: + description: > + Modules which function to facilitate data deposition and retrieval + of FASTA sequences. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - db: - type: map - description: > - A meta map including 'core database name'. - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', - ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + - name: db + type: map + description: > + A meta map including 'core database name', + e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + output: - - peptide_fasta: - - db: - type: map - description: > - Fasta file containing peptide sequence(s). - e.g [ db:'database name', file("*_fasta_pep.fasta") ] - pattern: "*_fasta_pep.fasta" - - fasta_pep: - type: map - description: > - Fasta file containing peptide sequence(s). - e.g [ db:'database name', file("*_fasta_pep.fasta") ] - pattern: "*_fasta_pep.fasta" - - "*.fasta": - type: map - description: > - Fasta file containing peptide sequence(s). - e.g [ db:'database name', file("*_fasta_pep.fasta") ] - pattern: "*_fasta_pep.fasta" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: peptide_fasta_meta + type: map + description: > + Metadata for peptide FASTA sequences, e.g. [ db:'database name', file("*_fasta_pep.fasta") ] + + - name: peptide_fasta_file + type: file + description: "Peptide FASTA sequences from the database" + pattern: "*_fasta_pep.fasta" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/genbank/extractgb/meta.yml b/modules/ensembl/genbank/extractgb/meta.yml index 172113b..fd4d090 100644 --- a/modules/ensembl/genbank/extractgb/meta.yml +++ b/modules/ensembl/genbank/extractgb/meta.yml @@ -1,6 +1,7 @@ +--- name: "genbank_extractgb" -description: - Parse a GenBank file and create cleaned up files and validate generated +description: > + Parse a GenBank file and create cleaned up files, validating generated JSON files. keywords: @@ -12,76 +13,53 @@ keywords: - genomics tools: - - "genbank": - description: - "Modules with functions related to work with Genbank related data\ - \ files." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + genbank: + description: > + Modules with functions related to working with GenBank data files. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - meta: - type: map - description: | - Groovy Map containing genome database meta information - e.g. `[ accession:'NC_XXXX.X' ]` - - gb_file: - type: file - description: | - File path to genbank formatted input file (*.gb) - e.g. `[gb_file("genome.gb")]` + - name: meta + type: map + description: "Groovy Map containing genome database meta information, e.g. `[ accession:'NC_XXXX.X' ]`" + + - name: gb_file + type: file + description: "File path to GenBank formatted input file (*.gb), e.g. `[gb_file('genome.gb')]`" + output: - - genome: - - meta: - type: file - description: Genome metadata (JSON) - pattern: "genome.json" - - genome.json: - type: file - description: Genome metadata (JSON) - pattern: "genome.json" - - seq_regions: - - meta: - type: file - description: Sequence region(s) meta (JSON) - pattern: "seq_region.json" - - seq_region.json: - type: file - description: Sequence region(s) meta (JSON) - pattern: "seq_region.json" - - dna_fasta: - - meta: - type: file - description: Genome nucleotide sequence(s) (FASTA) - pattern: "dna.fasta" - - dna.fasta: - type: file - description: Genome nucleotide sequence(s) (FASTA) - pattern: "dna.fasta" - - gene_gff: - - meta: - type: file - description: Gene model information (GFF3) - pattern: "*.gff" - - "*.gff": - type: file - description: Gene model information (GFF3) - pattern: "*.gff" - - pep_fasta: - - meta: - type: file - description: Genome protein-coding gene amino acid sequence(s) (FASTA) - pattern: "pep.fasta" - - pep.fasta: - type: file - description: Genome protein-coding gene amino acid sequence(s) (FASTA) - pattern: "pep.fasta" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: genome_meta + type: file + description: "Genome metadata (JSON)" + pattern: "genome.json" + + - name: seq_regions_meta + type: file + description: "Sequence region(s) metadata (JSON)" + pattern: "seq_region.json" + + - name: dna_fasta + type: file + description: "Genome nucleotide sequence(s) (FASTA)" + pattern: "dna.fasta" + + - name: gene_gff + type: file + description: "Gene model information (GFF3)" + pattern: "*.gff" + + - name: pep_fasta + type: file + description: "Genome protein-coding gene amino acid sequence(s) (FASTA)" + pattern: "pep.fasta" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/gff3/dumpgff3/meta.yml b/modules/ensembl/gff3/dumpgff3/meta.yml index 2df6712..2aa4365 100644 --- a/modules/ensembl/gff3/dumpgff3/meta.yml +++ b/modules/ensembl/gff3/dumpgff3/meta.yml @@ -1,5 +1,8 @@ +--- name: "gff3_dumpgff3" -description: write your description here +description: > + Dump GFF3 gene models from a core Ensembl database into GFF3 files. + (Add more details as needed.) keywords: - container @@ -9,47 +12,39 @@ keywords: - gff3 tools: - - "gff3": - description: - "Modules for GFF3 validation, data deposition and retrieval from/into\ - \ GFF3 file format" - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + gff3: + description: > + Modules for GFF3 validation, data deposition, and retrieval from/into + GFF3 file format. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - db: - type: map - description: > - A meta map including 'core database name'. - e.g. [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', - ...]] - pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + - name: db + type: map + description: > + A meta map including 'core database name', e.g. + [[ db:'genus_species_gca00000000v1_core_110_1', species:'Genus species', ...]] + pattern: "[a-z]+_[a-z]_gc[af][0-9]v[0-9]+_core_*" + output: - - gff3: - - db: - type: map - description: > - GFF3 file containing gene model(s). - e.g [ db:'database name', file("*.gff3") ] - pattern: "*.gff3" - - gff3: - type: map - description: > - GFF3 file containing gene model(s). - e.g [ db:'database name', file("*.gff3") ] - pattern: "*.gff3" - - "*.gff3": - type: map - description: > - GFF3 file containing gene model(s). - e.g [ db:'database name', file("*.gff3") ] - pattern: "*.gff3" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: gff3_meta + type: map + description: > + GFF3 file metadata including database information, e.g. + [ db:'database name', file("*.gff3") ] + + - name: gff3_file + type: file + description: "GFF3 file containing gene model(s)." + pattern: "*.gff3" + + - name: versions + type: file + description: "File containing information on module software version." + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/gff3/validation/meta.yml b/modules/ensembl/gff3/validation/meta.yml index 0a18747..e7d8784 100644 --- a/modules/ensembl/gff3/validation/meta.yml +++ b/modules/ensembl/gff3/validation/meta.yml @@ -1,5 +1,7 @@ +--- name: "gff3_validation" -description: Check for proper validation of the GFF3 using GenomeTools. +description: > + Check for proper validation of GFF3 files using GenomeTools. keywords: - ensembl @@ -10,40 +12,39 @@ keywords: - validation tools: - - "gff3": - description: - "Modules for GFF3 validation, data deposition and retrieval from/into\ - \ GFF3 file format" - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + gff3: + description: > + Modules for GFF3 validation, data deposition, and retrieval from/into + GFF3 file format. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - gene_models: - type: file - description: GFF3 files - pattern: "*.{gff3}" + - name: meta + type: map + description: "Groovy Map containing meta information, e.g. `[ id:'accession1' ]`" + + - name: gene_models + type: file + description: "GFF3 files" + pattern: "*.{gff3}" + output: - - gene_models: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - gene_models.gff3: - type: file - description: All files used as entry - pattern: "*.{gff3}" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: gene_models_meta + type: map + description: "Groovy Map containing meta information, e.g. `[ id:'accession1' ]`" + + - name: gene_models_file + type: file + description: "All GFF3 files used as input" + pattern: "*.{gff3}" + + - name: versions + type: file + description: "File containing information on module software version" + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/manifest/integrity/meta.yml b/modules/ensembl/manifest/integrity/meta.yml index 0f4df00..d18bfcf 100644 --- a/modules/ensembl/manifest/integrity/meta.yml +++ b/modules/ensembl/manifest/integrity/meta.yml @@ -1,5 +1,7 @@ +--- name: "manifest_integrity" -description: Check the data integrity of a set of genomic files, listed by their manifest. +description: > + Check the data integrity of a set of genomic files, listed by their manifest. keywords: - ensembl - genomics @@ -8,50 +10,47 @@ keywords: - validation tools: - - "manifest": - description: "Nextflow modules for genomic data file manifest comparison/checking" - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + manifest: + description: "Nextflow modules for genomic data file manifest comparison/checking" + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - manifest_files: - type: file - description: Set of genomic data files - pattern: "*.{gff3,fasta,json}" + - name: meta + type: map + description: "Groovy Map containing meta information, e.g. `[ id:'accession1' ]`" + + - name: manifest_files + type: file + description: "Set of genomic data files" + pattern: "*.{gff3,fasta,json}" + output: - - all_files: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - '*.*", includeInputs: true': - type: file - description: All files used as entry. - pattern: "*.{gff3,fasta,json}" - - error_log: - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ id:'accession1' ]` - - integrity_file: - type: file - description: - Captures potential errors detected during the integrity check of - a manifest file (manifest.json). - pattern: "integrity.out" - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: all_files_meta + type: map + description: "Groovy Map containing meta information, e.g. `[ id:'accession1' ]`" + + - name: all_files + type: file + description: "All files used as entry" + pattern: "*.{gff3,fasta,json}" + includeInputs: true + + - name: error_log_meta + type: map + description: "Groovy Map containing meta information, e.g. `[ id:'accession1' ]`" + + - name: integrity_file + type: file + description: "Captures potential errors detected during integrity check" + pattern: "integrity.out" + + - name: versions + type: file + description: "File containing module software versions" + pattern: "versions.yml" + authors: - "@ensembl-dev" maintainers: diff --git a/modules/ensembl/manifest/maker/meta.yml b/modules/ensembl/manifest/maker/meta.yml index 704557a..1c3dece 100644 --- a/modules/ensembl/manifest/maker/meta.yml +++ b/modules/ensembl/manifest/maker/meta.yml @@ -1,5 +1,6 @@ +--- name: "manifest_maker" -description: +description: > Generate a manifest and validate its JSON schema using provided input files and metadata. keywords: @@ -8,25 +9,29 @@ keywords: - genomio - integrity - validation + tools: - - "manifest_maker": - description: "Nextflow modules for genomic data file manifest comparison/checking." - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ["Apache License version 2.0"] - identifier: "" + manifest_maker: + description: "Nextflow modules for genomic data file manifest comparison/checking." + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" + input: - - - meta: - type: map - description: | - Groovy Map containing meta information - e.g. `[ accession:'accession01' ]` - - file_name: {} + - name: meta + type: map + description: > + Groovy Map containing meta information, e.g. `[ accession:'accession01' ]` + - name: file_name + type: file + description: "Input file to validate." + output: - - versions: - - versions.yml: - type: file - description: File containing information on module software version - pattern: "versions.yml" + - name: versions + type: file + description: "File containing information on module software version." + pattern: "versions.yml" + authors: - "ensembl-dev@ebi.ac.uk" maintainers: diff --git a/modules/ensembl/metadata/amendgenome/meta.yml b/modules/ensembl/metadata/amendgenome/meta.yml index 7864827..fe59eb0 100644 --- a/modules/ensembl/metadata/amendgenome/meta.yml +++ b/modules/ensembl/metadata/amendgenome/meta.yml @@ -1,57 +1,60 @@ --- name: "metadata_amendgenome" -description: Extends genome metadata using input files and validates the output against a genome schema. +description: > + Extends genome metadata using input files and validates the output against + a genome schema. keywords: - amend - genome - - metada + - metadata - validation tools: - - "metadata_amendgenome": - description: "This module processes genome metadata by incorporating additional data from assembly reports and GenBank files, ensuring compliance with the genome schema" - homepage: "https://github.com/Ensembl/nextflow_modules" - licence: ['Apache License version 2.0'] + metadata_amendgenome: + description: > + This module processes genome metadata by incorporating additional + data from assembly reports and GenBank files, ensuring compliance with the + genome schema + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] + identifier: "" input: - - meta: - type: map - description: - Groovy Map containing meta information - e.g. `[ accession:'accession01' ] - - genome_json: - type: file - description: "JSON file containing genome metadata." - pattern: "*.json" - - asm_report: - type: file - description: "Assembly report file with genomic metadata." - pattern: "*.txt" - - genomic_fna: - type: file - description: "FASTA file containing genomic sequences." - pattern: "*.{fna,fasta,fa}" - - - genbank_gbff: - type: file - description: "GenBank file containing genome annotations." - pattern: "*.{gbff,gb}" - + - name: meta + type: map + description: > + Groovy Map containing meta information e.g. `[ accession:'accession01' ]` + - name: genome_json + type: file + description: "JSON file containing genome metadata." + pattern: "*.json" + - name: asm_report + type: file + description: "Assembly report file with genomic metadata." + pattern: "*.txt" + - name: genomic_fna + type: file + description: "FASTA file containing genomic sequences." + pattern: "*.{fna,fasta,fa}" + - name: genbank_gbff + type: file + description: "GenBank file containing genome annotations." + pattern: "*.{gbff,gb}" + output: - - meta: - type: map - description: - Groovy Map containing meta information - e.g. `[ accession:'accession01' ] - - amended_json: - description: "JSON file containing genome metadata." - pattern: "*.json" - - versions: - type: file - description: "File containing information on module software version." - pattern: "versions.yml" - - + - name: amended_json + type: map + description: > + Groovy Map containing meta information e.g. `[ accession:'accession01' ]` + - name: amended_json_file + type: file + description: "JSON file containing genome metadata." + pattern: "*.json" + - name: versions + type: file + description: "File containing information on module software version." + pattern: "versions.yml" + authors: - "@ensembl-dev" maintainers: diff --git a/modules/ensembl/metadata/genomesummary/meta.yml b/modules/ensembl/metadata/genomesummary/meta.yml index f390100..c2b5b5f 100644 --- a/modules/ensembl/metadata/genomesummary/meta.yml +++ b/modules/ensembl/metadata/genomesummary/meta.yml @@ -1,7 +1,6 @@ --- name: "metadata_genomesummary" -description: Extract genome meta info from am NCBI datasets-cli 'genome summary' JSON. - A structured query JSON is also input and used to extract the key meta from the genome summary JSON. +description: Extract genome meta info from an NCBI datasets-cli 'genome summary' JSON. keywords: - container - docker @@ -9,48 +8,47 @@ keywords: - ensembl-genomio - genome - metadata + tools: - - "metadata": - description: Modules which function to generate,fetch or otherwise work \ - with metadata curation or preparation. - homepage: "https://github.com/Ensembl/nextflow_modules" - license: ['Apache License version 2.0'] + metadata: + description: Modules which function to generate, fetch or otherwise work \ + with metadata curation or preparation. + homepage: "https://github.com/Ensembl/nextflow_modules" + license: ["Apache License version 2.0"] input: - - accession: - type: map - description: Meta map including sequence accession. Sequence record associated with - NCBI accession (e.g. NC_0-9+, NM_0-9+, NT_0-9+, NP_0-9+) - e.g. [[ accession:'NC_12341']] - - input_query: - type: file - description: Input query to parse an NCBI genome summary JSON - pattern: "*-query.json" - - genome_summary_json: - type: file - description: A genome summary JSON file downloaded via datasets-cli (NCBI) \ - containing 1> genome summaries '{reports: {}}' - pattern: "*.json" + - name: accession + type: map + description: Meta map including sequence accession. + + - name: input_query + type: file + description: Input query to parse an NCBI genome summary JSON + pattern: "*-query.json" + + - name: genome_summary_json + type: file + description: | + A genome summary JSON file downloaded via datasets-cli (NCBI) + pattern: "*.json" output: - - meta: - type: map - description: | - Meta map including sequence accession. Sequence record associated with - NCBI accession (e.g. NC_0-9+, NM_0-9+, NT_0-9+, NP_0-9+) - e.g. [[ accession:'NC_12341']] - - meta_json: - - "genome-meta.json": - type: file - description: Genome metadata queried from complete NCBI datasets genome summary JSON. - pattern: "*-meta.json" - - versions: - - "versions.yml": - type: file - description: File containing software versions - pattern: "versions.yml" + - name: meta + type: map + description: Meta map including sequence accession. + + - name: meta_json + type: file + description: Genome metadata queried from JSON. + pattern: "*-meta.json" + + - name: versions + type: file + description: File containing software versions + pattern: "versions.yml" authors: - "ensembl-dev@ebi.ac.uk" + maintainers: - "ensembl-dev@ebi.ac.uk" diff --git a/modules/ensembl/schema/json/meta.yml b/modules/ensembl/schema/json/meta.yml new file mode 100644 index 0000000..e8d09ec --- /dev/null +++ b/modules/ensembl/schema/json/meta.yml @@ -0,0 +1,48 @@ +--- +name: "schema_json" +description: > + Validate the schema for JSON files. + +keywords: + - validate + - JSON + - schema + +tools: + Schema: + description: "Nextflow modules for Ensembl pipelines" + homepage: "https://github.com/Ensembl/nextflow_modules" + license: "Apache License 2.0" + identifier: "" + +input: + - name: meta + type: map + description: > + Groovy Map containing sample information, e.g. `[ id:'sample1', single_end:false ]` + + - name: json + type: file + description: JSON file to validate + pattern: "*.{json}" + +output: + - name: meta + type: map + description: > + Groovy Map containing sample information, e.g. `[ id:'sample1', single_end:false ]` + + - name: verified_json + type: file + description: Verified JSON file + pattern: "*.{json}" + + - name: versions + type: file + description: File containing ensembl-genomio versions + pattern: "versions.yml" + +authors: + - "ensembl-dev@ebi.ac.uk" +maintainers: + - "ensembl-dev@ebi.ac.uk" From 17f933e8dedc40afc261a1ffedcdacece3bb8a98 Mon Sep 17 00:00:00 2001 From: dishalodha Date: Tue, 17 Mar 2026 16:01:15 +0000 Subject: [PATCH 26/26] create a touch file --- modules/ensembl/annotation/dumpanno/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ensembl/annotation/dumpanno/main.nf b/modules/ensembl/annotation/dumpanno/main.nf index 0c26e02..e26a678 100644 --- a/modules/ensembl/annotation/dumpanno/main.nf +++ b/modules/ensembl/annotation/dumpanno/main.nf @@ -50,7 +50,7 @@ process ANNOTATION_DUMPANNO { stub: version = "0.4" """ - echo "No change, create an empty json file" > functional_annotation.json + touch functional_annotation.json # Get version from genomio please echo -e -n "${task.process}:\n\tensembl-legacy-scripts:e112_APIv0.4 : $version" > versions.yml