Simon dd9130a215 | ||
---|---|---|
.. | ||
apps.lamelio.fr | ||
apps.p4pillon.org | ||
shared | ||
README.md |
README.md
Les portails de services de RésiLien
Ce projet permet de créer des portails de services, une page avec des liens vers les services que RésiLien met à disposition accompagnée d'une documentation mutualisée entre les différents portails.
Explication technique
Dans Hugo, il est possible de créer des environnements spécifiques en général on l'utilise pour différencier des environnements de test, pord ou local. Nous l'utiliserons ici pour mettre en place un portail par environnement.
Lorsque l'on spécifie export HUGO_ENVIRONEMENT=apps.p4pillon.org
et qu'on lance npm run dev
qui n'est rien d'autre que la commande hugo serve
avec des paramètres en plus alors il charge le dossier config/apps.p4pillon.org
.
Dans ce dossier, on retrouve des fichiers de configuration dont le fichier module.toml
qui permet de dire à Hugo quels dossiers sont pris en compte, ce qui nous permet d'avoir une configuration partagée dans le dossier portails/shared
mais aussi de pouvoir surcharger facilement pour un besoin spécifique dans le dossier portails/apps.p4pillon.org
par exemple.
Dans le dossier portails/shared
nous allons avoir l'ensemble des templates (layout
) que l'on surcharge de Doks, un catalogue de services dans le fichier data/portails.yml
et l'ensemble de la documentation pour l'utilisation d'un service lui permettant de comprendre à l'utiliser.
Dans le dossier portails/apps.p4pillon.org
nous aurons le dossier content
permettant d'avoir du contenu spécifique mais aussi le fichier data/services.yml
permettant de paramétrer les services.
Déploiement
Un déploiement automatique a été mis en place .drone.yml
pour que Drone déploie automatiquement l'ensemble des sites sur notre cluster S3.
Mise à jour
Nous pouvons mettre à jour notre documentation générale ou les services proposés en ajoutant ou modifiant le contenu dans portails/shared/
un dossier qui n'est pas référencé dans Doks ce qui simplifira les montés de version.
Pour mettre à jour Doks, il suffit d'ajouter le dépôt Git du projet original git remote add doks git@github.com:gethyas/doks.git
, de rappatrier les nouveaux changements git pull doks --rebase
et ainsi ne pas avoir de conflit. Seul le fichier hugo_stats.json
qui récolte toutes les propriétés CSS du framework Tailwindcss utilisé dans les templates. C'est pourquoi un des premiers commit est la mise dans .gitignore
.
Lors de la mise à jour de Doks, il faut vérifier s'il faut mettre à jour la version de Hugo dans .drone.yml
. Je n'ai pas réussi à ce que l'image utilise le Drone importé par npm.