L’hébergement d’application Python repose sur les mécanismes suivants:
Utilisation du packaging wheels
Les applications Python doivent respecter le format de packaging wheel. Ce mécanisme permet de générer un fichier .whl contenant l’ensemble de l’application sous une forme pré-compilée, prête à être installée. Il garantit ainsi des installations simples, rapides et reproductibles.
La conversion d’une application existante afin de prendre en charge ce type de packaging est généralement une opération simple. Elle consiste principalement à ajouter un fichier pyproject.toml et à ajuster légèrement l’arborescence du projet.
Plus d’informations sur ce sujet sont disponibles ici : https://pythonwheels.com/
Dépôt sur le CDN du SEDOO
Le fiichier .whl doit être déposé sur le CDN du SEDOO. C’est un serveur de fichiers qui va permettre l’installation sur la plateforme python.
Pour faire cette action il suffit de récupérer le script suivant – https://permalink.sedoo.fr/python_sedoo_installer – et l’installer à la racine de votre projet.
Il suffit alors de de l’exécuter pour
- Réaliser la compilation du projet
- Effectuer son déploiement sur le CDN du SEDOO
Ressources et services disponibles
Les SEDOO met en place un certain nombre de ressources qui peuvent être utilisées par votre application afin d’en compléter le fonctionnement.
A chaque fois, ces ressources sont mises en place sous la forme de variables d’environnement et doivent être prise en considération de cette manière dans le code de l’application.
Système de fichiers
L’application peut accéder au système de fichier local.
Deux répertoires sont mis à disposition:
- Un répertoire pour les fichiers temporaires. Ces fichiers peuvent être supprimés/perdus sans impact sur le fonctionnement de l’application. Il peut s’agir par exemple de fichiers téléchargés sur des partenaires, d’extractions mis à disposition pour une période courte,…
- Un répertoire pour les données pérennes. Celles-ci sont automatiquement sauvegardées quotidiennement.
Ces deux répertoires sont accessibles via les variables d’environnements suivantes:
- WORK-FOLDER : répertoire temporaire
- DATA-FOLDER: répertoire pérenne
Autres ressources
D’autres ressources sont disponibles à la demande:
- Bases de données mongoDB.
Autre services
Les applications peuvent également utiliser les services du SEDOO pour compléter leur applications comme par exemple:
- Le serveur SFTP
- Le serveur WMS
Installation de l’application
L’installation initiale de l’application est à la charge du SEDOO, cela permet
- de définir l’ensemble des paramètres de l’application: nom du fichier wheels, répertoires associés,…
- de créer et d’attribuer les droits de gestion
Une fois l’application installée:
- Elle est disponible à l’adresse https://flask.sedoo.fr/<monapplication>
- Elle est disponible au sein du service manager: https://permalink.sedoo.fr/sedoo-service-manager

Utilisation du service manager
Mise à jour d’une application
La mise à jour de l’application implique d’avoir auparavant déposé le nouveau fichier .whl sur le CDN du SEDOO (cf. plus haut).
- S’il s’agit d’une mise à jour de l’application sans changer le nom du fichier wheels, il suffit de cliquer sur le bouton de rafraîchissement.

- S’il s’agit d’un changement de version du fichier wheels, il faut cliquer sur le bouton new et indiquer le nom complet du fichier .whl à utiliser

Remarque: Dans tous les cas, la mise à jour d’une application entraîne la suppression du contenu du WORK-FOLDER.
Consultation des logs de l’application
// A mettre en place