Skip to content

linting setup#13

Open
Jorisvansteenbrugge wants to merge 5 commits into
developfrom
feature/linting
Open

linting setup#13
Jorisvansteenbrugge wants to merge 5 commits into
developfrom
feature/linting

Conversation

@Jorisvansteenbrugge
Copy link
Copy Markdown
Collaborator

@Jorisvansteenbrugge Jorisvansteenbrugge commented May 18, 2026

Modules repository setup with linting GitHub actions. Some additional context is available in the README. Important for this review is this bit, which is a debatable design choice.

A fork of the nf-core CLI tools is used to run the linting actions (https://github.com/UMCUGenetics/nf-core-tools.git). This was done to make the linting of modules more customizable. For our purposes not all requirements by nf-core are necessary. Linting configuration of this repository is configured in .nf-core.yml and is structured similarly to how nf-core pipeline lint configuration works (note that the tests in the yml file are the ones being skipped, all the others are enabled).

I've included two example modules that are used in the PRS pipeline to illustrate how the linting tests are performed in practice.


The repository can be tested locally. To view the available modules in this feature branch:

nf-core modules --git-remote https://github.com/UMCUGenetics/Modules --branch feature/linting list remote

The --branch flag defaults to main/master.

To install the modules from this feature branch in a pipeline:

nf-core modules --git-remote https://github.com/UMCUGenetics/Modules --branch feature/linting install pgscatalog/combine

Module versions will be tagged in the modules.json file of the pipeline. Modules from this repository can co-exist with modules from the nf-core repository (as long as they don't have the same name). Updating modules can similarly be done using the same CLI.
For example:

"repos": {
    "https://github.com/UMCUGenetics/Modules": {
      "modules": {
        "UMCUGenetics": {
          "pgscatalog/combine": {
            "branch": "feature/linting",
            "git_sha": "fd329845e50a4ba1c7ab191a8c496c4b3e9ed4d9",
            "installed_by": ["modules"]
          }
        }
      }
    },
    "https://github.com/nf-core/modules.git": {
      "modules": {
        "nf-core": {
          "bcftools/filter": {
            "branch": "master",
            "git_sha": "06c8865e36741e05ad32ef70ab3fac127486af48",
            "installed_by": ["modules"]
          },

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant