Nous sommes passés de PHPUC à Hudson il y a environ un an et nous avons certainement apprécié. L'un des principaux avantages est la facilité avec laquelle il est possible de créer et d'éditer des projets, car tout se fait via une interface utilisateur Web conviviale, sans aucun problème dans les fichiers de configuration XML. Vous n'avez pas non plus besoin de redémarrer Hudson après avoir modifié les paramètres, donc j'ai trouvé qu'il était plus facile et plus rapide d'itérer sur un projet.
Une autre chose qui m'a vraiment impressionné à propos de Hudson était le nombre de problèmes qu'il peut détecter et signaler pour vous. Par exemple, plus d'une fois avec PHPUC, la construction a cessé de fonctionner de telle sorte que le XML phpunit n'était plus généré, mais le PHPUC a heureusement utilisé les anciens résultats pendant des jours ou des semaines jusqu'à ce que nous réalisions. Hudson a signalé tout de suite que le fichier journal n'avait pas été touché depuis le début de la construction! Lorsque vous configurez des projets dans l'interface Web, il vous indique si les répertoires/emplacements SCM n'existent pas au cours de la saisie et propose des suggestions judicieuses sur ce que vous voulez dire, repérant les problèmes avant même d'avoir sauvegardé la configuration! Aussi, si vous construisez périodiquement avec une entrée cron comme "* 4 * * *", il dira: "avez-vous vraiment pensé à chaque minute de 4, ou voulez-vous dire '0 4 * * *'?" Cela dit, bien que l'écosystème de la communauté et des plugins soit riche, Hudson est aussi plus générique que PHPUC, donc il n'est pas aussi étroitement intégré aux projets PHP, mais peut facilement publier des rapports de couverture et de phpdoc (et tout rapport HTML) via des plugins. De plus, n'oubliez pas que si une solution (PHPUC) n'est pas cassée, il n'est peut-être pas nécessaire de la réparer. Cependant, vous pouvez facilement évaluer Hudson pour les impressions initiales en téléchargeant le fichier .war et en exécutant "java -jar hudson.war", et vous aurez une instance en moins d'une minute.
Dans l'ensemble, je pense qu'il a fait nos constructions et des déploiements plus robustes et reproductibles, attraper plus rapidement les erreurs et accélèrent également de nombreuses tâches (il peut installer des esclaves pour lui-même via SSH et distribuer les tâches ou les exécuter en même temps!)
* (sidenote) * Il y a aussi un pur serveur PHP de CI: http://www.arbitracker.org – Gordon
Jetez un coup d'oeil à ma récente récompense pour une contribution. http://stackoverflow.com/questions/2180460/setting-up-a-deployment-build-ci-cycle-for-php-projects –