- JavaScript 99.7%
- CSS 0.2%
- HTML 0.1%
| content | Update content/main/agenda.oc.md | |
| static | amélioration ui diverses | |
| templates | format html, ajoute option autostart à chroma-witch | |
| .gitignore | utilise script lftp plutôt que bash | |
| .woodpecker.yml | utilise script lftp plutôt que bash | |
| config.toml | update | |
| netlify.toml | update CI | |
| publish.lftp.dist | utilise script lftp plutôt que bash | |
| README.md | utilise script lftp plutôt que bash | |
Bolbena website
Ce dépot contient le code source du site internet du duo Bolbena.
Aspects techniques
Ce site est statique mais possède une interface CMS permetant à une personne néophite de modifier le contenu.
Le CMS est connecté au dépôt de code de sorte que lorsqu'un contenu est publié via l'interface CMS, cela push un commit sur le dépôt.
À chaque git push sur le dépôt (que ce soit via un client git local ou via l'interface CMS), l'intégration continue construit le site, puis le publie en production via ftp. Cela prend environ une minute.
Stack
- générateur de site statique : Zola
- interface CMS : DecapCMS (anciennement Netlify)
- hébergement code source : Codeberg
- intégration/déploiement continu : Woodpecker (via Codeberg)
- hébergement : plan Perso sur LWS
Mise en place
Tout ceci a déjà été fait, mais je détaille pour garder une trace.
1. Ajouter l'app CMS à Codeberg
Ceci permet à DecapCMS de se connecter à Codeberg pour modifier le contenu du site.
Allez sur https://codeberg.org/user/settings/applications
Puis dans Manage OAuth2 applications, ajouter une nouvelle application :
- app name: bolbena
- redirect URIs:
- confidential client: no
Cela doit être fait pour chaque utilisateur Codeberg souhaitant modifier le site.
Éventuellement d'autres utilisateurs peuvent êtres rajoutés. Il faut créer un compte sur Codeberg, puis depuis un compte qui a les droits d'admin sur le dépôt, aller dans settings / Collaborators.
2. Définition des variables d'environnement sur la CI
Ceci permet à l'intégration continue de publier le site
Allez sur la page de gestion des secrets sur la CI, puis rajouter les variables suivantes :
- FTP_HOST
- FTP_PASSWORD
- FTP_USER
Contribution
Pré-requis
Il vous faut d'abord installez Zola.
Ensuite, si ce n'est pas déjà fait, rajoutez votre clé ssh sur votre compte Codeberg.
Puis clonez le dépot :
git clone ssh://git@codeberg.org/roipoussiere/bolbena.git
cd bolbena
Développement
Lancez une instance locale du site web :
zola serve
Puis éditer le code source.
Assurez-vous que le dépôt est bien à jour avant de poussez les modifications (le site a peut-être été modifié via le CMS).
Déploiement manuel sans passer par la CI
Ceci peut-être intéressant en cas de problème avec l'intégration continue.
Tout d'abord copiez le modèle du fichier de script lftp, puis éditez-le en remplaçant les sections entre accolades :
cp publish.lftp.dist publish.lftp
nano publish.lftp
Ensuite construisez le site puis lancez la commande lftp en utilisant ce fichier de configuration :
zola build
lftp -f publish.lftp
Liens utiles
Bolbena
Docs
- Zola
- Tera (moteur de template de Zola)
- Woodpecker docs