Contexte
Les chaines de traitement scientifiques requièrent une expertise maîtrisée uniquement par les laboratoires. Toutefois, certains contextes nécessitent une intégration avec la chaîne de distribution assurée par le SEDOO.
Or, ces chaines de traitement sont souvent développées dans des technologies comme Python ou Fortran qui ne sont pas compatibles avec celles utilisées par le SEDOO (Java Spring Boot). Il est donc nécessaire de mettre en place un mécanisme d’intégration alliant les exigences suivantes:
- L’équipe scientifique doit pouvoir mettre à jour sa chaîne de traitement régulièrement
- La chaîne de traitement ne doit pas perturber le fonctionnement du serveur sur laquelle elle s’exécute
Proposition du SEDOO
Pour intégrer ces traitements le SEDOO propose la solution suivante:
- Les scripts sont déposés sur un dépôt Git par l’équipe scientifique.
- Le SEDOO met en place une application spécifique qui récupère le contenu du dépôt Git et exécute les scripts soit périodiquement, soit en réponse à un appel de type web service.
Limitations
- Une des limitations principales est qu’il n’est pas possible pour le SEDOO de s’assurer de ce que font ces applications.
- Ce mode d’intégration est adapté aux scripts simples. Pour des chaînes plus exigeantes, il faudra plutôt s’orienter vers des solutions comme l’hébergement de type pod.
Engagements de l’équipe scientifique
- L’équipe scientifique doit se mettre d’accord avec le SEDOO sur le fonctionnement général de la chaine de traitements: librairies requises, entrées, sorties, temps d’exécution attendu,…
- Une fois cet accord trouvé, l’équipe scientifique ne doit pas modifier fondamentalement sa chaîne en terme de consommation de ressource: processeur, disque, mémoire, …
- L’équipe scientifique ne doit pas utiliser le serveur comme serveur de prototypage, ceux-ci doivent être effectués au sein de l’unité.
- Les chaînes de traitement doivent être paramétrables afin d’indiquer les répertoires où sont stockées les données temporaires, les données pérennes. Les chaines ne peuvent pas utiliser d’autres ressources à l’exception de ces deux répertoires et de leurs sous-répertoires.
Engagement du SEDOO
Le SEDOO met à disposition de l’équipe scientifique des services permettant:
- De déclencher la mise à jour des scripts/de l’environnement (git pull)
- De déclencher les traitements
- De connaitre l’état des derniers déclenchements
De plus, les données pérennes sont automatiquement sauvegardées par le système du SEDOO.