singularityhub EMBL Rome
Introduction
This repository aims at sharing singularity images among the EMBL community. We try to follow a strict model to provide uniformly designed singularities. Please let us know if we should modify anything.
Important: Since we do not have a premium account, I tried to find some workaround. We cannot secure completely that master will stay green. Please be careful to strictly follow the instructions.
Pulling
Please read the entire section before trying to pull any singularities.
To pull an existing singularity, first have a look at the image of interest in the list here or in this folder.
Copy the script below in a download.sh
file and run the command: bash dowload.sh username containername imagename
. For example, bash download.sh descoste fastqcv0019.sif 'fastqc:0119'
.
#!/usr/bin/bash
USERNAME=$1
CONTAINERNAME=$2
IMAGE=$3
singularity pull --docker-username $USERNAME --docker-password $SINGULARITY_DOCKER_PASSWORD $CONTAINERNAME oras://git.embl.de:4567/descoste/singularityhub-emblrome/$IMAGE
Important: You need to define a git token to be able to use the $SINGULARITY_DOCKER_PASSWORD
variable. Follow these steps:
- Click on your avatar at the top right of your gitlab page.
- Click on
preferences
. - Click on
Access Tokens
. - Enter a Token name. ex: "singularitypull".
- In the
Select scopes
section, selectread_registry
. - Click
Create personal access token
. - At the beginning of the new loaded page, click on the folder icon to copy your new personal access token.
- Edit your
.bashrc
(emacs -nw ~/.bashrc
orvim ~/.bashrc
) by addingexport SINGULARITY_DOCKER_PASSWORD="paste_your_copied_access_token_here"
wherever you like. - After closing your editor, run
exec bash
. - Now try to pull a particular singularity following the instructions above.
Contributing
This repository is maintained by Nicolas Descostes.
Important: Since we do not have a premium account, I tried to find some workaround. We cannot secure completely that master will stay green. Please be careful to strictly follow the instructions.
Important Bis: Each singularity should contain a single tool. Contact me ahead if you plan otherwise.
To add a new singularity recipe, you need to:
- Clone the repository:
git clone git@git.embl.de:descoste/singularityhub-emblrome.git
- Enter the folder:
cd singularityhub-emblrome/
- Position yourself on the "submission" branch:
git checkout submission
. - Make sure that the content of the branch is up-to-date:
git reset --hard main
- Add a singularity recipe inside
recipes
in the adapted folder.
Respect the naming format Singularity.toolName-tag
(with a upper-case S). Please use common sense to choose the folder. If you are not sure, please contact me by email or by chat.
For instance, if you want to submit fastqc version 0119cv8, your file name will be Singularity.fastqc-0119cv8
.