Make the test suite runnable without maintainer credentials
Nobody has claimed this yet.
- Dominant language
- Nextflow
- Stars
- 18
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
Difficulty: Easy
Why this matters: right now most of the pipeline's nf-test cases point at one fixed, already-existing ENA study (PRJEB98843) that belongs to the maintainers. To run those tests successfully you need a Webin account that already has write access to that specific study, which outside contributors and regular users don't have. Out of the 14 test configs in conf/, only 2 (test_assembly_no_study_complete_metadata.config and test_mag_no_study_complete_metadata.config) register a brand new study on the fly instead, and registering a new study only needs a normal, free Webin test account, the kind anyone can sign up for. The goal is to flip that ratio so most tests work for anyone with their own Webin account, and only a couple stay pinned to the shared existing study.
Some terms: ENA (European Nucleotide Archive) is a public repository for sequencing data, and it's where this pipeline submits data to. Webin is ENA's account and authentication system, you need a Webin account to submit anything, and registration is free and self-service. A "study" in ENA is the container every submission has to belong to. You can either point the pipeline at a study that already exists (that's what most current tests do, using the shared PRJEB98843), or have the pipeline register a new one for you as part of the run (both options are explained in docs/usage.md under "Submission study").
Skills / experience: no ENA experience needed beyond reading the usage doc section mentioned above. You'll need to read/modify Nextflow config files and run nf-test locally and update the snapshots, both fine to pick up as you go. If nf-test is new to you, the nf-core nf-test testing guide is a good place to start.
Suggested approach:
- Read the "Submission study" section of
docs/usage.md, so you understand the two ways a study can be provided (existing accession vs. registering a new one). - Register a free Webin test account and set it as Nextflow secrets locally (
ENA_WEBIN,ENA_WEBIN_PASSWORD), see the README for the exact commands. - Look through
conf/test*.configandconf/test*.conf, and note which ones setsubmission_study = "PRJEB98843"versussubmission_study = null. - For most of the ones using the fixed study, switch them to the "register new study" pattern already used in
test_mag_no_study_complete_metadata.config(setsubmission_study = nulland pointstudy_metadataat a metadata file). - Leave one or two tests pointing at the fixed study on purpose, so that code path still gets tested, and make it clear in their config description that they need maintainer credentials.
- Run
nf-testlocally with your own account and confirm the switched tests pass end to end. - Update
tests/*.nf.testdescriptions if they mention the old behaviour.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the “Submission study” section in docs/usage.md and inspect the submission_study settings in conf/test*.config and conf/test*.conf. Use the existing no-study configs as the pattern, run nf-test with local ENA_WEBIN credentials, and update tests/*.nf.test descriptions or snapshots as needed. Done means most tests register a new study while one or two still cover the fixed-study path.
Written by the indexing model from the issue text.
Assessment
- Domain
- devops, testing
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 76/100