Commit c75d8605 authored by mmassaviol's avatar mmassaviol
Browse files

Update singularity files naming

parent 46d497ac
# Documentation Wapps
- [Documentation Wapps](#documentation-wapps)
- [1 Construire un conteneur](#1-construire-un-conteneur)
- [2 Utiliser un conteneur](#2-utiliser-un-conteneur)
- [2.1 Avec interface graphique](#21-avec-interface-graphique)
- [2.2 En ligne de commande](#22-en-ligne-de-commande)
- [2.2.1 En local](#221-en-local)
- [2.2.2 Sur un cluster](#222-sur-un-cluster)
- [3 Modifier un workflow](#3-modifier-un-workflow)
Le dépôt [Wapps](https://gitlab.mbb.univ-montp2.fr/mmassaviol/wapps) (Workflow applications) contient les fichiers nécessaires pour créer des conteneurs d'application générés à l'aide du dépot [WAW](https://gitlab.mbb.univ-montp2.fr/mmassaviol/waw) (Workflow Application Wrapper).
Les outils sont wrappés sous la forme de règles **Snakemake** (système de gestion de workflow) et de fichiers de configuration **YAML**. Les workflow sont ensuite composés d'une suite d'outils listés dans un fichier de configuration **YAML**.
......@@ -8,12 +17,12 @@ A l'aide d'un script on génère le fichier snakefile, le fichier de paramètres
Liste des workflows existants:
+ Metabarcoding (using dada2)
+ Mito_Assembler_Megahit (Megahit + MitoZ)
+ MitoZ
+ RADseq_ref (stacks)
+ RADseq_denovo (stacks)
+ Virus_Assembler_Megahit (Megahit + Blast + BWA)
- Metabarcoding (using dada2)
- Mito_Assembler_Megahit (Megahit + MitoZ)
- MitoZ
- RADseq_ref (stacks)
- RADseq_denovo (stacks)
- Virus_Assembler_Megahit (Megahit + Blast + BWA)
## 1 Construire un conteneur
......@@ -26,16 +35,16 @@ Un conteneur peut aussi être construit à partir d'un fichier recette qui conti
Dans notre cas on crée un premier conteneur qui contient les outils basiques et communs à tous les workflows pour gagner du temps par la suite (ce sera notre base pour les futurs conteneurs). Pour construire un conteneur singularity il faut le programme [Singularity](https://singularity.lbl.gov/) (disponible sous Linux) et un fichier de recette qui est fourni sur le dépôt git de Wapps. Il faut aussi les droits administrateur pour pouvoir construire le conteneur (ils ne sont pas nécessaires pour l'utilisation du conteneur).
```bash
sudo singularity build base.simg base.recipe
sudo singularity build base.sif base.def
```
Ici on se place à la racine du dépôt et on construit le conteneur de base (qui contient R, Snakemake, MultiQC, FastQC, ...). Ensuite pour construire le conteneur du workflow choisi il suffit de se placer dans le dossier du workflow et de lancer la commande suivante :
```bash
sudo singularity build NomDuWorkflow.simg files/singularity.recipe
sudo singularity build NomDuWorkflow.sif files/singularity.def
```
On obtient le conteneur *NomDuWorkflow.simg* que l'on peut ensuite utiliser en local ou copier sur n'importe quelle machine ayant une version de **Singularity** égale ou supérieure à celle qui a permis la construction du conteneur.
On obtient le conteneur *NomDuWorkflow.sif* que l'on peut ensuite utiliser en local ou copier sur n'importe quelle machine ayant une version de **Singularity** égale ou supérieure à celle qui a permis la construction du conteneur.
## 2 Utiliser un conteneur
......@@ -48,13 +57,13 @@ Dans les deux cas il va falloir lier les dossiers nécessaires pour qu'ils soien
Pour lancer l'application il faut lancer la commande :
```bash
singularity run --app UI -B /chemin/vers/les/données:/Data -B /dossier/de/résultats:/Results NomDuWorkflow.simg addresse_IP_hôte port
singularity run --app UI -B /chemin/vers/les/données:/Data -B /dossier/de/résultats:/Results NomDuWorkflow.sif addresse_IP_hôte port
```
Par exemple :
```bash
singularity run --app UI -B /home/jdupont/Documents/données:/Data -B /home/jdupont/Documents/résultats_workflow:/Results Mito_Assembler_Megahit.simg 127.0.0.1 1234
singularity run --app UI -B /home/jdupont/Documents/données:/Data -B /home/jdupont/Documents/résultats_workflow:/Results Mito_Assembler_Megahit.sif 127.0.0.1 1234
```
Il suffit ensuite de se connecter avec son navigateur à l'adresse et au port choisi dans la commande ('<http://127.0.0.1:1234'> dans l'exemple).
......@@ -66,7 +75,7 @@ Il suffit ensuite de se connecter avec son navigateur à l'adresse et au port ch
Pour lancer le workflow il faut un un fichier de configuration. Pour obtenir ce fichier il faut soit se rendre dans le dépot Wapps, dans le dossier du workflow choisi puis dans sous-dossier files on trouve le fichier params.total.yml. Il suffit de copier ce fichier dans un autre dossier. Une autre façon d'obtenir ce fichier est d'utiliser la commande getConfigfile du conteneur qui va copier un fichier de paramètre par défault dans le dossier courant. Pour cela il faut lancer la commande :
```bash
singularity run --app getConfigfile NomDuWorkflow.simg
singularity run --app getConfigfile NomDuWorkflow.sif
```
Une fois ce fichier obtenu (params.yml) on peut y modifier les paramètres à sa guise.
......@@ -79,16 +88,16 @@ Pour remplir la variable samples il suffit de faire la liste des samples en pren
Exemple:
+ sample_1_R1.fastq.gz
+ sample_1_R2.fastq.gz
+ sample_2_R1.fastq.gz
+ sample_2_R2.fastq.gz
- sample_1_R1.fastq.gz
- sample_1_R2.fastq.gz
- sample_2_R1.fastq.gz
- sample_2_R2.fastq.gz
Dans ce cas on spécifie:
+ SeOrPe: PE
+ sample_suffix: .fastq.gz
+ samples: ["sample_1","sample_2"]
- SeOrPe: PE
- sample_suffix: .fastq.gz
- samples: ["sample_1","sample_2"]
Une fois ces paramètres spécifiés on peut enfin lancer le workflow de la manière suivante:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment