L’histoire d’OCS Inventory NG
Sommaire
- 1 L’histoire d’OCS Inventory NG
- 1.1 Présentation des invités
- 1.2 Présentation d’OCS Inventory
- 1.3 L’ITSM (IT Service Management)
- 1.4 Pourquoi inventorier son parc ?
- 1.5 La génèse d’OCS Inventory
- 1.6 La collaboration avec la Gendarmerie Nationale sur OCS Inventory NG
- 1.7 La collaboration avec GLPI
- 1.8 L’arrivée de contributeurs externes sur OCS Inventory
- 1.9 Les grandes étapes du développement d’OCS Inventory NG
- 1.10 Le fork de l’agent OCS Inventory et la création de FusionInventory
- 1.11 Les transitions de la gouvernance
- 1.12 Le modèle économique actuel d’OCS Inventory NG chez Factor FX
- 1.13 OCS Inventory NG v3
- 1.14 Que retirer de ces 25 années d’existence ?
- 1.15 Le mot de la fin des invités
- 1.16 Production de l’épisode
- 1.17 Licence
Walid : bonjour et bienvenue sur Projets Libres, le podcast de LinuxFr.org, qui parle de logiciels libres, de données ouvertes et de commandes numériques. aujourd’hui, je suis vraiment ravi parce qu’on va parler d’un sujet, on va parler d’un logiciel autour duquel j’ai eu la chance de graviter il y a déjà 20 ans, que j’ai suivi pendant un certain temps. ce logiciel s’appelle OCS Inventory NG. aujourd’hui, pour parler de ce logiciel, de son histoire, d’où il en est et de la manière dont il évolue, j’ai avec moi trois invités. j’ai Didier Liroulet, qui est le fondateur d’OCS Inventory. j’ai François-Xavier Guidet, qui est le fondateur de la société FactorFX. Gilles Dubois, qui est un développeur OCS et Lead développeur chez FactorFX. Ravi d’être avec vous tous les trois.
Bienvenue sur le podcast Projets Libres. J’espère que vous êtes bien, que tout va bien en ce mercredi 8 avril 2026.
Didier : tout va très bien. super.
François-Xavier : très bien, merci beaucoup pour l’invitation.
Didier : merci pour l’invitation, oui.
Walid : avant qu’on commence, pour les auditrices et les auditeurs, il se peut qu’on fasse référence à un logiciel qui s’appelle GLPI. Je vous invite donc à aller écouter, si vous le souhaitez, les épisodes 2 et épisodes 3 de la saison 2, où j’ai eu la chance de parler du logiciel GLPI avec tous les mainteneurs successifs. Je ne vous en dis pas plus : si vous voulez, vous pouvez avoir des compléments là-bas.
Présentation des invités
Walid : alors, pour commencer, avant qu’on introduise OCS, on va commencer par introduire nos invités. donc, je vais laisser la place au fondateur d’OCS, Didier. Je dois dire que c’est un très, très grand plaisir de te parler après toutes ces années, Didier. vraiment, bienvenue sur le podcast. Est-ce que tu peux commencer par te présenter et nous dire quand est-ce que tu as découvert le logiciel libre, s’il te plaît ?
Didier : donc, Didier Liroulet, je gravites dans le milieu de la sécurité informatique et en fait, j’ai découvert le logiciel libre à la faculté, au milieu des années 90, où j’ai commencé à compiler, moi-même mon premier noyau Linux à la mano à l’époque. Il n’y avait rien qui s’installait, donc il fallait tout compiler à la main, sur une distribution Slackware à l’époque. L’éthique et les valeurs portées par le logiciel libre m’ont de suite séduit et je suis toujours resté très proche du logiciel libre. J’essaie la majorité du temps de le promouvoir. autant que faire se peut.
Walid : donc, toi, tu es le fondateur d’OCS, mais avant qu’on n’en dise plus, est-ce que tu es toujours actif dans le projet OCS ?
Didier : je ne suis plus actif dans le projet OCS. Je le suis toujours parce que c’est mon bébé, mais après plus de 15 ans à travailler dessus, la lassitude est arrivée, d’autres envies avec la famille, etc. donc voilà, j’ai passé la main, j’ai passé la main en de bonnes mains, comme on dit, avec FactorFX.
Walid : on va en parler tout à l’heure. François-Xavier, est-ce que tu veux bien te présenter, s’il te plaît ?
François-Xavier : alors, moi, c’est François-Xavier, je suis connu plutôt sous le nom de FX. Comme Didier, j’ai découvert avec une bande d’illuminés à l’IUT de Saint-Malo en 1996, c’était au mois d’octobre-novembre, on s’est retrouvé à installer une Slackware. et à côté de ça, c’est nos premiers émois avec le monde Linux, on va dire ça comme ça, il y a presque 30 ans, c’est ça. Et on est resté amoureux du libre, de Linux, des communautés, et je gravite dans ce monde-là depuis aussi longtemps. Donc je vous laisse imaginer mon grand âge.
Walid : déjà, tu as parlé de Slackware, ça ne parlera pas aux plus jeunes. Gilles, est-ce que tu veux te présenter, s’il te plaît ?
Gilles : oui, bien sûr. alors, Gilles Dubois, je suis dans le monde du développement et du libre. depuis le collège, ce qui, mine de rien, est… depuis beaucoup moins longtemps que Didier et FX. J’ai beaucoup moins d’expérience à raconter pour le coup. C’était juste avant tout par curiosité, puis j’aimais bien la mentalité. Au final j’ai eu la chance de venir travailler dans une boîte qui porte ces valeurs-là, qui est FactorFX. Par la même occasion, j’ai pu prendre le développement du produit OCS. Beaucoup plus court et beaucoup plus succinct que les deux autres personnes.
Walid : non, mais j’ai reconnu que tu n’as pas connu le Slackware.
François-Xavier : je sais ce que c’est, mais de nom.
Présentation d’OCS Inventory
Walid : ok. alors, première partie, je vous propose de présenter OCS. et encore une fois, je pense qu’il n’y a de mieux pour présenter OCS Inventory que son créateur. alors, Didier, est-ce que tu veux bien expliquer aux auditrices et aux auditeurs qui ne connaîtraient pas OCS à quoi ça sert, s’il te plaît ?
Didier :
OCS, ça sert tout simplement à faire l’inventaire de son parc informatique de manière automatisée, donc avec des agents qui sont déployés sur les machines et qui vont permettre de remonter la configuration de la machine. avec tout ce qui est installé en termes de matériel, la RAM, les CPU, la capacité disque, les partitions. Cela fait également toute la partie logicielle, avec tous les composants logiciels qui peuvent être installés sur la machine et fonctionnalité annexe également d’OCS depuis de nombreuses années, la possibilité de déployer des logiciels ou des scripts de configuration à distance sur les machines, sans avoir besoin de se dépasser pour faire l’opération dessus. voilà globalement ce que fait le logiciel.
Didier Liroulet
Walid : et pourquoi tu as choisi le nom ? OCS, qu’est-ce que ça veut dire ? OCS Inventory ?
Didier : OCS, à l’époque, on parlait beaucoup d’Open. Open, c’était à la mode. OCS, ça veut dire : Open Computer and Software Inventory. C’est le nom original, c’est pour ça que j’ai choisi ça : pas beaucoup d’imagination, ça explique juste ce que fait le logiciel.
L’ITSM (IT Service Management)
Walid : à l’heure actuelle, on va dire que ce logiciel, il fait partie d’une famille de logiciels qu’on appelle les logiciels ITSM. IT Service Management. donc, à l’époque, quand tu l’as créé, ça n’existait pas. François-Xavier, est-ce que tu peux expliquer ce que c’est en quelques mots que l’ITSM ?
François-Xavier : comme tu l’as indiqué, ça va être capable de faire l’inventaire des ordinateurs, des équipements, du hardware, du software que vous allez retrouver dans les ordinateurs. Et au-delà de ça, c’est là où on va parler de GLPI, c’est de faire communiquer tout ça. Donc, forcément, ton GLPI va te permettre d’ouvrir des tickets : le ticket, c’est une personne, c’est un ordinateur, c’est un historique, c’est des logiciels, c’est des bases de connaissances, c’est des garanties, c’est du financier, c’est du stock. Et avec tous ces outils, open, ça te permet de gérer ce qu’on appelle l’ITSM.
Walid : alors, pour moi, ça paraît totalement évident parce que j’ai fait de la prestation sur ces sujets-là, mais j’allais dire, pourquoi c’est important d’inventoriser son matériel ? quelles sont les problématiques qu’on a derrière, qui font que… moi, par exemple, en tant que presta à l’époque, la première chose qu’on faisait quand on arrivait dans un parc hétérogène, c’était qu’on faisait un inventaire. pourquoi est-ce que c’est important ?
Pourquoi inventorier son parc ?
Didier : c’est important de savoir si le parc que l’on détient va être en capacité d’absorber la dernière version du système d’exploitation qui arrive, qui va être en mesure également d’absorber la charge en termes de besoin des utilisateurs. C’est important de pouvoir avoir tout cet inventaire pour pouvoir faire évoluer son parc en fonction des besoins, en fonction des exigences des utilisateurs et des logiciels qu’on va installer.
Walid : et il y a une des choses qui est encore plus compliquée à faire et qu’OCS fait depuis de très, très nombreuses années, c’est que c’est un outil qui fait de l’inventaire multiplateforme, sur vraiment un très, très grand nombre de plateformes. déjà, à l’époque, on va en reparler de la genèse après, mais déjà, à l’époque, c’était une sacrée prouesse. en quoi c’est difficile de faire ça ?
Didier : en quoi c’est difficile ? c’est que chaque OS a sa manière de référencer le matériel, a sa manière de référencer les logiciels, et donc, il faut s’adapter à chaque OS pour arriver à faire cet inventaire-là et à rassembler les informations de manière cohérente et de manière standardisée, uniformisée. et en plus, ce qui est compliqué également,
Didier : c’est d’avoir un inventaire qui soit à jour, c’est-à-dire que c’est bien de le faire une fois, mais il faut le faire régulièrement. Il faut que sur des parcs importants, on soit en mesure de tenir la charge de ces inventaires réguliers. Et qu’on soit en mesure également de restituer ces informations-là de manière cohérente aux utilisateurs.
Walid : ok, très bien. Gilles, est-ce que tu as des choses à rajouter ?
François-Xavier : non, c’est une très bonne description. Il y a effectivement cette notion de multiplateforme qui est super importante et assez difficile à mettre en œuvre de par les différences de remontée. Ou même, par exemple sans forcément sortir d’une seule plateforme, juste un Linux et même une seule distribution, va changer. Certains formats de fichiers, certaines modalités de remontée d’inventaire, ce qui va complexifier encore plus la remontée. Un des points clés de l’inventaire, et notamment de la technicité de l’inventaire, c’est notamment d’avoir quelque chose d’uniformisé à travers tous les OS, parce que faire l’inventaire multiplateforme, c’est une chose, mais si la donnée n’est pas exploitable de manière unifiée, ensuite dans l’application, ça la rend inexploitable pour des notions de conformité et autres, dont on pourra, j’imagine, un peu parler plus tard, pour s’assurer de la conformité de son parc.
Walid : et à l’heure actuelle, OCS, il est disponible sur combien de plateformes ?
François-Xavier : aujourd’hui, OCS, il est disponible sur les trois plateformes principales de postes de travail et serveurs, qui sont Windows, Linux et macOS, que ce soit la branche Intel ou ARM pour Mac. Et après, à savoir si on parle de disponibilité, il y a la disponibilité des agents, mais il y a aussi la capacité de ce qu’on est capable de scanner globalement, parce qu’on fait aussi du scan réseau. Est-ce que ça rentre dedans ? Pour le coup je dirais que non, mais en termes d’inventaire, agent pur, on est sur ces trois grosses plateformes, effectivement.
Walid : je me rappelle à l’époque avoir travaillé sur du Solaris, de l’AIX, de l’HP-UX, ce genre de trucs, et des UNIX qui, maintenant doivent être vraiment très, très, très marginaux.
François-Xavier : on en rencontre encore pas mal, puisqu’en fait, on maintient des matrices de compatibilité, justement exprès pour ces OS-là. Dans de l’industriel, et tout ça, c’est des OS qu’on rencontre encore assez souvent. Je grossis le trait, mais en mettant le Linux, ces OS étaient inclus. Du coup, tout ce qui est HP-UX, Solaris, on va dire qu’on a des niveaux de compatibilité sur ces OS.
La génèse d’OCS Inventory
Walid : eh bien, je vous propose de passer à la genèse d’OCS. Et là, je vais laisser la parole à Didier. Ce que j’aimerais, Didier, c’est que tu nous expliques en quelle année naît OCS et pourquoi est-ce que tu décides de créer OCS ?
Didier : la genèse d’OCS, en fait, c’est que moi, au départ, je n’étais pas administrateur système. J’étais développeur. Je faisais du développement sur des bibliothèques de cryptographie. Et puis, comme j’étais passionné par Linux et que j’aimais bien ça, en fait, on m’a bombardé administrateur système, en plus de mon métier de développeur. Et donc, j’ai essayé de me chercher tous les outils que j’arrivais à trouver pour me simplifier le travail. Donc, voilà, j’ai mis du Nagios, j’ai mis du Cacti à l’époque. C’était les débuts de Nagios et Cacti pour la supervision du parc. Et puis, j’avais assez besoin d’inventaire parce que je me tenais à la main mon classeur Excel à l’époque.
Ce n’était pas terrible et j’ai cherché des solutions. La seule que j’ai trouvée en fait, qui répondait à mon besoin, en partie à mon besoin, c’était un outil qui s’appelait Still’s Inventory à l’époque. Voilà, qui était un petit agent qui était développé en Visual Basic, qui allait alimenter une base de données Access en direct. Sauf qu’il fallait installer le runtime [environnement d’exécution] VB6, il fallait installer tout un tas de runtime pour le faire fonctionner, donc compliqué à déployer. Et je me suis dit, « écoute, moi, je fais du C++, le C++ ça marche partout, pourquoi pas faire un agent en C++ qui va faire la même chose ? ». Et puis, s’il n’y a pas les composants pour accéder à une base de données, ça stocke ça dans des fichiers CSV et on les importera par la suite dans la base de données. Donc c’est comme ça que c’est né, c’est né, si je ne me trompe pas, dans l’année 99, 1999, où j’ai fait mon premier développement et j’ai publié la première version en open source courant de l’année 2000, si je ne me trompe pas. Il y avait juste un agent Windows, à l’époque, qui permettait d’alimenter une base de données Access. Et puis, voilà, Access, tout le monde ne l’a pas. On commençait à parler beaucoup de MySQL, donc j’ai dit autant faire une base compatible MySQL, porter la base Access sous MySQL.
J’ai développé une interface graphique client lourd, en C++ pareil, pour interroger la base MySQL. En plus de l’agent, il commençait à y avoir les premiers utilisateurs qui sont arrivés et est arrivée la demande de faire un petit agent pour Linux. Donc, voilà, pareil, j’avais commencé à bricoler un script Shell sous Linux, qui récupérait les informations, mettait ça en CSV. C’est aux alentours de 2003, par là, ça doit être 2003. Et en fait, tout ça, c’était pour me simplifier mon travail. Essentiellement, au début, étant donné que l’agent était tourné sur le monde de Windows, il y a eu pas mal d’utilisateurs qui étaient Windows. Jusqu’à, si je ne me trompe pas, début de l’année 2005, où la Gendarmerie nationale est venue taper à ma porte et m’a dit : « on est super intéressés par ton outil, on aimerait contribuer. » On a fait un truc, en plus, c’est qu’on a développé une partie serveur pour que, au lieu d’avoir à importer des fichiers CSV, à synchroniser des fichiers CSV, on alimente automatiquement la base de données avec le protocole HTTP), une partie serveur. Et c’est comme ça, en fait, qu’OCS Inventory NG s’est transformé et passé de OCS Inventory à OCS Inventory NG.
Walid : j’ai commencé à bosser sur GLPI aux alentours de ces moments-là, 2005-2006. Mon collègue Gonéry Le Bouder, qui bossait avec moi, lui a commencé à bosser sur OCS à peu près en même temps que moi. Je pensais qu’on était arrivé plus tard. D’accord, ok, ça marche. Qu’est-ce que tu avais mis comme licence ?
Didier : j’ai choisi la licence du noyau Linux, donc GPLv2. Je ne me suis pas embêté. Je n’ai pas beaucoup réfléchi à la licence. Globalement, j’ai développé dans mon coin pendant 5 ans.
Walid : et tu publiais les sources, c’était sur quoi ? Il y avait déjà SourceForge ?
Didier : c’était sur SourceForge, oui. Je publiais sur SourceForge. Je publiais les sources et le paquet exécutable, les paquets d’installation pour déployer le logiciel. Petit à petit, j’améliorais le logiciel parce qu’au début, sous Windows, à l’époque, c’était encore beaucoup de Windows 95, 98. Donc, les fonctionnalités d’inventaire, de listage du matériel sur ces systèmes-là, ce n’était pas terrible. Il fallait même faire de l’assembleur pour récupérer les informations provenant du BIOS. Donc, de l’assembleur, on touchait un petit peu à tout. Ça m’a permis de beaucoup apprendre sur le système, que ce soit d’ailleurs le système Linux ou le système Windows. Ça m’a permis de beaucoup apprendre là-dessus et vraiment de monter en compétence là-dessus. Et voilà, j’ai pu après bénéficier de tout ce travail-là. Et c’est, je pense, les premiers déploiements sur des parcs de plusieurs centaines de PC sous Windows, essentiellement, qui ont fait connaître l’outil.
Walid : d’accord, c’est toi qui as écrit le premier agent Linux ? Je ne sais pas pourquoi, je pensais que c’était la gendarmerie qui avait…
Didier : voilà, j’avais des scripts, mais comme je dis ils récupéraient peu par rapport aux travaux qui ont été faits par la gendarmerie derrière. Ils mettaient ça dans des fichiers CSV, donc après, il fallait faire un SFTP pour les récupérer. Donc, ce n’était pas industrialisable à grande échelle.
Walid : avant qu’on passe sur la partie gendarmerie, c’est toutes premières années et tu as beaucoup de contacts. Tu sais qui utilise OCS ? Est-ce que tu vois qu’il y a de l’attraction ? Et d’ailleurs, comment est-ce que tu fais connaître le logiciel ? Il y a déjà LinuxFr.org, par exemple. Quelle est la réaction des gens ? Est-ce qu’il y a une communauté qui se monte d’une manière ou d’une autre ?
Didier : je ne fais aucune publicité, je ne participe à rien. Je développe. S’il y a des gens qui me proposent d’ajouter des fonctionnalités via le système de ticketing de SourceForge, je le prends, je le fais. Jusqu’à la Gendarmerie, je n’ai pas beaucoup d’aide. Il y a un utilisateur qui est très impliqué, qui est du côté de Bordeaux, je ne me rappelle plus son nom. Lui m’a beaucoup orienté sur les développements que je faisais, parce que ça intéressait beaucoup, c’est une petite boîte qui faisait du service vers d’autres sociétés, une petite boîte d’informatique. Mais voilà, très peu de contributions. J’ai essayé pas mal de récupérer du code source qui était déjà réalisé quand ça existait, en laissant bien évidemment les copyrights à leurs créateurs. Voilà, en fait, c’est comme ça que ça s’est passé. Vraiment, l’essor a eu lieu avec l’arrivée de la gendarmerie.
Walid : pour finir là-dessus, juste que je comprenne bien, ça a été développé sur ton temps professionnel ?
Didier : non.
Walid : ah, tu le faisais à côté ?.
Didier : le soir, chez moi.
Walid : ah, d’accord. Ok
Didier : pas développé sur mon temps professionnel, non. Le soir, chez moi, par contre. Après, le bon environnement professionnel, c’était mon laboratoire de test.
Walid : peut-être que si tu veux, tout à l’heure, on y reviendra.
Didier : et essentiellement, au départ, l’outil a été connu essentiellement au départ dans le niveau français, parce qu’effectivement, même si je l’ai écrit en anglais au départ, de suite, je l’ai traduit en français. Les premiers retours importants ont été côté français.
La collaboration avec la Gendarmerie Nationale sur OCS Inventory NG
Walid : ok, ok. C’est très intéressant de t’écouter, parler de ça, parce que moi, je n’étais pas là et je ne connaissais pas toute l’histoire.
François-Xavier : pendant que Didier était en train d’écrire la V1, moi, j’étais prof pour des gendarmes qui avaient un cursus de technicien, d’ingénieur, avec lequel je faisais du Linux, avec lequel je faisais du Windows, qui sont restés à la gendarmerie, que j’ai perdu de vue. On avait bien sympathisé à l’époque, mais moi, j’avais toujours un Factor FX, et à côté de ça, je dois aller des cours. Et j’ai su longtemps après que cette fameuse équipe que tu connais très bien Didier, ont dû t’appeler un jour, pour te dire, on a besoin de développer ton logiciel, comment ça avance. Suivant les décharges que la gendarmerie avait eu.
Walid : qui ? C’était à l’époque ? Parce que moi, je me rappelle, quand je suis arrivé, il y avait Pascal Danek.
Didier : Pascal, Erwan Goalou, Pierre Lemay et le dernier, le quatrième de la bande.
Walid : il n’y avait pas le colonel Guimard à l’époque, qui était leur chef, non ?
Didier : non, moi, j’ai eu très peu de contacts avec le colonel Guimard.
Walid : bon, ça va nous revenir.
Didier : ça va nous revenir, oui.
Walid : voilà, ok. C’est à cette époque-là que nous, on joint l’aventure. Alors, justement, comment ça se passe ? Donc, ils t’appellent, ils te disent « bonjour, on est à la Gendarmerie nationale, on est tombé sur votre outil, ça nous intéresse, on voudrait collaborer. ». Comment vous vous faites pour collaborer ? D’abord, vous vous appelez, vous vous rencontrez ?
Didier : en fait,
Ils m’ont envoyé un mail, via SourceForge, en disant exactement ce que tu viens de dire. Moi, j’étais très surpris. En plus, je savais qu’ils n’ont même pas parlé de la gendarmerie. Ils ont dit « on est intéressé pour participer dans l’outil, on a des idées, on a fait un certain nombre de choses. Si tu veux, tu peux commencer à regarder ce qu’on a commencé à publier. Ça s’appelait OCS4ALL. Le petit développement qu’ils avaient commencé. Est-ce que ça t’intéresse, qu’on se groupe et qu’on rejoigne le projet et qu’on participe au développement du projet ? ». Et effectivement, j’étais très content de trouver quelqu’un qui allait m’aider.
Didier Liroulet
Et voilà, en plus, trois personnes. Puisque à l’époque, j’avais que les trois personnes, Pascal, Erwan, et puis je ne sais plus. Et c’est comme ça qu’on s’est rencontré en présentiel à l’occasion de mes visites sur Paris, dans le cadre de mon boulot. Un soir, on s’est rencontrés sur les rendez-vous autour d’une bière. On a discuté, le courant est bien passé et on a décidé, ce soir-là, un, de renommer le logiciel au OCS NG, et deux, de faire une feuille de route sur ce qu’on allait développer. On a discuté jusqu’à point d’heure. Je crois que ce soir-là… je crois que je suis retourné au boulot sans m’être couché.
Walid : la rencontre autour d’une bière et tout, je pense que c’est un invariant, j’ai l’impression.
Didier : voilà.
Walid : on a vraiment à peu près les mêmes trucs. Ok, donc ces premières années, en gros, tu leur donnes des droits, ça se passe comment ?
Didier : en fait, on crée un nouveau projet au OCS NG. Donc le OCS Inventory existe toujours. Voilà, mais ce qu’on dit, c’est que maintenant, on a mis un message en disant que le code source est disponible pour ceux qui veulent. Il n’évoluera plus et c’est au OCS NG qui prend la suite.
Walid : ok, dans ce projet, quand vous commencez, vous décidez de vous répartir, d’une manière ou d’une autre les choses ? Moi, de mon historique, j’avais l’impression que tu t’occupais principalement de l’agent Windows.
Didier : oui. En fait, je me suis principalement occupé de l’agent Windows, parce que j’avais tout l’historique de la création de l’agent Windows. Et qu’ils trouvaient que c’était bien fait, que ça marchait bien. Et après, je me suis également occupé de toute la partie intégration des briques dans un installeur sous la partie Linux, l’installeur e script shell, qui existe encore, je crois, en plus. Pendant dix ans, j’ai maintenu cet installeur en plus de l’agent Windows. C’est vrai que sur la partie Linux, Pascal était très au fait et a pris en charge ce développement-là. Et Erwan s’est concentré sur l’interface web.
Walid : et c’est eux qui ont apporté la fonctionnalité de déploiement d’applications. On est d’accord qu’au tout départ, toi, tu ne l’avais pas mis, tu n’avais pas ce besoin.
Didier : non, je ne l’avais pas mis. Alors, j’avais le besoin, mais le développement était long. Et puis, avec le fonctionnement que j’avais tout à l’heure qui était en fonctionnement sous le compte utilisateur, puisque l’agent était lancé par le compte utilisateur quand il se connectait, avec le script d’ouverture de session. C’était compliqué de faire de l’installation de logiciel. Donc, je savais qu’il fallait que j’avais ce besoin-là, mais je n’avais pas encore développé un service Windows comme on a pu le faire par la suite.
Walid : et sur ces premières années, on a d’un côté trois personnes qui sont payées par Gendarmerie nationale pour travailler, je suppose, à temps plein là-dessus. Et toi qui es à côté et qui fais ça sur ton temps libre, est-ce que ça pose des problèmes de gestion de la feuille de route ? Comment est-ce que vous organisez là-dessus ? Ou ça se trouve, ça roule bien ?
Didier : alors, très franchement, je dois dire que ça a roulé. Il n’y a pas eu de tension ou quoi que ce soit sur cette partie-là, étant donné qu’en fait, le gros boulot, quand même qu’il y a eu quand il y a eu la reprise, c’était de faire l’interface web. Alors moi, j’avais une petite interface en PHP qui n’était pas terrible, qui a été complètement refaite par Erwan. Il est reparti de zéro, Erwan, pour faire ça. Il y avait quand même beaucoup de boulot pour faire ça.
Didier : il y a eu toute la partie moteur de communication qui a été faite par Pascal.
Gilles : pour comprendre l’algo de découpage des paquets de séquencement, de reformer les paquets, de hachage et tout ça.
Didier : oui.
Gilles : à l’époque.
Didier : c’est arrivé un petit peu plus tard. D’abord, il y a eu toute la partie uniquement inventaire. Et après, quand on a mis en place le déploiement, j’ai posé des jours de congé. Je suis monté à Paris. On s’est enfermé pendant deux jours pour mettre en place le système de déploiement et étudier comment on allait le faire. Sachant qu’il faut quand même le dire, côté gendarmerie, ils avaient déjà commencé à penser le truc. Donc, voilà, ils ont juste réussi à me convaincre que ça allait marcher.
Walid : ils sont arrivés avec un besoin qui est, on a plein de postes de gendarmerie qui sont sur des petites liaisons partout en France et en Outre-mer, etc. Il faut qu’on déploie des logiciels sans écrouler le réseau.
Didier : c’est le découpage. Et puis la gendarmerie, à l’époque, avait la chance d’avoir, au niveau départemental des proxys. Et donc, c’est les proxys qui faisaient office de cache pour les petits paquets et qui permettaient effectivement de limiter l’usage des liaisons. Et donc, on s’est appuyé sur ce principe-là pour mettre en place le déploiement.
Walid : c’était super novateur. Franchement, je me rappelle que nous, quand on allait voir d’autres administrations ou d’autres sociétés, les gens étaient hyper intéressés. Parce que comment on déploie OpenOffice sur des périodes longues, sans écrouler le réseau ? OCS était vraiment hyper crédible à l’époque.
La collaboration avec GLPI
Walid : j’aimerais qu’on parle de la rencontre avec l’équipe de GLPI. Est-ce que tu peux nous expliquer, Didier, comment ça se passe ? Est-ce que c’est toi qui les contactes ? Est-ce que c’est eux qui te contactent ? Comment ça se passe ? Cette rencontre de ce qui deviendra une association assez fructueuse finalement de OCS, plus GLPI pour les années à venir.

Didier : pour être franc, c’est la gendarmerie qui les contacte. Et donc, c’est l’équipe OCS à la gendarmerie, puisque c’est elle qui a géré toute cette partie-là, en fait, ITSM à la gendarmerie. Donc, c’est la gendarmerie qui les contacte parce que effectivement, OCS fait toute la partie inventaire automatisée. Mais comme le disait si bien, FX tout à l’heure, l’ITSM, c’est aussi la date d’achat, c’est le ticketing qui va autour, c’est toutes les imprimantes, etc. Tout ce qui peut tourner autour et tout ça, GLPI le fait très bien, mais de manière manuelle. Il faut tout rentrer manuellement. Et donc la complémentarité entre les deux est évidente. On s’est posé la question de savoir, si, dans notre interface, on va développer ça alors qu’il y a déjà quelqu’un qui le fait très bien à côté ? Et on s’est dit : « on a déjà du mal à développer correctement et à faire tout ce qu’on veut avec OCS, ça serait bien d’aller les voir ». Il y avait ce besoin-là, qui est allé les voir, parce qu’effectivement, ça nous permettait de mettre en place, par un simple pont, les fonctionnalités qui manquaient à OCS pour faire un outil d’ITSM.
Walid : et effectivement, c’était une sacrée machine à mettre ça en place. Ce n’était pas si évident de ça, de prendre deux logiciels qui, à la base, étaient… pas été développé forcément pour bosser ensemble et de faire en sorte qu’ils bossent ensemble. Il y a eu plein d’artefacts techniques, d’améliorations des deux côtés pour que ça marche bien et ça marchait. Super bien, franchement. C’était vraiment très impressionnant. Je ne sais pas quel est votre ressenti là-dessus, mais de mon côté, ça semble avoir été hyper bénéfique pour les deux projets.
Didier : ça a été très bénéfique pour les deux projets. Effectivement, pour moi, sur la partie France, ça a été un boost du projet OCS. Les premières versions d’OCS4All, d’OCS NG, ont rapidement eu beaucoup de succès à l’international. Quand on a commencé à afficher que sur le site web d’OCS que la gendarmerie le déployait sur 70 000 postes, on a eu quand même beaucoup de succès à l’international, un petit peu partout. La victoire au Trophée du Libre en 2006 aussi, ça a été une belle reconnaissance quand on l’a affichée. On a eu rapidement beaucoup de déploiements. Avec pour moi, le point culminant qui a été en 2007 avec la Banco do Brasil, qui l’a déployé sur 250 000 devices, tout seul, sans aide extérieure. Ils nous ont posé quelques questions sur le chat, mais ils ont fait ça tout seul. Et en le déployant sur les automates de distribution de billets. Donc voilà, ça a été une belle récompense.
Walid : sur GLPI aussi, il y a eu toujours une très forte communauté au Brésil et je pense encore maintenant. C’était vraiment hyper fort. Est-ce que quelqu’un a d’autres choses à rajouter sur toute la partie gendarmerie ?
François-Xavier : c’est Franck Bourdeau, c’est quelqu’un aussi qui contribuait beaucoup à l’époque, un d’idées.
Didier : Franck Bourdeau, est rentré sur le logiciel parce qu’il l’a connu avec le déploiement de la CNAM. Pas que lui d’ailleurs, il est rentré en même temps que deux autres personnes, qui étaient extrêmement actives sur les forums et qui nous ont permis de nous libérer justement du support sur les forums, dont Philippe Beaumont.
Ils ne voulaient pas développer au départ, mais ils ont dit « nous, on sait répondre aux questions ». Donc, ils ont commencé à répondre aux questions à notre place, sur les forums. On les a intégrés comme ça dans l’équipe, pour le support aux utilisateurs.
Et je pense que ça aussi, ça a été quelque chose qui a été extrêmement important pour OCS. Dès le tout début, on a mis beaucoup d’envie à répondre aux utilisateurs rapidement pour qu’ils puissent prendre en main le logiciel le plus rapidement possible. Et dans les meilleures conditions. Et ça, le support aux utilisateurs via les forums, principalement, ça a été, je pense, une de nos grandes forces.
Didier Liroulet
L’arrivée de contributeurs externes sur OCS Inventory
Walid : pour expliquer une partie suivante. Il faut que je fasse, enfin, pas une aparté, mais j’explique mon cas personnel. Mon collègue de l’époque, Goneri Le Bouder et moi, nous sommes employés dans le Centre Open source d’Atos. Un jour, notre chef vient nous voir et il nous dit : « on a un contrat cadre avec l’Assurance maladie et ils veulent déployer un outil d’inventaire : ça s’appelle OCS Inventory. Nous, on ne connaît pas.
On commence à travailler sur le sujet. Donc, nous, on va aller à l’Assurance maladie à travailler sur le sujet. Nous sommes payés à plein temps pour faire ça. On se répartit les tâches. En gros, Goneri, il connaît le Perl, donc, il va travailler sur OCS. Moi, je connais un peu le PHP, je connais LDAP. Je vais travailler sur GLPI. C’est globalement comme ça que ça s’est fait. Et donc, Goneri commence à contribuer sur l’agent, réécrire une partie de l’agent Unix. Et donc, en fait, il est lui aussi, en plus de la gendarmerie, il est lui aussi payé pour écrire du code.
Didier : c’est à dire qu’à l’époque, moi, je travaillais à la CNAM.
Walid : ah, oui ?
Didier : voilà. Et que la CNAM n’a pas voulu que je bosse sur le déploiement de l’outil que j’ai créé à la CNAM… Voilà. c’est une autre histoire.
Walid : c’est assez fou parce que je me rappelle qu’à un moment, on a levé le point quand même de dire : « non mais attendez, le créateur d’OCS travaille à la CNAM ! Pourquoi on ne fait pas travailler le créateur d’OCS pour déployer OCS à la CNAM ? ». Donc, bref, c’était assez surréaliste, je dois avouer. Et un tout petit peu plus tard, sont arrivées deux autres personnes qui bossaient à l’Assurance maladie, qui ont pas mal contribué au projet en global. Donc, Nelly [Mahu Lasson] et Remi [Collet].
Didier : Nelly et Remi, ouais.
Walid : voilà. Remi Collet, qui a beaucoup contribué sur la partie OCS, sur des parties assez techniques, sur du packaging, etc. Donc, voilà, à travers ce projet-là, il s’est aussi passé des choses à travers ses contributions. Et Nelly Lasson , elle a pas mal contribué sur la partie GLPI , aussi.
François-Xavier : il y avait un truc qui était important, c’était que de retrouver OCS , tous les composants OCS dans les dépôts officiels des différentes distributions.
Didier : c’est ça.
François-Xavier : ça, c’était juste énorme. Remi, il a fait ça.
Didier : Remi, il a fait ça. Il a fait ça sur toutes les distributions. Et c’est vrai que c’était assez énorme de trouver les paquets.
Walid : il avait fait tout ce qui était RPM.
Didier : et même les .deb [packages Debian].
Walid : les .deb , c’était Pierre Chifflier, alias Pollux. Remi, j’ai des souvenirs aussi, qu’il a travaillé aussi sur des trucs très techniques de détection des écrans, par le fait qu’il fasse pas mal de C , ça a pas mal aidé.
Les grandes étapes du développement d’OCS Inventory NG
Walid : enfin, il y a eu une émulation aussi à ce moment-là de gens qui ont commencé à travailler un peu plus avec toi et avec toutes les personnes de manière générale. Avant qu’on attaque une partie qui me tient pas mal à cœur, j’aimerais qu’on parle un peu des grandes étapes du développement d’OCS . Est-ce que vous pouvez donner en quelques mots, les étapes majeures du développement d’OCS ? Gilles , on ne t’a pas trop entendu, est-ce que tu veux en parler un peu ?
Gilles : je pense que c’est plutôt à faire en deux temps, c’est-à-dire que la première partie des grandes étapes du dev d’OCS , je pense que Didier va beaucoup mieux répondre que moi, notamment jusqu’au début de la 2.0, et je pense qu’après, je peux prendre le relais sur cette partie-là.
Walid : avec plaisir. Didier
Didier : en fait… les grandes étapes, effectivement, il y a eu la version 1.0 qui est sortie en 2005, si je me souviens bien, début 2005, qui était en fait un agent monolithique qui n’était pas très bien codé, il faut le dire, parce que ça a été fait à la va-vite et pas très bien, donc, qui était peu évoluable, peu évolutif. Et l’agent Windows , c’était pareil, il était peu évolutif, donc. Difficile d’ajouter des fonctionnalités. Il fallait se creuser la tête dans le code pour aller ajouter des fonctionnalités. Et en fait, on a décidé, fin 2007-2008, un truc comme ça, de revoir le code des agents, parce que autant la partie serveur avait été bien étudiée, autant, les agents n’étaient pas très bien étudiés. Et là, c’est là que Goneri est intervenu sur la partie agent Linux , où il a refondu le code de l’agent Linux . Pour le rendre beaucoup plus évolutif. Moi, j’ai refait également une refonte complète du code de l’agent Windows pour le mettre sous forme de DLL, où on pouvait ajouter des fonctionnalités en ajoutant des DLL , en ajoutant des plugins, etc. Donc ça, c’est arrivé dans la version 2.0.
Voilà, ça a été les grandes évolutions qu’il y a eu globalement sur ces premières années. Et il y avait un sujet qu’on avait identifié, qui était la base de données, qui était assez limitée dans les évolutions possibles, où on voulait reprendre ça. Mais ça, c’est un boulot que Gilles a derrière à porter. On te laisse la main.
Gilles : mon arrivée dans le projet OCS , elle se situe un tout petit peu après la version 2. En fait, il y a eu une version 2.0 qui amenait à revoir et unifier pas mal de composants. Et notamment à ajouter la notion de plugin. On va la caricaturer comme ça dans l’application.
Il y a eu une version 2.1, juste après qui a un petit peu stabilisé, mais qui n’a pas amené d’énormes évolutions. Jusqu’au moment où on est arrivé peu ou prou au moment de la transition de gouvernance vers FactorFX . Et moi, quand je suis arrivé, on était entre la 2.1 et la 2.2. Donc, la 2.2, elle emmenait majoritairement, une revisite ergonomique de l’interface web. Il y avait peu de fonctionnalités côté agent. En termes d’interface, il y avait les petits boutons avec les petits logos de couleur pastel dans la 2.0 et dans la 2.1. Et on est passé sur quelque chose d’un peu plus sobre, un peu plus neutre, comme ça se faisait à l’époque avec les applications web : les menus en haut, globalement, les barres de menus d’applications web, qu’on voit aujourd’hui un peu partout, finalement. On est un peu passé sur ce format-là.
S’en est suivi pas mal d’évolutions. On est passé au fur et à mesure sur des versions 2.4, 2.5, 2.6 qui amenaient majoritairement des améliorations, mais sur la partie, pas inventaire des agents, mais plutôt inventaire réseau, SNMP, conformité, logicielle, conformité matérielle. On a mis l’accent plutôt sur l’exploitation des données que sur les agents, qui étaient une très bonne base. Il y a eu quelques évolutions, notamment au niveau de l’agent Windows , typiquement la prise en charge des PowerShell pour les plugins, qui avant n’étaient que des DLL . Il y a eu des petites choses comme ça, mais c’était vraiment du petit incrémental.
Arrive globalement la version 2.6.2.7, où je pense que je vais un peu partir sur les plates-bandes d’autres sujets. On se rendait compte qu’OCS , dans l’état actuel des choses, ne nous permettait pas d’amener certaines fonctionnalités ou notre vision au niveau de l’inventaire, et notamment vis-à-vis de pas mal de critères cumulés : c’est-à-dire les retours des clients de FactorFX, des retours de la communauté, et même de notre vision à nous, en tant que les nouveaux développeurs du produit. Et c’est là où a germé l’idée de repasser, un peu finalement, comme le passage de la 1 à la 2, qui a été fait à l’époque, de passer un jour vers une 3, du coup, elle amènerait de nouvelles fonctionnalités. On a laissé germer cette idée-là parce que, mine de rien, au vu de l’assise qu’OCS avait, ce n’était pas forcément évident de se dire qu’on refond un mastodonte de cette taille-là qui est utilisé par beaucoup de monde.
Donc, on a continué à développer sur cette branche 2. Jusqu’à aujourd’hui, on est en 2.12. Mais en parallèle, on a commencé de notre côté également à travailler sur une grosse évolution assez majeure de l’outil qui est une évolution technique, technologique, parce qu’on n’est plus du tout sur les mêmes stacks technologiques qu’aujourd’hui, dans l’optique de pousser la réécriture. Avec également une nouvelle proposition sur l’inventaire pour répondre aujourd’hui aux contraintes que les utilisateurs vont rencontrer dans l’optique de faire l’inventaire d’un SI [Système d’information] qui, aujourd’hui, contrairement à quelques années, ne se limite plus juste à l’inventaire des postes ou l’inventaire des serveurs ou de quelques éléments réseau, mais prend une autre dimension, finalement, dans le SI.
Walid : je m’aperçois qu’il y a un truc, quand tu parles, qu’on n’a pas dit, c’est qu’il faut vraiment le dire, OCS , c’est vraiment à la fois un logiciel historique, mais c’est vraiment un logiciel qui est hyper connu, hyper utilisé. Il y a eu des formations dessus, c’est un logiciel de base. Quand tu dis qu’on a du mal à le faire évoluer, il faut que les gens se rendent compte qu’effectivement, c’est utilisé par beaucoup de gens, ce logiciel.

Gilles : complètement. Aujourd’hui, dans la branche 2, c’est un outil qui répond à énormément de besoins, qui va vers de la conformité au sens sécurité. Ces ajouts de fonctionnalités au fil des années amène un outil qui est très cohérent encore aujourd’hui. Là où on pourrait voir une concurrence, par exemple, tu as mentionné les outils de gestion de configuration. On se rend compte par exemple qu’on est souvent mis à côté de ces outils parce que, même si, au final, ils font aussi de l’inventaire, ils ne vont pas faire exactement le même niveau dans l’analyse et dans le détail au niveau des systèmes. L’inconvénient d’OCS est qu’il est d’être un peu dur à faire bouger, parce que, forcément, il existe depuis tellement longtemps que chaque décision doit être prise avec énormément de considération. Au final, ça nous amène aussi une force, c’est-à-dire que le système d’inventaire a évolué pendant des dizaines d’années. Et on inventorie énormément d’éléments. Presque tout ce qui peut être envisagé sur un poste en termes d’inventaire, au, c’est peut le faire aujourd’hui de manière détournée ou native par le biais d’extensions.
Didier : et alors le quatrième larron dont j’avais oublié le nom, c’est Emmanuel Guillory.
Walid : ah, ben oui, bien sûr !
François-Xavier : On des plugins complètement incroyables pour aller faire de l’inventaire de AWS, de Veeam, d’Azure, pour mesurer la consommation électrique, qu’on croise avec les histoires de RSE [responsabilité sociétale des entreprises]. On a des use cases [cas d’usages] qui sont incroyables : on a de l’OCS dans des distributeurs de nourriture. Il y a de l’OCS dans plein de trucs, partout. L’empreinte est tellement faible et ça marche tellement bien. C’est tellement bien fait, bien foutu, bien codé, tout simplement. Ça fait le job. Mais ça a sauvé plein de situations compliquées. C’est ça qui est absolument fabuleux et qui ne bouge pas depuis 20 ans.
Guilles : je pense à une petite anecdote plutôt personnelle avec un utilisateur où OCS était installé dans l’entreprise. Dans l’optique de faire de l’inventaire et pas de la remédiation. Leur outil de remédiation a complètement capoté à un moment super important, parce que c’était lié à une remédiation sur des failles de sécurité cumulé à des licences. Et clairement, ça lui donnerait des cauchemars. Au final, l’outil de remédiation n’avait pas fonctionné. Et c’est OCS qui avait pu prendre le relai pour permettre la remédiation et le fait d’inventorier cet élément qui n’était pas du tout dans le cadre d’OCS, puisque ce n’était pas du tout pour ça qu’il l’utilisait.
C’est effectivement un outil qui est très adaptable et qui est vachement stable. C’est d’ailleurs ça qui est assez flagrant, c’est que la plupart des gens qui utilisent la solution reviennent très rarement vers nous, sauf des cas particuliers : par exemple pour des cas d’industrialisation. Des choses qui sont un petit peu plus complexes à gérer, par exemple des automates, des choses qui ne sont pas forcément évidentes car c’est très obscur à inventorier. Mais dans la majorité des cas, oui, tu cliques et ça marche. Et l’application est stable sur la durée. Merci.
Didier : le symptôme, c’est qu’en fait, très souvent, on s’aperçoit que les gens ont installé une version et puis ils l’utilisent et ils ont oublié qu’il fallait la faire évoluer. Donc, ils se retrouvent avec une version antidéluvienne qui rend toujours les mêmes services et ils en sont très contents.
Walid : j’ai moi-même un souvenir personnel. Mes collègues de bureau, ils travaillaient sur le desktop Linux de l’Assemblée nationale il y a bien longtemps. Puis, un jour, mon collègue, je ne sais plus ce qu’il fait, mais il pète le système de packaging. « Ah putain, c’est la merde et tout ». Et là, on s’aperçoit qu’en fait, il y a OCS, et on se dit « Bon, attends, on va redéployer les fixes qui vont bien avec OCS ». Et ça nous a sauvé la vie ce jour-là, je crois.
Le fork de l’agent OCS Inventory et la création de FusionInventory
Walid : l’heure tourne. Il reste deux gros sujets dont il faut qu’on parle, même plusieurs d’ailleurs. Il y en a un dont j’aimerais vraiment qu’on parle parce que maintenant, c’est un sujet qui date de 2011. Donc c’est assez ancien, on a tous de recul là-dessus. Je voudrais qu’on parle du fork d’OCS.
Là, je vais redonner un peu de contexte et après, je vous laisse, si vous voulez, redonner du contexte parce que Didier était là. Là, il y a des prestataires de services qui font du service autour de OCS et GLPI. Mes collègues, eux, ils bossent pas mal sur OCS, etc. Moi, je bosse pas mal sur GLPI. Et puis, il y a une autre personne dans la communauté qui s’appelle David Durieux, qui commence à développer un agent d’inventaire réseau, donc sans installer de choses sur les postes de travail et qui ne remonte pas les informations dans OCS, mais qui remonte les informations dans GLPI [via le plugin Tracker]. Et on fait de la prestation.
Notre vision de la chose à l’époque, c’est qu’il faudrait remonter plus d’infos et il faudrait que les infos remontent dans GLPI, qu’on gère tout dans GLPI. Et puis, Goneri a aussi d’autres idées, entre autre qu’on devrait faire un agent en Perl pour faciliter les choses. Et alors, de ma lecture des choses, mais j’aimerais bien la vôtre, surtout que maintenant ça fait quand même vachement longtemps, c’est pas qu’on ne s’entendait pas. Je pense que tout le monde était assez grand pour se parler mais la vision des choses était très différente.
A un moment, il a été finalement beaucoup plus simple d’aller forker OCS, sur la partie agent pour faire Fusion Inventory, qui était un autre projet et qui, finalement, a vécu sa vie à côté. Juste parce que la vision de ce que vous vouliez faire, équipe d’OCS, et la vision de ce que cette équipe-là voulait faire n’était pas la même de la chose.
[Note de Walid : le projet FusionInventory né lors du FOSDEM 2010 de la fusion du travail du plugin Tracker par David Durieux avec l’agent OCS Inventory, renommé FusionInventory Agent. Voir la présentation de Fabrice Flore-Thébault en avril 2010 qui explique bien les buts de l’époque].
Didier : tout à fait, mais en fait, c’était ça. Et en fait, ce qui a provoqué le fork, c’est le fait de dire « on va alimenter directement GLPI ». En fait, nous, côté branche historique OCS on va dire, on savait et on avait une base installée qui utilisait GLPI, oui, mais c’était un peu moins de la moitié du parc installé. Et donc on a dit : « on ne va pas forcer les gens à installer GLPI, s’ils n’en ont pas besoin, s’ils avaient besoin d’installer, ils l’auraient installé. Donc ça veut dire qu’aujourd’hui, l’outil tel qu’il est, leur suffit. » Et deuxièmement, l’agent tel qu’il était, il était intégré à l’époque dans d’autres outils, dans Rudder, par exemple, c’était l’agent alimentaire de Rudder, qui était intégré tel quel. [Voir l’épisode sur Rudder]. Donc on a dit : « on ne veut pas se lier à GLPI, parce qu’aujourd’hui, notre base installée n’utilise pas systématiquement GLPI ». Donc, c’est ça qui a provoqué le fork.
Et puis, après, je pense qu’il y avait également que les inimités entre certaines personnes, ça s’est passé comme ça. Alors ça a été un bien ou un mal, ça, je ne sais pas. Mais en tout cas, les deux projets ont continué. On fait leur bout de chemin et continuent d’exister. Donc ça prouve que, dans tous les cas, ce n’était pas une mauvaise chose. Au final.
Walid : moi, de mon point de vue, en fait, on avait une vision, je ne vais pas dire biaisée de la chose, mais on avait une vision de prestataire de service qui faisait de la prestation tous les jours avec OCS et GLPI. Et notre vision, elle a été vue par ce prisme-là. Je ne sais pas moi qui ai pris la décision de forker le truc, mais j’étais là dans toutes les réunions en 2011, lancement du projet et tout. Mais la vision qu’on avait n’était pas du tout la même. Les inimités, je vous dirais que peut-être qu’on n’a pas assez bu de bière tous ensemble, tout simplement.
Didier : oui, peut-être, peut-être, oui. Certainement.
Walid : l’écrit n’arrange certainement pas les choses aussi, beaucoup. Et puis aussi, je pense qu’il y avait peut-être aussi des envies différentes au niveau technique. Mais comment est-ce que vous l’avez vécu ? Moi, ce qui m’intéresse, parce qu’on n’en parle jamais. Quand les gens parlent de fork, comment est-ce que vous, vous l’avez vécu en tant que projet qui vous a fait forker ? Quel était, à cette époque, votre état d’esprit ?
Didier : je vais dire qu’on n’était pas très contents que ça se passe comme ça. On n’a pas trop apprécié sur le moment. Comme je disais, on n’avait pas la même vision technologique. On n’avait pas le même ressenti. Et en fait, on avait ouvert le projet aux contributions avec des droits élevés à certaines personnes. Et le fait qu’elle fork, on l’a un peu vécu, je dirais, comme une trahison. Il ne faut pas s’en cacher. À ce moment-là, ça a été vécu comme ça.
Didier : à y réfléchir derrière, c’est le monde de l’Open source, c’est normal. L’Open source est fait pour ça, l’Open source est fait pour fork. Des projets ? L’Open Source est fait pour évoluer la réaction. Sur le moment, c’était peut-être pas la bonne non plus.
Walid : Je pense qu’il y a quand même beaucoup de forks où ça se passe comme ça. Mais finalement, du côté fusion Inventory à l’époque, c’était un peu. Comment dire l’excitation ?
Je vais faire un truc que je fais pas habituellement, je vais donner mon avis sur la situation. Habituellement je ne fais pas ça, mais j’ai vécu le truc de près. Et avec toutes ces années de recul, et bien entendu, ce n’est que mon avis, ce n’est pas l’avis des autres personnes qui ont travaillé sur FusionInventory, je vois ça comme une vraie occasion manquée. Il n’y avait pas vraiment de gestion de projet, on n’avait jamais géré un produit. Maintenant que je bosse dans des boîtes avec des équipes produits, je vois qu’on était complètement à côté de la plaque. On a manqué le coche. D’ailleurs, Julien [Dombre] et Jean-Mathieu [Doléans] de GLPI [les anciens mainteneurs communautaires] , m’en ont reparlé beaucoup plus tard, me disant « Mais pourquoi vous n’avez pas directement fait le truc dans GLPI ? » Je pense qu’on a complètement loupé le coche à l’époque. Il y avait une occasion de faire ce pour quoi on devait le faire, c’est-à-dire intégrer tout dans GLPI et qu’on ne l’a pas fait. Et que ça a été réécrit plein de fois. Finalement, ça n’a pas donné ce que ça aurait dû donner. Après, c’est mon avis. Je pense que chacun aura son avis. Mais voilà, c’est intéressant parce que comment les mainteneurs, ils voient les gens qui partent forker un projet. C’est un déchirement, quelque part.
Didier : c’est difficile d’admettre que des gens ne puissent pas, entre guillemets, penser différemment, et qu’on ne sache pas trouver un terrain d’entente.
Walid : Erwan [Goalou], qui était là à l’époque, a donné une conférence il y a quelques années à Open Source Experience. Malheureusement, elle n’était pas filmée. J’ai pu rediscuter avec lui et il disait que finalement, c’était un mal pour un bien. Parce que, au fait, quand tu fais ça, ça te force aussi à faire un peu d’introspection.
Didier : oui, on s’est remis en question aussi sur la gouvernance, là où on voulait aller. D’ailleurs, je pense que c’est à la suite de ça qu’on a organisé nos premières « rencontres OCS », ça a peut-être aussi, redonné un coup de boost au projet.
Les transitions de la gouvernance
Walid : je rebondis sur le mot que tu as dit tout à l’heure, il y a cinq minutes, transition. Je voudrais maintenant, dans cette prochaine partie, qu’on parle des transitions de différentes gouvernances. On voit qu’au tout départ, ce que tu racontais, Didier, c’est que tu es tout seul. Après, vous recréez un projet avec l’équipe de la Gendarmerie nationale et maintenant, le projet est soutenu par une société. Alors, j’aimerais que vous puissiez revenir sur ces transitions et nous expliquer est-ce que ces transitions étaient préparées ? Est-ce que cela s’est fait en douceur et aussi, qu’est-ce que ça fait, vu de votre point de vue, quand on change les mainteneurs du projet sur le projet en lui-même, François-Xavier, peut-être ?
François-Xavier : ce qui s’est passé, donc. Moi, j’étais en contact avec les gars de la gendarmerie, je suis resté en contact avec eux. Nous, on était prestataires, on était intégrateurs de solutions libres à l’époque, de toutes solutions libres. On nous demandait de temps en temps de monter de l’OCS, du GLPI. Et assez souvent, dès qu’il y avait un peu d’OCS à faire, je disais à mes potes de la communauté, et puis il y avait des échanges qui se créaient. Dès qu’on a embauché des développeurs chez Factor-FX, le passage obligé, c’était de faire de l’OCS. Au début, les petits gars de chez Factor-FX, les développeurs, discutaient avec les mecs de la communauté. Petit à petit, ça s’est passé comme ça. Didier, je pense que c’est la réalité. Nous, en tant que société, quand il fallait mettre un petit coup de pouce à la communauté sur un PC, sur un déplacement, on le faisait. On jouait le jeu. Et naturellement, comme disait Didier, la vie fait que les gars historiques ont envie de faire autre chose. Nous, on était clairement identifiés comme un vrai intégrateur et contributeur d’OCS. Et petit à petit, le passage de flambeau s’est fait, je pense, assez naturellement.
Didier : très, naturellement.
François-Xavier : en amenant toutes les garanties, la preuve en est qu’aujourd’hui, la licence n’a pas bougé d’un iota. On n’a pas coupé la communauté, on a monté une offre de service autour pour bien faire fonctionner le sujet. Et entre Gilles, que vous avez là autour du micro, et Didier, on a eu une bonne dizaine de personnes de Factor-FX, je pense, qui ont contribué directement ou indirectement sur la roadmap, sur les échanges. Je pense que demain, si Gilles se pose des questions, il peut très bien appeler Didier pour un sujet.
Didier, il serait content de lui répondre. Et on avait encore Erwan dans notre giron, il n’y a pas si longtemps que ça. Je trouve que c’est une super histoire. C’est un modèle d’Open source, quasiment d’une génération d’écart qui a passé le bébé avec un relai d’une association à du privé. Et ça peut fonctionner avec des vieux qui passent le truc aux jeunes et ça peut fonctionner. Des admins qui passent aussi à des devs avec les changements de technologie dans le développement, C’est quand même le projet de type qu’on ne peut qu’admirer, du début jusqu’à la fin. Je ne suis peut-être pas vraiment objectif, mais globalement, il n’y a plus beaucoup de quoi. C’est ça, le truc.
Didier : le passage a été très transparent et c’est fait vraiment dans la douceur. Et là, côté OCS historique, je vais dire qu’on a essayé de monter une offre commerciale autour. On était des techos et absolument pas des commerciaux, donc ça fait un gros flop.
Walid : c’est-à-dire que tu avais monté une boîte
Didier : oui, on avait monté une boîte qui s’appelait osinventory.com.
Walid : ah, oui, c’est vrai !
Didier : pour faire du support sur le sujet, ça a duré un an et demi. En fait, ce qui nous intéressait, c’était la technique et pas trop le reste. Et faire du support sans aller chercher les clients pour faire du support, tu ne fais pas grand-chose comme recette. Et on ne voulait pas lâcher notre job pour se concentrer uniquement à ça. Donc ça n’a pas marché. Et effectivement, derrière, après cet épisode-là, il y a FX qui est arrivé, qui a commencé à être très impliqué dans la communauté. Et le transfert s’est fait de manière très transparente et très fluide. Voilà, ça s’est conclu à Granville. Un long week-end ! Un long week-end ! Voilà, au sens du pire, encore une fois.
François-Xavier : il y a toujours l’association OCS Inventory qui existe. Il doit avoir 200 euros sur son compte, mais qu’on maintient. Et petit à petit, l’association existe toujours, elle est ouverte, elle est publique. Et à côté de ça, il y a la boîte qui vend du service, qui a les développeurs, qui fait vivre le projet, qui répond aux demandes, etc.
Le modèle économique actuel d’OCS Inventory NG chez Factor FX
Walid : on passe d’un modèle 100 % communautaire, à un modèle où c’est une société qui soutient le développement. Et votre modèle économique, c’est le service. C’est-à-dire, ce n’est pas de l’open core, il n’y a pas une partie…
Gilles : il y a une offre de service avec du support, de l’information. On peut faire du développement quand il y a des features [fonctionnalités] qui sont un peu spécifiques. On les met sur le dessus du tas, on va dire. Elles sont forcément open source, évidemment, avec la validation du client, mais la version qui est installée et supportée, c’est exactement la même. Il n’y a aucune différence. Et la difficulté, c’est de trouver un équilibre entre ce soft qui continue d’exister en tant que 100 % Open et d’avoir un modèle économique où on a 1, 2, 3, 4, 5, 6 développeurs dessus. C’est ça, le vrai sujet.
François-Xavier : mais c’est assez intéressant. Effectivement, dans le produit, en tant que tel, on essaye vraiment de faire une documentation complète, d’avoir des définitions du code, tout vraiment 100 % Open. Et pas avoir même d’extension qui serait, je sais pas, derrière une souscription ou quelque chose comme ça. Et au final, on se retrouve avec effectivement que de l’expertise et du service, on essaye vraiment de garder cette philosophie-là, donc il y a aussi même au niveau de certains développements.
Par exemple, quand quelqu’un va venir nous demander un développement, c’est déjà arrivé. Typiquement, le plugin [Microsoft] Azure sur OCS Inventory, c’est un client qui a payé le développement initialement et en fait, on ne lui a facturé qu’une partie du développement et le reste a été développé en mode open. Donc, il y a aussi quelque chose où on essaye de faire interagir. Je ne sais pas si je le dis très bien. FX, tu peux me reprendre.
On essaye de faire interagir les clients qui vont financièrement soutenir l’application, la pérennité et les développeurs, pas forcément payer les salaires, avec la communauté et redonner des fonctionnalités à la communauté. Même au niveau de la documentation, on fait en sorte qu’il n’y ait pas de zone d’ombre dans la documentation et qu’il n’y ait pas des zones peu documentées qui amènent forcément vers le fait qu’on n’a pas le choix de contacter l’éditeur parce que c’est pas expliqué, c’est expliqué nulle part.
Walid : attends, il y a un truc que je voudrais bien comprendre. Factor-FX, votre but, c’est de faire de l’OCS et c’est les prestations qui travaillent sur OCS, enfin, qui développent OCS ou est-ce que c’est, vous êtes une société, vous avez un certain nombre de services que vous proposez en dehors d’OCS, ce qui fait qu’en fait, les développeurs sont payés sur toutes les prestations que vous faites et celles-ci comprennent OCS ?
François-Xavier : tout à fait. On a un intégrateur. En ce moment, on fait beaucoup de Proxmox, on fait beaucoup de Bluemind, on est reconnus pour ça. Et à la fois, on est éditeur et intégrateur d’OCS. Mais on n’est pas éditeur de Proxmox et Bluemind. On est des gros intégrateurs, mais on n’est pas éditeur. Là où on a effectivement un truc spécifique, c’est que pour OCS, on est à la fois éditeur et intégrateur. Mais il y a plein d’intégrateurs d’OCS qui le font très bien. Ce n’est pas le sujet. On finance aussi le développement d’OCS par le financier, qui arrive de l’autre côté, bien évidemment. Je ne vais pas dire que ça ne pourrait pas tenir debout, mais ça serait juste. Il faut être honnête.
Walid : chacun peut avoir un modèle différent. Tu peux le financer via des souscriptions comme le font pas mal de sociétés. Tu peux le financer comme ça, comme on est une société de service, on a un certain portfolio et dans tout ça, finalement, ça nous donne du temps pour payer nos développeurs en partie à travailler là-dessus.
François-Xavier : justement, c’est ça qui est intéressant, c’est de montrer la diversité du monde. On a un deal historique avec les gens d’OCS, le canal historique, c’est qu’on ne change pas les licences, on ne close rien. On s’est engagé là-dessus et on n’a qu’une parole et on restera comme ça.
Évidemment, il y aurait des souscriptions, il y aurait des licences, il y aura tout ça. Le développement irait plus vite. Maintenant, est-ce qu’il a besoin d’aller plus vite ? Non, il a besoin d’être fait. Donc, on prend le temps, Gilles gère ça très bien. Les technos bougent, beaucoup, les demandes bougent beaucoup aussi. Là, la V3 va arriver, je crois qu’on en parlait tout à l’heure. On est vraiment dans du soft mûr et éprouvé.
Gilles : puis la philosophie. When it’s Ready, c’est pas mal.
Walid : c’est quoi, pardon ?
Gilles : la philosophie, quand c’est prêt, genre, lancer un produit quand il est prêt et prendre le temps de bien faire les choses. Aujourd’hui, quand on veut tout le temps se précipiter, je pense que c’est une bonne chose.
Walid : dernière question pour toi, Gilles. Plus personnelle, qu’est-ce que ça fait de rejoindre un projet comme OCS et de prendre part activement dans le développement d’un logiciel qui est là depuis, bien, avant que toi, tu commences ta carrière ?
François-Xavier : il y a pas mal d’étapes, parce que ce n’est pas évident. Déjà, la transition a amené une transition technique qui fait que quand je suis arrivé, il y avait l’IRC. Par exemple, j’ai eu pas mal de contacts avec Erwan, qui m’avaient expliqué pas mal de choses. Il était venu en physique, donc on avait pu se rencontrer.
On va dire qu’il y avait eu un cadre qui m’avait un peu mis en confiance, parce que c’est vrai que, de base, on dit « le soft existe depuis 15 ans, reprends-le ». C’est pas que j’aurais un peu flippé tout seul dans mon coin, sachant que c’était une première expérience pour moi de reprendre quelque chose d’aussi gros. Pour le coup, il y a eu un super accompagnement, donc j’étais déjà un peu plus rassuré. C’est super motivant. Par contre, toujours un peu flippant. On a toujours peur, pas de « casser le bébé », mais de faire le mauvais choix ou de pas forcément aller dans la bonne direction. Donc voilà, il y a toujours cette remise en question là qui arrive. Mais sinon, c’est super motivant.
Quand on parle du logiciel, je veux dire, tout le monde en a entendu parler. Dès que je parle de OCS Inventory, peu importe où c’est, les gens connaissent ou ils font référence. Quand on a des contacts qui viennent d’autres pays, juste pour nous dire : « ah, on a installé cet outil, ça fonctionne bien, on a juste cette question-là ». Enfin, voilà, la récompense, elle est plutôt « humaine », sur l’aspect communautaire, mais le fait d’avoir autant de retours, c’est super cool. Après, il y a aussi un autre truc qui est cool. Je trouve qu’avec OCS on ne s’ennuie pas car installer trois OCS différents ne va pas amener à trois fois la même chose. C’est un outil plug and play, on l’installe, il fonctionne, mais je me suis rendu compte au fur et à mesure des différentes intégrations que j’ai suivies, des développements et tout ça qu’en fonction du domaine d’activité de l’entreprise, de sa vision, de comment elle se positionne, notamment vis-à-vis de la gestion du parc, OCS va prendre une forme très différente d’une entreprise à l’autre. Du coup, c’est très intéressant, par exemple, d’intégrer un OCS Inventory dans un domaine industriel ou dans une entreprise classique type bureau, on va dire, qui fait juste du service ou quelque chose comme ça. On ne va pas du tout avoir les mêmes besoins, pas du tout avoir les mêmes attentes. Et, du coup, du fait qu’on est capable de s’intégrer un peu partout, ça nous permet aussi de toucher à des domaines d’activité qui sont aussi très intéressants à comprendre. Et du coup, à explorer, on va dire, par l’intégration d’OCS.
François-Xavier : j’ajouterais un truc, c’est que plus ça va, plus OCS devient critique en tant qu’outil. D’un point de vue, sécurité, rapidité de déploiement, réaction à une faille ou réaction à un besoin d’inventaire ou quelque chose. En fait, pendant longtemps… comme tu disais Didier, tu installes ton OCS, il roupille dans son coin, tu fais une fois l’inventaire de temps en temps, ça roule. Maintenant, qui est autour de la table, on peut en parler, on gère de la détection de failles, on gère de la détection, on essaye de faire du Shadow IT, il y a plein de choses. Et en fait, c’est devenu extrêmement critique. Et de par le télé-déploiement, c’est-à-dire que aussi, c’est extrêmement critique aussi, de ce point de vue-là, parce que tu veux mettre une merde dans le truc, tu as quand même l’outil idéal pour le faire.
Walid : vu tous les accès qu’il a, c’est sûr.
OCS Inventory NG v3
François-Xavier : donc, c’est devenu extrêmement critique. Et le développement doit être fait aussi dans ce sens-là.
Walid : bon, alors, je voulais qu’on reparle rapidement de la version 3 d’OCS Inventory. On en a parlé un petit peu, on a commencé à parler un petit peu avant, mais Gilles, rapidement, à quoi est-ce qu’on peut s’attendre sur cette version 3 ?
Gilles : donc cette version 3, déjà d’un point de vue technologique, elle change complètement la donne. C’est-à-dire qu’on est sur quelque chose de beaucoup plus moderne en termes de technologie. On va être sur du Python contrairement à du Perl, comme avant, qui était globalement une technologie un peu vieillissante. On a également des systèmes d’interconnexion qui vont nous permettre de faire des appels par de la REST API ou des choses comme ça, qui vont faciliter très grossièrement les interactions avec les autres outils, donc les outils tiers. Donc quand quelqu’un voudra venir chercher des informations ou voudra aller en récupérer ou les modifier directement, il pourra le faire assez simplement directement par des interfaces qu’on aura prévues et conçues auprès à l’able d’un point de vue plus technique.
Dans la notion d’inventaire en tant que tel, on a une grosse évolution. Aujourd’hui dans la version 2, ce qui se passe c’est que la fiche de route de l’agent, c’est-à-dire que quand l’agent va initier son inventaire, il va récupérer et il va exécuter un certain nombre de commandes qui sont ancrés dans l’agent et on ne peut pas modifier ce comportement-là. Ce qui pose un peu de problème parce que si par exemple aujourd’hui on a besoin d’ajouter une information à OCS dans la 2, on est obligé de passer par le développement et le déploiement d’un module sur cet agent.
L’objectif de la 3, c’est de passer toute cette logique-là au niveau du serveur. En fait, les gens pourront eux-mêmes configurer leurs propres fiches de route pour ensuite décider ce que l’agent va devoir récupérer. Un cas d’usage qui est assez intéressant.
Globalement que nous, on a rencontré pas mal lors de nos différentes intégrations d’OCS, c’est que toutes les entreprises ont besoin d’inventaires, mais la notion même d’inventaires change énormément d’une entreprise à l’autre. Et donc, l’objectif de ce modèle-là, c’est de permettre à ces entreprises, justement, de récupérer les informations qui ont un impact pour la gestion de leurs parcs.
Walid : et est-ce qu’il y a des changements sur le mode de communication de l’agent ? Parce que de mémoire, alors peut-être que ça avait changé d’ici là, mais de mémoire, c’était de la communication qu’il y a des fichiers XML. Est-ce que vous êtes passé à du JSON ou à d’autres choses ?
Gilles : alors du coup, les agents maintenant communiquent par l’API qui est l’interface qu’on mettra à disposition de tous. Donc au final, en fait, l’agent ne fait rien de particulier dans l’envoi des données et en termes de format, on est du coup sur du RESTful standard avec du JSON.
Walid : ok, super. Est-ce que tu as d’autres choses à mettre en avant pour les utilisateurs ou les administrateurs ?
Gilles : d’un point de vue purement utilisation et administration, on a aussi rationalisé et simplifié grandement l’interface. C’est-à-dire que dans la 2 pour ceux qui ont déjà utilisé cette version-là, on peut vite être perdu dans l’immensité, le nombre de paramètres différents qui vont globalement avoir un impact extrêmement minimum. Aujourd’hui cette configuration-là elle a été rationalisée afin que globalement quelqu’un d’un peu nouveau qui va intégrer l’application ou l’outil va vite s’y retrouver et cette interface en plus d’être un peu simplifiée sur la partie configuration se retrouve beaucoup plus ergonomique que ce soit au niveau de l’affichage de la consultation, la recherche est même de manière plus globale dans l’ergonomie et la simplicité et le confort d’utilisation.
Walid : cette refonte ergonomique, vous l’avez fait tout seul, basé sur les retours que vous aviez, comment ça s’est passé ? Vous avez travaillé avec des gens en externe, comment vous êtes organisé ?
Gilles : alors, ce qu’on a fait, c’est que quand on a commencé à développer cette refonte, on avait un certain nombre de clients qui sont même plus des partenaires qui globalement nous aident à faire évoluer l’outil. Et on leur a proposé un certain nombre de maquettes. L’optique c’était de ne pas énormément changer entre la 2 et la 3, c’est-à-dire que si aujourd’hui vous avez déjà installé une 2, le placement des menus, il y a énormément de choses qui vont vous parler dans la logique de conception de l’interface. Par contre là où on a retravaillé avec les partenaires avec qui on a développé c’est trop fin. C’est majoritairement les irritants d’usage, c’est-à-dire la multiplication des clics, typiquement un technicien qui veut ou qui accède plusieurs centaines de fois à la même donnée dans une journée parce que je ne sais pas, il y a une faille de sécurité et il revient x fois sur la même recherche, x fois sur les mêmes machines ou le même groupe de machines parce qu’il travaille sur un groupe de particulier sur cette journée-là.
On sait qu’aujourd’hui c’est un peu une usine à clics et toute cette partie-là justement le flux même de clics pour arriver à une action vraiment pro-bande dans l’application donc un déploiement, une recherche ou une action sur la machine se retrouvent grandement diminuées. Donc on a pris des cas d’usage client, c’est-à-dire qui nous ont montré leur flux de tous les jours. Donc c’est-à-dire nous aujourd’hui on a telle chose à faire sur tel groupe de machines, voilà comment on travaille. Et c’était, bon bah voilà, là typiquement il faut cliquer trois fois alors qu’en fait l’information finalement elle devrait être en première page, elle devrait être visible directement. Il y a pas mal de fonctionnalités ergonomiques et voire même de structuration de l’interface qui ont été liées autour de ces flux utilisateurs.
Walid : ok, dernière question là-dessus sur la 3, est-ce qu’il y a eu des changements au niveau du déploiement ?
Gilles : alors oui, le mode de déploiement a été complètement revu aussi. On n’a pas tout changé, c’est-à-dire que d’un point de vue modèle de transmission des paquets, on est dans la même logique, c’est juste qu’on est sur des protocoles de transfert plus modernes, et des formats de transfert plus modernes. Mais globalement, on est maintenant sur un paquet qui fait plusieurs actions. Donc dans la 2, ce qui se passait, c’est que quand on faisait un paquet, c’était une exécution one shot et s’il y avait une action un peu complexe à orchestrer il fallait faire un script. Et si ce script plantait, c’était très compliqué de savoir à quelle étape il avait planté sur une machine. Donc en fait, le debug derrière se passait automatiquement sur la machine, sauf que quand vous déployez sur un parc de 100 000 machines, même s’il n’y a que 1 % d’échecs, 1 % d’échecs, ça reste 1 000 machines, et on ne peut pas s’amuser à aller sur 1 000 machines pour voir ce qui s’est passé.
Donc on a fait deux choses. Donc aujourd’hui, on peut faire en sorte que le télédéploiemen tgénère des logs et que ces logs soient renvoyés au serveur afin de consulter les logs d’échecs directement depuis le serveur de déploiement au lieu d’être sous une seule exécution d’une seule action, on se retrouve à pouvoir créer un certain nombre d’actions au sein d’un paquet. Ces actions vont être ordonnées et conditionnelles, c’est-à-dire qu’on peut dire l’action 1, c’est stopper les services. Si l’action elle a échoué on passe par autre chose, si elle n’a pas échoué on passe à une étape 2 qui va faire autre chose. C’est vraiment ça l’objectif c’est d’avoir quelque chose d’ordonné qui va nous permettre de créer des actions et notamment au niveau du logging c’est plus simple parce que quand on se passe Perl autre chose un déploiement rentre en échec, on sait quel paquet a échoué bien sûr et à quelle action.
Walid : assez rapidement, j’aurais aimé qu’on parle d’un sujet. Comment introduire ça ? Quand tu as commencé au départ, Didier, il n’y avait rien au niveau inventaire. Il n’y avait pas de format d’inventaire, il n’y avait pas de gestion, de configuration, etc. À un moment, ont commencé à arriver les outils de configuration, du CFEngine, du Puppet, du Chef, ce genre d’outils, qui ont commencé à faire aussi de l’inventaire. Après est arrivé le cloud. Après, on a vu qu’il y a plein d’autres devices qui sont arrivés avec la notion d’inventaire et de device, ça devenait un peu plus flou. Comment vous voyez cette évolution qui s’est passée avec le temps, comment vous êtes adapté à ça ? C’est un peu vague, un peu flou.
Didier : initialement, on s’est juste adapté en faisant des agents. Pour chaque système, puisqu’on a fait des agents pour Android, on a essayé de faire un agent pour iPhone, enfin pour iOS, mais c’était un peu plus compliqué. Voilà, présent aujourd’hui, je laisserai Gilles dire sa vision parce que c’est lui qui l’apporte plus précisément.
Gilles : on va dire que pour tout ce qui va être mobile, on ne fera jamais du MDM, ça, c’est clair.
Walid : donc, la gestion de device mobile [Mobile Device Management].
Gilles : dans le sens où on va sûrement proposer de l’inventaire basique. Il y avait un agent Android, par exemple, pour la 2, qu’on a décidé de mettre un peu de côté, pour pas mal de raisons : il y a énormément de contraintes, aujourd’hui, de sécurité au niveau de ces devices-là, qui font que sans un passage en root, ou sans des actions assez complexes au niveau du device, qui sont souvent très spécifiques aux constructeurs. Par exemple, sur un téléphone Android, en fonction du constructeur, passer une application en root, ça ne va pas du tout être les mêmes actions, le même mode d’installation. Donc, en fait, on s’est rendu compte qu’on rentrait carrément dans un autre domaine. Ça ne veut pas dire qu’on ne va plus jamais proposer d’inventaire sur ces équipements-là, parce que dans la stack technique de la version 3, par exemple, les frameworks qu’on a choisis pour la partie agent notamment, nous permettent de compiler et de créer du code pour des applis iOS et des applis Android. On va sûrement rester sur un cadre assez simple, qui est juste de l’inventaire basique et de la remontée d’informations. On n’ira pas aussi loin que la notion de modèle d’inventaire que j’ai abordée, on n’ira pas aussi loin que du déploiement et de la gestion de rémédiation. Si un jour on arrive à ça sur les autres plateformes, on ne fera sûrement pas ça sur du mobile.
Walid : n’allons pas beaucoup plus là-dessus, parce que je pense qu’on pourrait faire une discussion hyper intéressante, mais qui ne va intéresser que les gens du domaine, ce qui n’est pas le but. Maintenant, avant de se quitter, OCS a 25 ans. Qu’est-ce que vous retirez de tout ça ? Et la première chose que j’aimerais te demander, Didier, c’est quel est ton regard sur l’histoire d’OCS et ses évolutions ? Comment tu vois de loin maintenant les choses après toutes ces années ?
Didier : je vais dire qu’il y a 25 ans, franchement, je ne pensais jamais écrire un truc qui serait comme ça. Moi aujourd’hui, je suis très fier de ce qui est devenu le projet, de la manière dont il est mené par Factor-FX. Je suis également extrêmement fier et extrêmement content d’avoir rencontré toutes ces personnalités qui ont contribué au projet tout au long, quelles qu’elles soient, y compris nos aimables forkers. Au final, on a passé des bons moments, on a fait des belles choses. Je suis très content de ça et tel que je le vois aujourd’hui, je pense que c’est un outil qui va continuer encore de longues années à donner beaucoup de services à plein de personnes. Très fier de ce qu’il est devenu, très fier de ce qui a été fait, très fier de ce qu’il est devenu.
Walid : je dois dire qu’effectivement, je suis assez admiratif du travail qui a été fait pendant toutes ces années. Surtout se dire qu’au départ, c’était un travail bénévole. Finalement, tu as travaillé quasiment bénévolement dessus, tout le temps.
Didier : la majorité des gens qui ont travaillé, ont travaillé là-dessus bénévolement ou dans le cadre d’un projet spécifique. En termes de financement, ça a été peanuts. Pour l’association OCS Inventory NG, il y a eu 3 000 euros pour les victoires des trophées du libre en 2006. Et quand on a mis en place les dons sur, je ne sais plus si c’était SourceForge, à l’époque où il y avait les dons. Si on a récolté 80 euros ou 100 euros en totalité, ce n’est pas avec ça qu’on aurait pu vivre. Mais c’est l’investissement de sociétés comme Factor-FX qui a permis de faire en sorte que le logiciel devienne ce qu’il est et qu’il continue de perdurer.
Walid : j’allais vous demander de partager une expérience marquante autour de l’OCS. Vous avez déjà donné quelques exemples. Je ne sais pas si Gilles ou François-Xavier, vous avez une expérience marquante, vous-même d’ailleurs Didier, vous avez une expérience marquante que vous voulez partager ? Didier, tu as parlé tout à l’heure de la Banque du Brésil.
François-Xavier : je voulais rajouter quelque chose aux propos de Didier. En ce moment, on parle beaucoup de souveraineté. Et de revenir reprendre les rennes. On fait des choses : ça fait 25 ans que ça fonctionne. Ça fait 25 ans que c’est open source, ça fait 25 ans qu’une société a pu fonctionner, ça fait 25 ans qu’on fait des inventaires. C’est pas la preuve que ça peut fonctionner ? Mais oui, ça fonctionne. Il suffit juste d’avoir les gens intelligents avec le cerveau bien fait, avec les valeurs, on garde jusqu’au bout et ça marche. Donc si on est capable de le faire pour ça, on peut le faire pour tout le reste.
Walid : tu m’as piqué ma conclusion, c’est ce que je voulais dire en conclusion. Tu vois, c’est un vrai sujet, tu vois et moi, ça me touche quand je dis ça.
François-Xavier : parce que, comme Didier, qui ne pensait pas au tout début, que ça donnerait ça, quand je suis arrivé en cours de route, je ne pensais pas que ça donnerait ça. Et au bout de 25 ans, oui, ça donne ça. Et des vrais sujets en ce moment de sécurité, de souveraineté, de gouvernance, des jeunes qui peuvent contribuer. Des jeunes, ils peuvent contribuer. Donc, ça marche. On a tout ce qu’il faut pour que ça marche.
Didier : si, moi, j’ai un truc. En fait, l’expérience, ça a été les premières rencontres OCS à Nantes, où on s’attendait à avoir quatre péquins qui viendraient voir. On avait réussi à dégoter une petite salle à l’Université de Nantes pour faire un autre truc. On avait préparé ça, bien évidemment, autour d’un verre de bière, c’est-à-dire qu’on avait rien préparé… Et on s’est retrouvés à passer une journée extraordinaire avec des utilisateurs qui étaient là. Il y en avait au moins une cinquantaine ou une soixantaine. On ne s’attendait pas du tout à ça, à avoir autant de monde. Et on a passé une super journée à échanger avec eux sur leurs problématiques, sur leurs souhaits. C’est un moment qui m’a marqué.
Que retirer de ces 25 années d’existence ?
Walid : ma toute dernière question, avant de vous laisser la parole pour une conclusion. Il y a un truc que j’aime beaucoup mettre en avant, surtout à l’heure de l’IA, c’est le temps long. Ça fait 25 ans que vous êtes là. Tu as commencé à en parler tout à l’heure, tu en as parlé un peu tout à l’heure, Gilles. Quel est votre rapport au temps quand on développe un logiciel qui est là ? Déjà, depuis 25 ans ?
Gilles : ce n’est pas évident. La question n’est vraiment pas simple, pour le coup. Je pense vraiment que c’est propre à chacun. Moi, de ma vision, c’est surtout qu’au final, avoir une vision, pas forcément courir pour être le plus performant à l’instant t ou être forcément le logiciel avec le plus de fonctionnalités, je ne pense pas que ce soit ça qui amène un outil à être vraiment sur le long terme, mais plutôt une notion de stabilité et de vraiment garder ses valeurs sur le long terme. Je pense qu’il y a une histoire, que le fait d’avoir un temps long sur un produit, ça lui amène une certaine maturité. Forcément cette maturité fait qu’il va être beaucoup moins sensible aux changements et aux impacts qu’il peut y avoir potentiellement sur le marché. Ça ne veut pas dire qu’on ne doit pas s’adapter, ça veut juste dire que l’outil a déjà vécu tellement de changements dans sa vie qu’en fait, on n’est techniquement plus à un changement près.
Le mot de la fin des invités
Walid : concluons alors, après cet échange riche et plein d’émotions pour moi. Je vais vous laisser un mot de la fin. Si vous voulez faire passer un mot aux auditrices et aux auditeurs, un message aux auditrices et aux auditeurs du podcast Projets Libres. François-Xavier, à toi l’honneur.
François-Xavier : apprenez à coder. Vous allez coder un petit peu, mais comprenez ce que vous codez. Contribuez à des projets open source. Rencontrez les gens des communautés. Peu importe où ils sont, peu importe qui ils sont, on a cette faculté, je pense, en France, à faire de la magie dans l’open source. Réellement, moi, je suis convaincu de ça. On a le power là-dessus, la preuve en est on a des projets open qui sont incroyables. On a OCS, on en a plein en fait donc il faut y aller.
N’hésitez pas vous aurez toujours un développeur, un développeur de Factor-FX, un développeur d’OCS. On a réussi à garder et c’est ça aussi qui est important.
Ce que je voulais dire tout à l’heure, c’est qu’il il faut garder la magie, il faut garder le truc qui nous anime depuis si longtemps et qu’on a réussi à faire passer aux jeunes générations. Merci.
Gilles n’était pas un terminator programmé pour faire de l’open source. Mais en fait, on l’a intégré. Et puis, je crois qu’il kiffe bien sa vie de développeur. C’est aussi une fierté. Je pense que Didier est d’accord avec moi là-dessus. On a réussi à passer la main aussi. C’est ça qui est génial. Enfin, j’arrête. Sauf que tout le monde doit pleurer.
Walid : Gilles, ton mot de la fin.
Gilles : je me suis un peu fait piquer ma conclusion par FX.
François-Xavier : je vais piquer les conclusions de tout le monde.
Gilles : Alors, pas aussi belle… Je n’ai suis pas contribué que à OCS depuis que je fais de l’Open Source. Si un jour vous hésitez ou qu’il y a quelqu’un qui écoute ce podcast et qui hésite à potentiellement contribuer, vraiment foncez parce que c’est une super expérience. Toutes mes contributions Open Source, j’ai tout fait de la traduction, des rapports de bug, j’ai vraiment fait un peu de tout et je trouve ça super enrichissant. Vraiment, les communautés, en général, sont même extrêmement bienveillantes. Donc, si vous trouvez un soft auquel contribuer, c’est vraiment une expérience qu’on ne peut vraiment pas décrire. Et il n’y a vraiment pas de temps de perdu là-dedans. C’est vraiment une super aventure.
François-Xavier : et ça permet de trouver du taff de manière royale. C’est la voie royale pour trouver du boulot.
Walid : Didier, ton mot de la fin.
Didier : quoi dire après tout ça. Contribuez, parce que contribuer, c’est effectivement permettre de faire des outils qui peuvent perdurer. Mais c’est aussi rencontrer des gens extraordinaires, je le redis encore, mais c’est rencontrer des gens extraordinaires parce que les gens qui sont dans l’Open source, la quasi-totalité, c’est des gens qui ont un esprit très ouvert et très bienveillant et qui sont vraiment des belles personnes à voir. Donc, voilà, c’est bien de contribuer, mais on y fait des très, très belles rencontres
François-Xavier : et c’est encore mieux quand c’est autour d’une bière.
Didier : et c’est encore mieux quand c’est autour d’une bière.
Walid : c’est ce qu’il faut retenir de cet épisode. Moi, je vais faire ma conclusion aussi. C’est une grande émotion d’avoir Didier autour de la table. Ça fait un certain temps qu’on discute de cet épisode avec OCS. Et j’avais dit « d’accord, mais il faut qu’il y ait Didier autour de la table ». Ça me semblait super important. Parce que d’abord, je n’avais pas toute l’histoire du projet et que je voulais vraiment qu’il soit là pour en parler. Donc, ça me fait très, très plaisir.
Puis, je suis retombé dans des choses que j’avais un peu oubliées et tout. Ça fait toujours quelque chose. Je me rappelle maintenant de ces soirées autour de bière à discuter. Enfin, bref, plein de trucs. Ou d’autres soirées qu’on m’a racontées autour de bières ou que je n’étais pas là aussi.
Moi, ma conclusion, je dirais qu’à l’heure de l’IA, où il faut coder vite et où on se demande ce que l’humain va continuer à faire, sans vouloir empiéter sur les futurs épisodes de mon compère Raphaël dans le podcast, à l’heure de l’IA, on peut tout coder vite et qu’on est des surhumains, des gens qui sont là, des communautés, des gens qui se parlent, qui vont boire des bières, en fait, c’est ça, l’Open source. En tout cas, tel que nous on l’a connu. Et moi, j’y crois vraiment. Et j’espère que ça va rester comme ça et qu’on aura d’autres projets qui sont là depuis 25 ans et qui seront encore là pour des années et sur lesquels on peut compter. C’est super important.
Donc, dans le podcast, on en a parlé déjà et on va continuer parce que, un, c’est l’histoire, il faut la raconter et puis, deux, c’est hyper important de voir que les projets sont là, ils évoluent, ils sont réécrits et tout. Cela fait partie du cycle des choses.
C’était ma conclusion. Merci beaucoup à tous les trois. Je suis vraiment ravi de vous avoir. Pour les auditrices et les auditeurs du podcast, si vous ne connaissez pas OCS, je vous invite à regarder. L’histoire est très riche. Encore une fois ce que je voudrais dire pour finir, c’est que pour préparer cet épisode, bien sûr, j’ai recherché mes sources. Et, comme d’habitude, les seules sources qui restent de toute cette époque, c’est LinuxFr.org. Donc cela a vraiment du sens que Projet Libre soit devenu le podcast de LinuxFr.
Partager cet épisode, regarder OCS et puis tous les trois, j’espère un jour avoir l’occasion de vous recroiser autour d’une bière pour parler du bon vieux temps et de l’avenir d’OCS et de l’avenir de l’ITSM, voilà. à bientôt avec grand plaisir.
Didier : merci Walid.
Gilles : à bientôt.
Production de l’épisode
- Enregistrement à distance les 8 avril et 7 mai 2026
- Trame : Walid Nouh
- Montage : Walid Nouh
- Transcription : Walid Nouh
Licence
Ce podcast est publié sous la licence CC BY-SA 4.0 ou ultérieure











