Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Presentation Hudson

3,337 views

Published on

Published in: Technology
  • Be the first to comment

Presentation Hudson

  1. 1. Hudson JS Bournival 5 septembre 2007
  2. 2. Mais qui est Hudson? <ul><li>Un logiciel d’intégration continue, tout comme CruiseControl ou encore Apache Continuum </li></ul><ul><li>Hudson est un projet open </li></ul><ul><li>source hébergé sur java.net </li></ul>
  3. 3. … Et que fait Hudson? <ul><li>Supporte les tâches ANT </li></ul><ul><li>Supporte les tâches Maven </li></ul><ul><li>Supporte SVN </li></ul><ul><li>Intégration avec: </li></ul><ul><ul><li>RSS </li></ul></ul><ul><ul><li>E-mail </li></ul></ul><ul><ul><li>IM </li></ul></ul><ul><li>Couvre les tests unitaires (JUnit/TestNG) </li></ul><ul><li>Génère la Javadoc </li></ul>
  4. 4. Ok, maintenant que fait Hudson … de plus? <ul><li>En plus de fournir la plupart des fonctionnalités des autres, Hudson offre, entre autre: </li></ul><ul><ul><li>Interface d’administration plus que conviviale </li></ul></ul><ul><ul><li>Extensible: système de plugins </li></ul></ul><ul><ul><li>Des builds distribués </li></ul></ul>
  5. 5. Que pourrait m’apporter Hudson? <ul><li>Gain en productivité: </li></ul><ul><ul><li>Des développeurs: toujours un build au frais </li></ul></ul><ul><ul><li>Des testeurs: pas besoin de toujours «quêter» un nouveau build </li></ul></ul><ul><ul><li>Des sys admin: la procédure s’exécute automatiquement et averti immédiatement les ressources concernées lors de pépins </li></ul></ul><ul><li>Gain en qualité </li></ul><ul><ul><li>Les éléments de régression sont détectés plus rapidement </li></ul></ul><ul><ul><li>Automatisation des tags dans le SCM: élimine les mauvaises manipulations </li></ul></ul>
  6. 6. Hudson, ça se déploie ou ça s’installe? <ul><li>Se décline simplement en un WAR </li></ul><ul><li>Supporte Java SE 5+ ( Tiger ) </li></ul><ul><li>On le déploie dans un container: </li></ul><ul><ul><li>Glassfish </li></ul></ul><ul><ul><li>Tomcat 5 </li></ul></ul><ul><ul><li>JBoss </li></ul></ul><ul><ul><li>Jetty 6 </li></ul></ul><ul><ul><li>Etc. </li></ul></ul><ul><li>Et on initialise: $HUDSON_HOME </li></ul>
  7. 7. Comment prendre soin d’Hudson? <ul><li>Backup/restore </li></ul><ul><ul><li>Simplement prendre une copie de $HUDSON_HOME </li></ul></ul><ul><li>Sécurité </li></ul><ul><ul><li>S’intègre avec les sécurité du container; sécurité typique JEE </li></ul></ul><ul><li>Ajouter un plugin </li></ul><ul><ul><li>Télécharger le fichier </li></ul></ul><ul><ul><li>L’installer à travers l’interface web </li></ul></ul><ul><ul><li>Ou alternativement le copier dans $HUDSON_HOME/plugins </li></ul></ul>
  8. 8. Justement ces plugins? <ul><li>Clover </li></ul><ul><li>Cobertura </li></ul><ul><li>FindBugs </li></ul><ul><li>Google Calendar </li></ul><ul><li>IRC </li></ul><ul><li>SCP </li></ul><ul><li>Jabber </li></ul><ul><li>JIRA </li></ul><ul><li>Trac </li></ul><ul><li>NAnt </li></ul><ul><li>NUnit </li></ul><ul><li>Et plusieurs autres … la communauté au travail! </li></ul>
  9. 9. Remote Access API <ul><li>Sous la forme de services REST </li></ul><ul><ul><li>JSON </li></ul></ul><ul><ul><li>XML </li></ul></ul><ul><li>Permet de piloter programmatiquement Hudson: </li></ul><ul><ul><li>Effectuer des requêtes </li></ul></ul><ul><ul><ul><li>Ex: last successful build </li></ul></ul></ul><ul><ul><li>Déclencher un nouveau build </li></ul></ul><ul><ul><li>Créer ou copier des jobs </li></ul></ul>
  10. 10. Références <ul><li>La maison de Hudson </li></ul><ul><li>http://hudson.dev.java.net </li></ul><ul><li>JBoss utilise Hudson </li></ul><ul><li>http://weblogs.java.net/blog/kohsuke/archive/2007/08/hudson_adoption.html </li></ul><ul><li>Articles à propos d'Hudson </li></ul><ul><li>http://blogs.sun.com/theaquarium/tags/hudson </li></ul>
  11. 11. <ul><li>Questions? </li></ul><ul><li>[email_address] </li></ul><ul><li>Ext. 2112 </li></ul>

×