New pipeline proposals and onboarding
Instructions for nf-core pipeline approval:
- Emphasise collaboration (prefer to have more developers on one pipeline rather than one developer).
- Ensure proposal follows nf-core pipeline guidelines.
- In some cases, promote ‘partial acceptance’, i.e., if upstream steps already covered in another pipeline, propose new pipeline of just non-overlapping steps
- If accepted: update the Project status on the issue ‘Accepted’ section
- If not accepted: update the project status to ‘turned down’
- Two members of the core team.
- One member of the core team and one member of the maintainers team.
- Website repo > Actions > Build json files and md-cache > Run workflow > From main.
Uploading test data to s3 bucket
Instructions for uploading full-test AWS files for a pipeline to a S3 bucket:
Repository transfer to nf-core organisation
Making custom docker containers for modules
Instructions for adding custom docker containers to the nf-core https://quay.io organisation.
These instructions require the person building and pushing the container to have push rights to the organization. Only core members may have this access, and new core members should request access from existing members.
-
Check with the module author to ensure there is no available solution via Conda, Bioconda, or BioContainers.
-
Ask the module author to:
- Place a
Dockerfile
alongside the module (sub)directories - Add a
README.md
describing why the container is needed, and provide instructions for building the container - (Optional) add a
.gitgnore
file to ensure build artefacts are not pushed with theDockerfile
andREADME.md
- Place a
-
Ensure Docker is correctly authenticated for pushing to
quay.io
.docker login --username <QUAY_USER_NAME> quay.io
-
Build the Docker image locally and tag it appropriately:
docker build . -t quay.io/nf-core/<TOOL>:<VERSION>
-
Push the built container image:
docker push quay.io/nf-core/<TOOL>:<VERSION>
-
Share the container reference with the module author so they can update the module:
container "nf-core/<TOOL>:<VERSION>"
NoteThis replaces the entire Docker/Singularity condition in the module.
Activating Zenodo archiving of a new pipeline
Instructions for setting up Zenodo DOIs.
It’s recommended that a core team member transfers the DOI to the nf-core Zenodo community.
Before release:
-
Sign up and log in to Zenodo.
-
Select GitHub -> Connect Account in the dropdown menu of your account and connect your GitHub account.
-
Select GitHub in the dropdown menu of your account once connected.
-
Toggle the On switch of the pipeline to enable Zenodo archiving.
NoteIt’s a good idea to enable this for all active pipelines, as DOIs will only be assigned upon release.
NoteSome repositories (e.g., nf-core/exoseq) may not be activated as they are archived.
-
Inform the pipeline developers to make a release.
Post release:
README.md
: Add the Zenodo Badge and update the If you use this pipeline cite section.Nextflow.config
: Update the manifest block to include the DOI.- Commit these changes with the message “Add Zenodo ID after first release”.
Adding new community member to the GitHub organisation
Anyone can request to join the nf-core GitHub organisation via the #github-invitations channel.
Updating online bingo cards
Before each hackathon, we need to update the bingo cards to ensure they remain current.
To update the bingo cards:
- Key: Number
- Value: New board entry
Backups
The following items should be regularly backed up by a member of core team with admin access to the relevant service:
New core team member onboarding
This documents the steps that need to be performed when adding a new core team member: