Bonjour,
Je travaille en tant que développeur pour une société de service spécialisée pour les machine UNIX-LIKE, j'ai crée pas mal de projets embarquant du linux, et le m'interroge sur les possibilités de leur maintenance sachant que :
_ mes projets sont hébergé par un serveur CVS
_ ils nécessitent un BSP linux (outils de compilation croisée ...)
_ pour effectuer des maintenance nous sommes ammenés à nous déplacer avec un portable parfois vierge ou avec windows.
_ parfois je ne suis pas la personne effectuant la maintenance du logiciel.
_ mon PC est sous une distribution Ubuntu, j'utilise une version 3.2 d'éclipse+CDT.
Mon problème est le suivant :
_ si je ne dispose pas d'un portable avec le BSP je dois réinstaller celui-ci, sachant qu'il est peut-être sous windows ou une autre distrib (quand il faut agir avec urgence c très frustrant), voir une autre version du BSP.
_ utiliser le makefile builder d'éclipse nous rend dépendant de sa version (car pas portable d'une version a une autre), cela est un vrai problème de pérennité, car certaines machines exigent une distribution Linux récente et proposent l'installation d'un autre éclipse, ou compliquent l'installation d'un ancien (j'ai fait l'expérience avec une ubuntu).
_ on est parfois tenté d'exécuter la maintenance sous le compte du collègue pour éviter les installations de BSP, du coup les informations CVS sont faussées (identifiant du commiteur).
solutions pour facilité la maintenance :
_ pour devenir indépendant de la version d'éclipse on utilise notre makefile.
_ j'écris un script d'install du BSP ainsi que de notre projet sur la machine.
Mais comment tester mon script sans foirer ma propre installation ni que celle-ci viennent interférer avec celle installée ?
Comment permettre une intervention efficace d'un tiers sur mon projet ?
Une solution pour moi est de créer une machine virtuelle :
- je pourrais tester mon script d'install,
- une machine virtuelle offrirait sur toute les plateformes (portable / PC Windows Linux) l'environnement et les outils de développements
aucune ré-installation sur l'hôte (mise à part
Cependant j'ai quelques restrictions :
- je ne veux pas installer une distribution trop gourmande en ressources pour pouvoir l'exécuter sur une machine pas très récente et pouvoir l'installer sur une clé USB et l'archiver dans un CD.
- Pouvoir installer des nouveaux paquets a la demande de façon persistante.
- Je ne veux pas disposer d'une cinquantaine d'outils dont je ne me servirais
pas.- L'outil d'exécution de VM doit être disponible sur une plateforme linux/windows
Choix de l'outil de gestion/création de VM
Pour l'instant j'hésite entre virtual Box et qemu, bien que la virtual box me paraît plus accessible pour la création de nouvelle machine. J'ai écarté la VMWare car la version permettant la création d'image est payante.
Maintenant reste à savoir les différences fonctionnelles entre ces outils :
- Gestion de clé USB,
- Intégration dans le bureau hôte (drag'n drop)
- Gestion d'une image de HDD extensible
Pour la création de la distribution en elle-même j'hésite:
- Customiser un live-cd existant : je n'aime pas cela car je vais passer mon temps à enlever le superflu, ou me rendre compte que le paquet recherché n'est pas dispo (j'ai testé dsl)
- Solution à base de Gentoo : http://www.developpez.net/forums/d46...iee-lembarque/. Cela m'oblige à apprendre un nouvel outil de gestion de paquet (et de faire râler mes collègues)
- Solution à base de debootstrap pour ubuntu : http://www.delagoutte.net/18-connais...s-debootstrap/. Cette solution me plait car on part du minimal tout en disposant d'outil pour gérer les dépendances de paquet et je connais la debian. Maintenant il me faudra un temps pour prendre en main l'outil.
- Utiliser cette solution : http://forum.ubuntu-fr.org/viewtopic.php?id=168121 Mais je ne la connais pas du tout et me parait être une solution de customisation de CD. Cependant l'interface parait bien faite.
- Solution a base de LFS : mais la maintenance risque d'être compliquée.
Toute expérience et indication est là bienvenue
Partager