# Sprint data
- utilisation board issue
https://gitlab.in2p3.fr/fbi-data/coordination/-/boards/3677
# Planning FBI DATA
- Démo état des lieux M%ontpellier et Nantes.
- MADBOT (présentation Julien Seiler) ajd à 16h
- SCRUM (Rôle à définir)
- DOC (Retour utilisateurs/Zammad)/définition d'une première FAQ
- ROADMAP (Priorités déploiement et FBI.data (dont formations et Mooc) ) Deploiment faire un point Release 1/2 etc..
- PARTAGE
- TEST UNITAIRES (Procédures dégradées )
#J 2
# 1. Démo état des lieux Montpellier et Nantes.
A faire
- Test remplissage fichier excel
- changer les entêtes des colonnes dans fichier excel pour qu'ils soient plus clairs
- Pas d'espaces dans certains champs de fichiers excel
- Pas d'espaces dans les noms d'investigation
- bouton change password omero -> rediriger vers page authentik
- a debuger
# 2. SCRUM (Rôle à définir)
Les rôles
- Sprint = max 1 mois, 15 jours sinon.
- Plusieurs types de sprint : (Deploiement (DEV : GG+TB) , DOC (MM+GM), RETOUR USER (RBM+GM) ... )
- Product Owner: Emmanuel Faure vision globale: clarification et définition du user story/definition backlog,
- recuper les differentes users stories possible et définit les priorités
- Role au début de chaque Sprint
- Définit les roles (SM+DEV) et les personnes impliqués.
- Et bilan à la fin
- Scrum Master :
- le Scrum Master doit être décidé à chaque sprint (en fonction du type)
- Il ne peut pas être dans les DEV
- La réunion de définition des tâches doit se faire entre les DEV et le SM (pas les autres nécessairemnt )
- Le SM fait le point avec les DEV (Daily point) tout les semaines avec un estimation du temps par tour de table par exemple.
- L'idée est qu'on change de SM à chaque sprint
- Le SM doit faire le point chaque semaine.
- Le sccrum Master fera des cartes de coordination gitlab avec les temps en poste plannification.
- l'equipe de dev, doc et dev
- sprint reviewer intégration continue nécessaire.
- partie prenantes.
- Regles :
1ers lundi du mois
- Finalisation du sprint
- Choix des users stories et rtépartition rôle
- Plannification du sprint dans l'après midi (sans le scrum master)
- Puis Cr tâches au Scrum Master
Question du hot fix -> exemple de l'import demo de ce matin.
Sprint doc possible en parrallele de sprint dev
Plannification du sprint:
S’accompagne des données et estimations nécessaires pour documenter le prochain projet de sprint.
Confirme les estimations réalisées pour les tâches dans le backlog produit du sprint.
Sélectionne les tâches du backlog produit à réaliser lors du prochain sprint.
Évalue la capacité de l’équipe à procéder au prochain sprint.
Conclut les réunions par une séance de questions-réponses.
Puis en Daily Sprint= Hebdo Sprint.
Quelles étaient les tâches d’hier ?
Quelles sont celles d’aujourd’hui ?
Avez-vous repéré des points de blocage ?
# 3.a Sprint DOC (G.M. M.M. E.F)
## Example Sprint 1 dev:
User story = s'assurer sque modification n'impacte pas le fonctionnement précédent -> Intégration continue CI et tests unitaires.
EF= Product Owner
Raphael= MB https://asana.com/fr/resources/scrum-master
Taches précédentes:
- Le docker compose de test tourne (irods + omero-server + ndfsrods)
- conteneur quay
- pytest tourne pour les tests unitaires indépendants du serveur
À faire:
1. Configurer pytest pour lancer le docker compose
2. Démontrer un test unitaire nécessitant docker compose
par exemple tester [`OmeroManager.transfer`](https://gitlab.in2p3.fr/fbi-data/omero-quay/-/blob/main/src/omero_quay/managers/omero.py?ref_type=heads)
3. Tests d'intégration
par exemple faire tourner `script/irods_import.py`
Test fonctionnel pour débuggage par exemple.
Solution technique CI: gitlab In2P3 Gitlab CI avec Runner sur meso : CI infra ok
# 3.b Sprint DEV Test unitaires (les autres) (cf au-dessus)
## Example Sprint 2:
Marc et Guillaume sont dev
Scrum Mistress Perrine
EF : End user
User story: l'utilisateur peut remplir en autonomie le fichier excel
User story: Pouvoir réalisert un import
- USER_1 : Ingés FBI DATA
- USER_2 : Ingés plateformes
-
**Tache 1 : Finalisation doc Phase 1 pour user_1:**
Rappel des tests Phase 1
- Upload :
- montage espace perso en réseau avec Samba (Nantes uniquemnt)
- Jeu de données + Fichier Excel dans un dossier (montage Samba dans espace perso) à Nantes et Montpellier
- client en ligne de commande (avec fichier excel) (simplecli) (import dans l'espace commun)
- Download :
- iget (depuis espace commun )
- Omero web et insight (depuis espace commun )
- sftpgo (depuis espace perso)
- NE PAS TESTER : Omero insight (modif,renommer,deplacer,partage)
- Tâches à effectuer``
- T1a. Procédure de tests (Zammad) : Définir la procédure de tests et le Canevas de test sous Zammad associé -> (Guillaume M ESTIMATION 3J) ; puis Marc fera la page MKdoc pour l'expliquer aux users 2 (Marc ESTIMATION 1J).
- T1b. Faire une page d'intro plus courte en une seule page (Stockage deporté au meso, avec le système tampon, (0.5J) exemple page Omero Overview. Priorité 1
- T1c Expliquer les Phases de déploiement (avec un pointeur vers la page des tests ) )(Marc ESTIMATION 2J) priorité 1
- T1d. une page de la listes des tests (remonter la doc admin) (Marc ESTIMATION 0.5J) Priorité 1
- T1e. Documentation sur identification et changement Récupération du mot de passe sur page omero (ESTIMATION 1J), à déployer par Théo
- T1f. Mettre en avant les éléments temporaires et le fonctionnement visé à terme (explications sur l'authenfication visée feuille de route) (Marc ESTIMATION 4J)
- T1g. Excel remplissage à clarifier avec des exemples xcel (MARC 1.5J)
- T1h. Faire remonter les problématiques actuelles en testant le suivi de la doc (Guillaume M, Perrine Paul-G) (Estimation 1J)
- T1i. avoir un workflow simplifié aide mémoire (Marc Estimation 1J)
**Tache 2 : Ajouter (préliminaire) Phase 2 pour user_2 :**
Rappel des tests Phase 2
- Upload :
- montage espace perso en réseau avec Samba (ajouter montpellier)
- iput (dans l'espace utilisateur avec fichier , command irods installé )
- sftpgo (dans l'espace utilisateur avec fichier )
- Partage des droits :
- en modifiant l'excel (column owner et members) (droit définits uniquement au nieau de l'Investigation (de ISA))
- avec consequence sur iget de la données partagées
- Tâches à effectuer`:
- T2a. doc : demander à Guillaume G pour le fonctionnenemnt Samba Montpellier (M. Mongy ESTIMATION 1J )
- T2b. installation irods local avec (iput et iget) Squelette à définir (M Mongy ESTIMATIOn 1J)
- T2c. rajouter la description des droits du fichier excel (M Mongy Estimation 1J)
Durée du Sprint MM 10J phase 1 + 3J pahase 2 2 semaines
1.5 avant lundi puis après le 14 mai
23 mai fin du Sprint
# 4. Zammad (+ Point GIT) (G.M.)
Question Configuration Zammad (GM)
Définir des profils utilisateurs et les tiockets qu'ils recoivent.
On ne peut pas assigner un ticket à plusieurs personnes mais tous les admin peuvent cloturer.
Question des bugs qui ne devrait plus apparaitre par exemple.
affectation de ticket= propriétaire
enlever outbouyd call etc...
Groupe Elever admin et users, rajouter un "Fonctionnalité manquante"
State à désactiver
Tickets crées, GM affecte.
Possibilité de créer des filtres d'attribution.
Configuration d'abonnements mails/notifications à faire (par exemple recevoir les updates sur ses propres tickets)
Créations des templates de tests (cf taches sprint_doc1)
# 5. FINALISER LE DETAIL ROADMAP (T.B et G.G)
A FAIRE + TARD
# 6. Cachier des charges MADBOT
pour le MVP (minimum Viable Product)
- Import from (import de dossier complet , à clarifier par GG )
- Création compte (associé à authentik)
- Création ISA = node et retour de isa-importer
- API Admin (Objectifs utilisation : backpropagate des modifs effectués dans omero doivent s'appliquer à Matbot )
- Accés à une publication des évenenmnts MATBOT en temps réel (un data name est modifier dans matbot et on doit le propager dans omero puis IRODS )
- Possibilité de créer un référentioel metadonnées entrepôt Bio Image Archive
- Instance Bac à sable des maintenant (besoin avant le MVP)
- Gestion des membres dans MadBot <-> avec les groupes omeros
- Procédure Déploiement qui permet de ne pas avoir d'interuption de service
# 7. 15H. Training + GBI (Fabrice.C)
https://globalbioimaging.org/exchange-of-experience/exchange-of-experience-ix
https://founding-gide.eurobioimaging.eu/community-event-2024/
Poster à soumettre absolument
Annual meeting. EOSC HANDS on meeting . EVOLVE Data
Se rembarquer dedans, se mobiliser dessus Demander au BE de proposer une stratégie d'outreach européen.@Emmanuel et Guillaume -> Yves Mely et Caroline mettent à l'ODJ
Stratégie training. Production MOOC.
Doc -> Mind mapping à faire doc (ISA Metdata/ formation à notre systeme/DMP)
NE PAS EDITER https://coggle.it/diagram/YCOlFC31dzCCuJgT/t/knowledge-book-image-processing-and-analysis
LE NOTRE: https://coggle.it/diagram/Zie43lY0PmVeoo3d/t/knowledge-book-image-data-management
# 8. Achat Machines Tampon
- 60k€
- Role de la machine :
- deplacement vers le meso (Donc effacement)
- Stockage des données avant de retourner à l'espace utilisateur (Bac a sable )
- conversion de données ?
- Génération de thumbail ?
- SAMBA et IRODS local .
- Proposition de 2 espaces SAMBA
- /users/BACASABLE (Dépend de la plateforme -> possibilité d'effacement après 1 mois )
- /users/TOTRANSFERT (stockage sous notre reponsabiilité (dépend de la bande passante)
- 10 machines à 6k€ (devis à demander par Theo à DELL ou HPE )
- Définir les 10 plateformes en BE
# 9. Calcul
exécution au méso, avec le compte de l'utilisateur du méso.
Compte meso = renater ou autre fédération d'identité (ok Authentik).
FBIAS va fournir la liste des algos en priorité
Basé Docker -> sous slurm (généralement utilsié en méso) définition machine requirements jobs par utilisateur.
Données définies par utilisateur
requirements par nous ? ou laisser libre
Comment on les lance?
Exemple Curie voir demain démo. Aurélien Maillot
Open Mole.
Comment partaon t'on les dockers aux utislateurs (market place)
2 niveaux utilsiateurs :
- 1 sachant coder (ingé plateformes)
-> Notebook ? (Contrainte 1 seul machine pas de parallelisation via slurm)
Comment recuperer la données ? (API IRODS/OMERO ou montage filesystem par le meso)
-> Interface Surcouche au slurm MEso (Example Curie/Open Mole)
-> ou mets-on les data output-> Omero/Irods et avec quelles annotations
-> Comment renovie t on les logs ?
- 2 end user
-> Depuis Omero
-> Depuis FIJI Local https://f1000research.com/articles/11-392
-> Interface dédié
-Logiciels commerciaux à voir
- VM
- Omero certains algos
- Un gestionnaire de workflow type BioImageIT
- Jupyter notebook avec un jupyter hub sur meso .
- Obiwan Microbi https://github.com/hip-satomi/ObiWan-Microbi
- https://blog.omero-fbi.fr/blog/11-procedure_obiwan_microbi/ mais pas connecté au slurm
- Omero-slurm client BIOMERO https://github.com/NL-BioImaging/biomero
Comment faire
# 10. Autres trucs.
- Penser présentation pour Mercredi (et faire des captures d'écran)
https://fbi-data.pages.in2p3.fr/websites/mkdocs-website/
- groupes référents data. Faire doodle Juin
- Lien avec OpenCID
## Visio Madbot
- Confrontation calendrier juillet/aout. 1ere instance Juin. Besoin de bac à sable.
Ca peut etre des maintenant pour la sandbox? pendant sprint data?ok
- import from ? initialement que de labguru? Le core va créer les data link à partir du connecteur.
- API d'utilisateur pas admin
- Datalink vers des dossiers à rajouter!! Node = isa mapping.
- QUestion Synchro (datalink pourri= plus le bon)= dashboard.
- Question sur ISA dans Madbot = Renommer les noeuds ?
- API stable et début insertion de notre côté Rest OK et Python (Marc)
- doc Liens?? (notamment pour API) https://ifb-elixirfr.gitlab.io/madbot/madbot-doc/
-> Profiter pour demander à Julien les contacts fléchages mesocentre IFN NNCR
- question sur les collections de metadonnées( i.e masque de metadonnées) exemple Sample à demander.Notion d'association.
- Irods et court de route et adaptation API/ omero etc.. hackatons connecteurs.
- Question connecteur labguru referentiel madbot.
- Question identification -> Authentik OUi.délégable
- PGD Opidor et dsw? (Ma DMP?)
## Formation
- Formation générique ou adaptée à nos technos?
- Parties génériques:
- Structure de projet avec pyproject et hatch
- Rappels programmation orienté objet
- Gestionaire de contexte
- case / match
- Prog asynchrone (threading, subprocess, asyncio)
- Partie adaptée
- LinkML & Pydantic
- ZeroMQ
- APIs omero et iRODS
## Omero-quay
- Finish CI
- First test case: concatenate file names in assays (issue 14)
- Implement FSSpec Manager
- Implement [Majordomo](https://gist.github.com/costrouc/44b5dbcd7783c9b0fb3a95f065f577d4)
- Import from client
## Calendrier Déploiement (daté du 12/02/24)
Fichier Excel :
- Le fichier Excel Contient une liste des utilisateurs membres des données (A Veifier )
- Excel contineint l'onglet insvestigatio ndans lequel il y a les membres,
- Tous les membres ont accés en Read Annotate et peuvent accès à une study
Question du stockage à vérifier selon les phases
Marc: Responsable Documentation
- User Type:
- USER_1 : Ingés FBI DATA
- USER_2 : Ingés plateformes
- USER_3 : 1 ou 2 gros users par Node (Nantes, Montpellier)) (les identifier )
- USER_4 : Beta End USER (plus pour Nantes , Montpellier , ouverture vers Bordeaux)
- POINT Calendier et Phase Déploiement:
- PHASE 1 (USER_1):
- Fonctionnalités à tester :
Upload des données :
- montage espace perso en réseau avec Samba (Nantes uniquemnt)
- Jeu de données + Fichier Excel dans un dossier (montage Samba dans espace perso) à Nantes et Montpellier
- client en ligne de commande (avec fichier excel) (simplecli) (import dans l'espace commun)
Download data :
- iget (depuis espace commun )
- Omero web et insight (depuis espace commun )
- sftpgo (depuis espace perso)
DOC :
-> Adresse omero
-> remplissage excel
-> pointeur vers iget ipush
-> Mon compte utilisateur ? (envoyer un mail à GG)
-> Besoin de Zamad pour retour de ticket
-> Doc espace commun / espace utilisateur
-> montage du partage samba
-> doc SFTP go
Fonctionnement de test :
??? -> Voire avec Roles SCRUM
Les données restent sur pour l'instant sur SAMBA (à virier quand y'aura MATBOT)
- PHASE 2 (USER_1 + USER_2):
- Fonctionnalités à tester :
Test de réseaux
Upload des données :
- montage espace perso en réseau avec Samba (+ montpellier)
- iput (dans l'espace utilisateur avec fichier , ocmmand iros installé )
- sftpgo (dans l'espace utilisateur avec fichier )
Partage des droits :
- à la creation de l'excel avoir la possibilié de modifier (column owner et members) (droit définits uniquement au nieau de l'Investigation (de ISA))
- avec consequence sur iget de la données partagées
DOC :
-> Doc de l'infra (archi + port + réseau , etc++ )
- PHASE 3 (USER_1+USER_2+USER_3) :
- Fonctionnalités à tester : (de ceux des USERS_1)
- Upload des données :
- Omero insight (dans l'espace commun )
- et déplacement , effacement, renomage , partage
PAS DE Partage des droits avec IRODS (ichown bloqué)
PAS DE DEPLAMCENT EFFACEMETN RENOMAGE avec IRODS
- PHASE 4 (USER_1+USUER_2+USER_3+USER_4) : Intégration MatBot (ARCHI ISA ) (Chantier démarre au 01/04)
-> Creation de l'architecture (progation vers Omero et Irods)
-> Peut-êter avec les méta donnnées
Espace ISA accessible par IRODS est ouvert à la modificaiton (sous contrainte)
(Besoin de propagation des droits )
Espace ISA accessible par SAMBA est ouvert à la modificaiton (sous contrainte)
(Besoin de propagation des droits )
## Test docs:
- Mot de passe Authentik perdu -> pas de consigne. Bien préciser que le même pour Zammad etc... et si diferent bien préciser.
- Page https://fbi-data.pages.in2p3.fr/websites/mkdocs-website/import_donnees/#11-remplissage-du-fichier-excel Pas suffisante pour remplir Excel
- Flou lien entre les répertoires et les noms de fichiers. Attention au filage des exmple (par exemple nmae) ceciu est une investuigation puis investagtion donné en example comme nom.
- Flou sur la définition de owner remis plusieurs fois par rapport à l'identité de l'utilsiateur qui dépose les data.
- Mettre les fichiers excels assoiciés à chaque exemple en téléchargement.