Configuration initiale de l'application Django hébergements
-
Création des modèles initiaux : Avant d'utiliser l'application, veillez à configurer les modèles initiaux.
-
Création du répertoire média : Pour stocker les chartes, créez un répertoire média en utilisant la commande suivante :
mkdir /opt/hebergements/media
- Attribution des permissions au répertoire média : Pour garantir que le serveur web peut accéder et écrire dans le répertoire média, faites la commande suivante :
chown www-data:www-data /opt/hebergements/media
Configuration de l'application
-
Paramètres par défaut : L'application est configurée pour fonctionner avec des paramètres par défaut. Ces paramètres peuvent être trouvés dans le fichier settings.py (dans le dossier conf) de votre projet Django. Il en existe plusieurs dont je vais vous donner la description ci-dessous :
-
"GROUPE_DIRECTION" permet de définir les différents groupes d'utilisateurs autorisés à valider au nom de la Direction ;
- "GROUPE_ADMIN" permet de définir les utilisateurs ayant le rôle d'administrateur sur le site ;
-
"GROUPE_LECTURE_SEULE" permet de définir les utilisateurs pouvant consulter toutes les entités ainsi que leurs services ;
-
"HBG_ETAT_ENTITE_XXX" permet de définir les différents états que peux avoir une entité ;
-
"HBG_ETAT_SERVICE_XXX" permet de définir les différents états que peux avoir un service ;
-
"HBG_MODE_SERVICE_XXX" permet de définir les différents modes que peux avoir un service ;
-
"LIEN_DOCUMENTATION" permet de récupérer le lien vers la documentation du site d'hébergements, qui est utilisé dans le bouton "?" en haut à droite du site ;
-
"HBG_SERVICE_DELAI_VALIDATION" définit le nombre de jours de validité d'un service lors de sa création ;
-
"HBG_SERVICE_DELAI_RELANCE_FIN_VALIDITE" définit le délai par défaut, en jours, pour la relance en vue de la clôture ou du renouvellement d'un service hébergé arrivant bientôt à expiration ou étant déjà expiré ;
-
"HBG_DELAI_RELANCE_APPROBATION" définie le délai par défaut, en jours, pour la relance en vue de l'attente de l'approbation d'un référent pour un service hébergé ou d'une entité ;
-
"HBG_CHARTES_DIRECTORY" permet de définir le nom du dossier qui stockera les chartes, ce dossier se trouvera forcément dans le dossier media ;
-
"HBG_DSI_EMAILS" permet de définir les emails à utiliser pour envoyer les notifications de demande de validation par la DSI;
-
"HBG_DIRECTION_EMAILS" permet de définir les emails à utiliser pour envoyer les notifications de demande de validation par la Direction ;
-
"EMAIL_FROM" permet de définir l'addresse mail de l'application qui va envoyer les emails aux utilisateurs ;
- "EMAIL_PREFIXE_SUJET" permet de mettre un préfixe dans le sujet de tous les emails du site ;
-
"EMAIL_CCI" permet de mettre une ou plusieurs personnes en copie-caché invisibles lors de l'envoi d'emails. Il faut y mettre l'identifiant (ou username) à la personne.
-
Paramètres locaux : Pour les configurations spécifiques à votre environnement local, créez un fichier local_settings.py dans le même répertoire que settings.py. Ce fichier sera utilisé pour remplacer ou étendre les paramètres par défaut selon vos besoins.
Fonctionnement de l'application
L'application d'hébergements fonctionne de la manière suivante au démarrage :
-
Au démarrage de l'application, les modèles sont chargés dans la base de données.
-
L'application nécessite l'accès au répertoire média pour stocker les fichiers associés aux Chartes. Veillez à ce que le répertoire média soit configuré et accessible.
-
Une fois l'application lancée, les utilisateurs peuvent interagir avec les différentes fonctionnalités, notamment la création de nouvelles demandes d'entité et de services, la gestion des entités et services, etc.
Commandes supplémentaires dans la configuration
La commande ci-dessous permet de générer des utilisateurs pour la base de données si vous voulez faire des tests en local.
docker compose run web python3 ./manage.py generate_users
La commande ci-dessous permet d'exporter les données de l'ancienne application hébergements du site des DSI. Cette commande donnera un dossier csv_exports avec toutes les données répartis dans différents fichiers csv pour chaque table.
docker compose run web python3 ./manage.py export_data
La commande ci-dessous permet d'importer toutes les données de l'application en utilisant le dossier csv_exports générer au préalable. Le dossier avec les exports est à placer à la racine du projet.
docker compose run web python3 ./manage.py import_data
La commande ci-dessous permet d'initialiser les groupes, pour les entités, et les utilisateurs dans la base suite à l'importation des données. Ensuite, cela attribue les groupes aux utilisateurs respectifs pour répartir les différents des entités dans l'application.
docker compose run web python3 ./manage.py manage_groups_users
La commande ci-dessous permet d'envoyer les emails de relance pour les entités et services en attente d'approbations.
docker compose run web python3 ./manage.py relance_approbations
La commande ci-dessous permet d'envoyer les emails de relance pour les services qui vont bientôt ou qui sont déjà expirés.
docker compose run web python3 ./manage.py relance_fin_validite
Ces instructions vous permettront de configurer correctement l'application Django "hébergements" et de comprendre son fonctionnement général. Assurez-vous de personnaliser les paramètres en fonction de vos besoins spécifiques.