URL: https://linuxfr.org/news/cean-20 Title: CEAN 2.0 Authors: Nÿco Christophe ROMAIN, claudex, Florent Zara, tuiu pol et NeoX Date: 2012年01月09日T11:21:18+01:00 License: CC By-SA Tags: erlang et dev Score: 20 CEAN est l'acronyme de Comprehensive Erlang Archive Network, en d'autres termes l'alter ego pour le langage [Erlang](http://fr.wikipedia.org/wiki/Erlang_%28langage%29) de CPAN (Comprehensive Perl Archive Network) pour le langage [Perl](http://fr.wikipedia.org/wiki/Perl_%28langage%29). Le dépôt centralisé propose également des installateurs d'une version minimaliste du langage. Après trois ans d'un apparent long silence, c'est la version 2.0 que Christophe Romain publie. Plus que l'installation de binaires avec les dépendances, CEAN 2.0 fournit un _framework_ de développement, construction (_build_), et paquetage (_packaging_). Il repose sur zsh, ce qui le rend compatible sur tous les systèmes POSIX. CEAN 2.0 est disponible : * Sous forme d'archive et d'installateur, * Pour Erlang R12B-5, R13B04, R14B04, et R15B, * Pour de multiples OS et architectures : Linux (ARMv5 et v7, Hitachi SH4, Intel 32 et 64 bits, MIPS, MIPSEL, PowerPC, SPARC 32 et 64 bits), Mac OS X (Intel 32 et 64 bits), NetBSD (Intel 32 bits), et Windows. Quelques détails et une petite interview de Christophe Romain en seconde partie de cet article. ---- [CEAN](http://cean.process-one.net/) [Téléchargements](http://cean.process-one.net/downloads/) [Documentation](http://cean.process-one.net/doc/) [Forum](http://www.process-one.net/en/forum/viewforum/7) [Gestion de projet](https://support.process-one.net/browse/CEAN) ---- Les fonctionnalités de CEAN 2.0 sont, entre autres : * Commandes shell Unix et Erlang * Le framework de construction et paquetage est opensource, sous licence GPL * Possibilité de générer des paquets et installateurs indépendants * Fonctionne en environnement cluster : il est possible de synchroniser l'installation de Erlang/CEAN sur plusieurs hôtes en une seule commande * Possibilité d'avoir autant de versions de Erlang installées que vous voulez sur la même machine * Générateur de dépendances de paquets amélioré Petite interview de Christophe Romain... **Pourquoi tant de temps depuis la dernière version ?** La précédente version s'appuyait sur un ensemble de scripts anciens, qui ont été modifiés et enrichis pendant plus de 6 ans, et dont le but initial n'était pas la génération d'un tel dépôt de paquets binaire. Ces scripts étaient compliqués, et exigeaient plusieurs heures de travail à chaque nouvelle version d'Erlang. Je ne disposais plus du temps nécessaire pour le maintenir. Ainsi, je me suis lancé au printemps 2010 dans une réécriture totale des scripts CEAN, en commençant par la définition d'un framework extensible, simple et robuste. Ce framework, écris en ZSH, a ensuite été validé tout au long de l'année 2011. Cela représente environ 1500 lignes de ZSH, un mois de spécification, autant d'écriture, et plusieurs mois de tests/validation en tâche de fond. **Y a-t-il une roadmap ?** Non. Je travaille sur ce produit ponctuellement seulement. Néanmoins, l'objectif est d'être à présent très réactif aux sorties des versions Erlang. Donc même si le framework avance doucement, les dépôts binaires devraient quant à eux être régulièrement à jour. L'outil de [gestion de projet](http://linuxfr.org/redirect/74655) et le [code](https://github.com/cromain/cean) sont disponibles, l'appel à contributions est lancé ! La roadmap éventuelle sera définie selon l'usage, les retours et les contributions. **Pourquoi avoir choisi le modèle CPAN ? Pourquoi pas un paquetage deb ou rpm (ou autre) ? Quelles sont les différences ?** Il y a eu de longues discussions à ce sujet, et ce depuis 2005. Maintenir un ensemble de paquets est déjà une tâche lourde. Erlang fonctionne sous Linux comme sous Windows, et nous devions proposer un accès simple quelque soit le système hôte. C'est pour cette raison que nous avons pris le modèle CPAN, qui a fait ses preuves. Ce système fonctionne dès que vous avez une machine virtuelle Erlang entre les mains, et sans les droits administrateurs, ce qui est majoritairement le cas. Néanmoins, il reste peu à faire pour générer dynamiquement des paquets .deb et .rpm à partir du dépôt CEAN. Si certains sont intéressés, qu'ils se fassent connaitre et nous pourrons avancer sur ce point. **Vous servez-vous de CEAN pour les livraisons de ejabberd ?** Oui, [ProcessOne](http://www.process-one.net) utilise sur CEAN pour générer des installateurs ejabberd.