Hébergement des développements logiciels de laboratoire
Transcription
Hébergement des développements logiciels de laboratoire
Hébergement des développements logiciels de laboratoire FAQ Plume Violaine Louvet Institut Camille Jordan Université Lyon 1 & CNRS http://www.projet-plume.org/ V.Louvet (ICJ / Calcul) FAQ Forges 1 / 13 Qu’est-ce qu’une forge ? V.Louvet (ICJ / Calcul) FAQ Forges 2 / 13 Qu’est-ce qu’une forge ? V.Louvet (ICJ / Calcul) FAQ Forges 2 / 13 Qu’est-ce qu’une forge ? Définition Forge ou plate-forme d’hébergement de projets logiciels : environnement Web constitué d’un ensemble d’outils du travail coopératif et du génie logiciel pour le développement collaboratif et distribué de logiciels. Objectifs X offrir un espace d’échange permanent et de collaboration en ligne aux développeurs de logiciels X fournir un espace de distribution (versions publiques des logiciels développés : paquets sources, pages web) pour les utilisateurs X rassembler des projets et des développeurs, mais aussi d’autres personnes travaillant sur ces projets (utilisateurs, traducteurs ...). V.Louvet (ICJ / Calcul) FAQ Forges 2 / 13 Forge - Logiciels de déploiement de forges Forge versus logiciel de forge On utilise souvent le terme forge pour désigner les logiciels intégrés permettant de déployer une forge. Attention à l’amalgame Ce qu’il faut savoir l’installation et la configuration de ces outils ne sont pas triviales l’administration d’une forge est un travail non négligeable les forges ne sont pas interopérables : très compliqué de migrer d’un logiciel à l’autre, voire impossible ... V.Louvet (ICJ / Calcul) FAQ Forges 3 / 13 Logiciels de déploiement de forges Liste non exhaustive de logiciels de déploiement de forge (libres) CodingTeam (forge francophone) PicoForge (développé à TELECOM & Management SudParis) FusionForge (reprise du code sous GPL de GForge) RedMine InDefero (clone de Google code) Savane (logiciel utilisé par GNU Savannah et Gna) Launchpad (utilisé entre autres pour ubuntu) Trac LibreSource V.Louvet (ICJ / Calcul) FAQ Forges VHFFS (développé et utilisé par TuxFamily) ... 4 / 13 Services offerts sur une forge Outils potentiellement disponibles système de gestion des versions, gestionnaire de listes de discussion (et/ou de forums), outil de suivi des bugs, gestionnaire de documentation (souvent sur le principe du wiki), gestion des tâches, traduction en ligne, présentation de copies d’écrans, écriture de nouvelles, mise à disposition d’un hébergement web, gestion des tests, gestion (interne au projet) des évolutions fonctionnelles (différentes des bugs ou demandes d’évolutions des utilisateurs). V.Louvet (ICJ / Calcul) FAQ Forges 5 / 13 Forges existantes : forges de la communauté ESR SourceSup : Ens Sup - Recherche destinée aux établissements d’enseignement supérieur (universités, écoles d’ingénieurs, ...) et aux organismes de recherche français. Les projets sont des projets de développement de logiciels ayant vocation à être diffusé publiquement (même si ils peuvent rester privés le temps d’être finalisés). Hébergée et administrée par le CRU. Présentée juste après ! V.Louvet (ICJ / Calcul) FAQ Forges 6 / 13 Forges existantes : forges de la communauté ESR SourceSup : Ens Sup - Recherche INRIAGForge : INRIA https://gforge.inria.fr/ Objectif : fournir à toutes les personnes travaillant à l’INRIA une infrastructure pour leurs collaborations scientifiques avec les partenaires internes ou extérieurs à l’institut. Tout projet hébergé sur InriaGForge doit donc avoir au moins un développeur issu de l’INRIA. V.Louvet (ICJ / Calcul) FAQ Forges 6 / 13 Forges existantes : forges de la communauté ESR SourceSup : Ens Sup - Recherche INRIAGForge : INRIA Mulcyber : INRA http://mulcyber.toulouse.inra.fr Destinée aux membres du département MIA (Mathématiques et Informatique Appliquée) de l’INRA (Institut National de la Recherche Agronomique) et à leurs collaborateurs. Tout projet hébergé sur Mulcyber doit donc être porté par un membre du département MIA de l’INRA. V.Louvet (ICJ / Calcul) FAQ Forges 6 / 13 Forges existantes : forges des administrations publiques Adullact.net : administrations et collectivités françaises http://adullact.net/ Tout projet, si celui-ci présente un intérêt pour la sphère de l’argent public au sens large, c’est à dire principalement les administrations centrales ou territoriales. ADULLACT : Association des Développeurs et des Utilisateurs de Logiciels Libres pour l’Administration et les Collectivités Territoriales. Adullact.net : service d’hébergement et de travail collaboratif consacré au développement de logiciels libres métiers. Un projet qui ne serait pas sous une licence GPL-compatible ou reconnue par l’OSI peut être refusé. AdmiSource : tous les projets ont été transférés sur Adullact.net V.Louvet (ICJ / Calcul) FAQ Forges 7 / 13 Forges existantes : forges des administrations publiques Adullact.net : administrations et collectivités françaises Forge OSOR : administrations européennes (Open Source Observatory and Repository) http://forge.osor.eu/ Méta-forge de forges nationales en Europe, fédération européenne de référentiels de logiciels open-source financés par de l’argent public (comprenant la forge Adullact.net). Ouverte aux projets à destination des administrations publiques, pour le partage et la ré-utilisation de ces logiciels dans d’autres administrations publiques à travers toute l’Europe. La forge OSOR.eu et l’ensemble de ses services sont exclusivement réservés aux échanges et collaborations sur des logiciels libres et open-source. Concerne les logiciels liés aux Systèmes d’Information des administrations. V.Louvet (ICJ / Calcul) FAQ Forges 7 / 13 Forges existantes : forges libres internationales Contrat de service : attention ! Etre vigilant par rapport au contrat de service proposé : Que se passe-t-il si le service disparaı̂t ? Que se passe-t-il si le service devient payant ? Que se passe-t-il si le service devient de mauvaise qualité ? ... V.Louvet (ICJ / Calcul) FAQ Forges 8 / 13 Forges existantes : forges libres internationales Contrat de service : attention ! Etre vigilant par rapport au contrat de service proposé : Que se passe-t-il si le service disparaı̂t ? Que se passe-t-il si le service devient payant ? Que se passe-t-il si le service devient de mauvaise qualité ? ... Sourceforge : Open source international Tout projet de développement. Certainement la plus connue au niveau international. Le développement doit être OpenSource. V.Louvet (ICJ / Calcul) FAQ Forges 8 / 13 Forges existantes : forges libres internationales Contrat de service : attention ! Etre vigilant par rapport au contrat de service proposé : Que se passe-t-il si le service disparaı̂t ? Que se passe-t-il si le service devient payant ? Que se passe-t-il si le service devient de mauvaise qualité ? ... Sourceforge : Open source international Tout projet de développement. Certainement la plus connue au niveau international. Le développement doit être OpenSource. Autres forges GNU Savannah, Gna !, TuxFamily, Google Code, CodingTeam, Tigris ... V.Louvet (ICJ / Calcul) FAQ Forges 8 / 13 Quelle forge choisir ? V.Louvet (ICJ / Calcul) FAQ Forges 9 / 13 Quelle forge choisir ? Choix nécessairement fait en concertation avec votre direction (du laboratoire, de l’université ...) : choix technique mais aussi aspects stratégiques et d’image. V.Louvet (ICJ / Calcul) FAQ Forges 9 / 13 Quelle forge choisir ? Choix nécessairement fait en concertation avec votre direction (du laboratoire, de l’université ...) : choix technique mais aussi aspects stratégiques et d’image. Quelles sont les directives de nos tutelles ? S’assurer des services rendus par la forge, pas uniquement sur les outils techniques disponibles mais aussi sur l’équipe en place pour la gérer, à la garantie de service, aux délais de réponses ... S’assurer de la pérennité de la forge (un gros projet est très difficile à migrer). Si le développement comprend d’autres partenaires (industriels, européens ...) il est évident que le choix va être guidé par l’ensemble de ces partenaires. Aspects communautaires : Les forges correspondent généralement à une communauté (métier ...) avec des processus et des outils adaptés à ces pratiques : choisir plutôt un environnement proche. V.Louvet (ICJ / Calcul) FAQ Forges 9 / 13 Aucune des forges existantes ne répond à mon besoin ! 2 options Installer un logiciel complet de forge au sein de son laboratoire : pas très raisonnable compte tenu de la complexité et du temps d’administration nécessaire. N’installer unitairement que les logiciels nécessaires : I I I outils de gestion de version, outils de suivi de bugs et de tâches, outil de communication. V.Louvet (ICJ / Calcul) FAQ Forges 10 / 13 Aucune des forges existantes ne répond à mon besoin ! 2 options Installer un logiciel complet de forge au sein de son laboratoire : pas très raisonnable compte tenu de la complexité et du temps d’administration nécessaire. N’installer unitairement que les logiciels nécessaires : I I I outils de gestion de version, outils de suivi de bugs et de tâches, outil de communication. Faites du lobbying pour la mise à disposition d’une forge répondant à tous les besoins de notre communauté ! V.Louvet (ICJ / Calcul) FAQ Forges 10 / 13 Outils de gestion de version, de suivi de bogues et de tâches, de communication Besoin : gérer des versions successives de sources ou de documents Besoin : suivi de problèmes (bug tracking) sur un logiciel ou suivi de tâches sur un projet Besoin : Outils de communication V.Louvet (ICJ / Calcul) FAQ Forges 11 / 13 Outils de gestion de version, de suivi de bogues et de tâches, de communication Besoin : gérer des versions successives de sources ou de documents Utiliser simplement un outil de gestion de version. 2 grandes classes : I I Outils traditionnels à fonctionnement centralisé : subversion, CVS ... Outils à fonctionnement plus décentralisé : mercurial, git ... Besoin : suivi de problèmes (bug tracking) sur un logiciel ou suivi de tâches sur un projet Besoin : Outils de communication V.Louvet (ICJ / Calcul) FAQ Forges 11 / 13 Outils de gestion de version, de suivi de bogues et de tâches, de communication Besoin : gérer des versions successives de sources ou de documents Besoin : suivi de problèmes (bug tracking) sur un logiciel ou suivi de tâches sur un projet Logiciels spécifiques : I I I Redmine, Bugzilla Mantis Trac Redmine et TRAC sont plus complets qu’un simple outil de suivi de bugs. Besoin : Outils de communication V.Louvet (ICJ / Calcul) FAQ Forges 11 / 13 Outils de gestion de version, de suivi de bogues et de tâches, de communication Besoin : gérer des versions successives de sources ou de documents Besoin : suivi de problèmes (bug tracking) sur un logiciel ou suivi de tâches sur un projet Besoin : Outils de communication Nombreux outils à finalités un peu différentes : I I I I Outils de forum, CMS - Gestion de contenu, Wikis, listes de diffusion. V.Louvet (ICJ / Calcul) FAQ Forges 11 / 13 Conclusions Outil essentiel pour le développeur : gestion de code, gestion de configuration, outils de reconstruction automatique, plate-forme de diffusion de son logiciel, listes électroniques, forums, gestion des bugs et demandes de modification, ... (très forte demande des personnes de la bap E) pour la communauté : connaissance des projets en cours, des compétences, des technologies émergentes, ... pour les tutelles : visibilité, tableau de bord des activités de développement de logiciel, image du dynamisme de la production logiciel de l’organisme V.Louvet (ICJ / Calcul) FAQ Forges 12 / 13 Perspectives ? V.Louvet (ICJ / Calcul) FAQ Forges 13 / 13 Perspectives ? Cependant ... Les forges existantes ne répondent pas forcément à tous les besoins des membres de la communauté ESR. V.Louvet (ICJ / Calcul) FAQ Forges 13 / 13 Perspectives ? Cependant ... Les forges existantes ne répondent pas forcément à tous les besoins des membres de la communauté ESR. Les contraintes : appartenance ou collaboration avec un organisme logiciels sous licence libre peuvent être rédhibitoires ! V.Louvet (ICJ / Calcul) FAQ Forges 13 / 13 Perspectives ? Cependant ... Les forges existantes ne répondent pas forcément à tous les besoins des membres de la communauté ESR. Les contraintes : appartenance ou collaboration avec un organisme logiciels sous licence libre peuvent être rédhibitoires ! Que peut-on faire quand : le besoin de confidentialité/sécurité est fort (ex jeu de tests avec infos personnelles/médicales, possibilité de brevet associé, coopération industrielle, ...), le logiciel n’est pas sous licence libre, on n’appartient pas à une tutelle qui propose le service ... V.Louvet (ICJ / Calcul) FAQ Forges 13 / 13