Système de documentation
Le dépôt github se situe ici, si vous n’y avez pas accès et que vous devez y accéder veuillez demander l’accès au pôle serveur.
Quoi
Le système de documentation du pôle serveur est conçu pour permettre la délégation et la durabilité des connaissances du pôle serveur de l’IsenEngineering.
Pourquoi
L’idée c’est que cette documentation reste publique afin que ceux qui souhaitent apprendre puissent s’appuyer sur une ressource et apprendre des erreurs passées.
Cette documentation est facile d’accès, peut être mise à jour régulièrement assez simplement et ne coûte rien à hébérger.
Comment
Voici les étapes à suivre pour que vos modifications soient prises en compte.
Etape 1 - Fork
Fork le répértoire (vous créez une copie du dépôt sur votre compte),
Etape 2 - Checkout
Créer une nouvelle branche avec le nom de votre modification,
Sur cette branche vous pouvez faire vos modifications librement.
Etape 3 - Pull Request
Enfin vous devrez proposer une pull request sur le dépôt de l’IsenEngineering.
Etape 4 - Review
Le responsable en charge se mettra alors à revoir vos modifications afin de corriger de potentiels erreurs ou autre. Pour enfin “merge” vos modifications avec le code source principal.
Maintenance et Développement
Cette documentation utilise gohugo, c’est rapide et efficace.
Pour le développement et la maintenance, au lieu d’installer golang et hugo, j’ai mis à disposition des images docker à disposition pour éviter d’avoir à installer puis désinstaller des dépencences et pour éviter des problèmes de compatibilités.
Serveur de développement
# On clone le code dans son environnement
git clone https://github.com/isenengineering/serveur.git && cd ./serveur
# On démarre le serveur avec un conteneur docker.
# - on lie le répértoire courant avec le conteneur
# - on expose le port 1313 du conteneur
docker run -it -v .:/doc-ie -p 1313:1313 ghcr.io/isenengineering/serveur:devServeur de production
# On démarre le serveur de production avec un serveur http
# - le site est généré à la construction de l'image
docker run -it -p 80:80 ghcr.io/isenengineering/serveurConstruction
Pour générer les images vous pouvez suivre ces guides
Serveur de production
# Construction de l'image du serveur de développement
# (darkhttpd + site ~500ko)
docker build -f build.Dockerfile -t ghcr.io/isenengineering/serveur .
# ou en précisant la plateforme (ex: linux/amd64, linux/arm64...)
docker buildx build --platform linux/amd64 -f build.Dockerfile -t ghcr.io/isenengineering/serveur .Serveur de développement
# Construction de l'image du serveur de développement
# (go + hugo + git ~300mo)
docker build -f dev.Dockerfile -t ghcr.io/isenengineering/serveur:dev .
# ou en précisant la plateforme (ex: linux/amd64, linux/arm64...)
# particulièrement utile lorsque vous êtes sur une autre architecture (macos arm pour éxécuter sur amd64)
docker buildx build --platform linux/amd64 -f build.Dockerfile -t ghcr.io/isenengineering/serveur:dev .Envoyer les images sur github
# Le serveur de production
docker push ghcr.io/isenengineering/serveur
# Le serveur de développement
docker push ghcr.io/isenengineering/serveur:dev