Dans les centres hospitaliers, les développements informatiques - scripts, configurations, outils internes - n'étaient pas historisés. Quand un développeur ou un technicien quittait l'établissement, il emportait avec lui la connaissance de ce qu'il avait produit. Nous avons déployé GitLab pour mettre fin à cette perte de savoir et garantir que tout développement reste la propriété de l'établissement, versionné et retrouvable.

Qu'est-ce que GitLab ?

GitLab est une forge logicielle open source complète : gestion de code source Git, intégration et déploiement continus (CI/CD), suivi des tickets et registre d'artefacts, le tout auto-hébergeable.

Le problème : des développements qui disparaissent avec leurs auteurs

Avant la mise en place de GitLab, les développements réalisés au sein du centre hospitalier - scripts d'automatisation, outils internes, configurations, playbooks Ansible - vivaient le plus souvent sur le poste personnel du développeur ou dans un répertoire partagé sans organisation. Il n'existait pas de référentiel commun, pas d'historique des modifications, pas de gestion des versions.

La conséquence était systématique : lorsqu'un agent quittait l'établissement, ses développements disparaissaient avec lui. Le code était perdu, introuvable, ou retrouvé dans un état incompréhensible faute de documentation et d'historique. L'établissement recommençait de zéro.

Un développement non versionné appartient à son auteur, pas à l'établissement. Quand l'auteur part, le développement part avec lui.

GitLab : l'historique complet de chaque développement

GitLab centralise l'ensemble des développements dans un référentiel Git hébergé en interne. Chaque modification est enregistrée avec son auteur, sa date et sa description. L'historique complet d'un projet est conservé indéfiniment : on peut retrouver n'importe quelle version antérieure, comprendre pourquoi une modification a été faite et par qui.

Concrètement, tout ce qui est développé au centre hospitalier est désormais versionné dans GitLab :

La gestion des versions

Le versioning apporté par GitLab change fondamentalement la façon de gérer les développements :

Déploiement conteneurisé, authentification centralisée et mises à jour maîtrisées

Cette application est déployée en conteneur Docker, orchestré et provisionné via Ansible. Cette approche garantit un déploiement reproductible, documenté et homogène d'un environnement à l'autre : la configuration est décrite sous forme de code, ce qui élimine les installations manuelles et fiabilise chaque mise en service.

Nous assurons les mises à jour de manière transparente pour les utilisateurs : les montées de version sont préparées, testées et appliquées de façon contrôlée, sans interruption perceptible du service. L'établissement bénéficie ainsi d'une application toujours à jour et sécurisée, sans avoir à gérer lui-même la complexité technique des mises à jour.

L'accès à cette application repose sur une authentification centralisée par OIDC avec Keycloak. Comme l'ensemble des applications que nous déployons, elle s'appuie sur un fournisseur d'identité unique : les utilisateurs se connectent avec les mêmes identifiants sur tout le parc applicatif, la gestion des accès est mutualisée et les règles de sécurité (mot de passe, second facteur, révocation) sont appliquées de façon homogène. Ce socle d'authentification unifié simplifie l'expérience utilisateur et renforce la maîtrise des accès à l'échelle du système d'information.

Notre déploiement

GitLab est déployé en conteneur Docker, exposé via NGINX avec certificat Let's Encrypt, et authentifié via Keycloak. Les dépôts sont organisés par projet et par équipe, avec des droits d'accès adaptés à chaque périmètre. GitLab est également connecté à Ansible Semaphore : les playbooks Ansible stockés dans GitLab sont synchronisés automatiquement et exécutables depuis l'interface de Semaphore.

Intégration au système d'information

GitLab est le référentiel central de tous les développements et configurations. Il est connecté à Ansible Semaphore pour le déclenchement des déploiements, authentifié via Keycloak, supervisé par Uptime Kuma et exposé via NGINX. C'est la source de vérité pour l'ensemble du code produit par et pour l'établissement.

Bénéfices concrets

GitLab s'inscrit dans notre approche d'un système d'information hospitalier open source, souverain et maîtrisé, où chaque brique est déployée et documentée pour rester exploitable en autonomie par les équipes.

Un projet de déploiement open source ?

Nous déployons et intégrons des solutions open source souveraines pour les établissements de santé.

Demander un diagnostic de 30 min →