Jenkins
Jenkins
Jenkins
checkout
deploy
Principe
Un dépôt pour le code (ex : GIT)
Les développeurs font des commits/push
Le serveur IC se déclenche
par détection des modifications
ou à intervalles réguliers
ou manuellement
Le serveur IC effectue
La construction
les tests
le reporting
le deploiement
peut envoyer des mails
Quelqu’un (les développeurs, le chef de projet, …) vérifie le reporting
Technologies existantes
Jenkins (ex Hudson)
Apache Continuum
Team Foundation Server (microsoft)
Tinderbox (Mozilla)
Historique
Hudson
2008
Développé principalement par Kohsuke Kawaguchi
(Sun)
Oracle rachète Sun et veut faire payer pour Hudson
Jenkins
2011 Fork de Hudson (après dispute avec Oracle)
Jenkins
Serveur d’intégration continu
Permet de construire les distributions de façon continu
Régulièrement
Ou après chaque modification du code
Ecrit en Java
Licence MIT
Free software
Installation
Prérequis
Installer les soft suivants (facultatif, mais préférable)
Maven
gradle
Git
Télécharger
jenkins.war
Exécuter
java -jar jenkins.war
Ouvrir la page localhost:8080
Page d’acceuil
Ajouter des plugins
Administrer Jenkins -> Gestion des plugins
Pour git:
choisir ‘git plugin’
Configurer
Installer le plugin pour git
Voir
http://niteshgoyal1302.wordpress.com/2014/04/02/conti
nuous-integration-with-jenkins-a-beginners-guide/
et
http://www.vogella.com/tutorials/Jenkins/article.html
Paramétrage
Administrer Jenkins -> Configurer le système
Spécifier les programmes utilisé par Jenkins:
JDK, Gradle, Maven, GIT
Sécuriser Jenkins
Vous pouvez limiter l’accès à Jenkins aux utilisateurs enregistrés
Administrer Jenkins -> Configurer la sécurité globale
Attention !
Exécution de script = possibilité de hacker la machine !
Créer un job
Administrer Jenkins -> Nouveau Item
Paramétrer un job
Paramétrer un job
Choisir un type de dépôt
Dépôt git
Acces par ssh ou https
ssh: ssh://[email protected]/user/depotname.git
https: https://github.com/user/depotname.git
Choisir les credentials adéquat
voir après
Planification des builds
Ajouter des étapes
Spécifier le build
Si Maven
Spécifier où est le pom.xml
Informer des résultats
Credentials
Choisir le type
SSH Username
Enter Directly private key est plus simple à mettre en
oeuvre
Vue d’ensemble de tous les projets
Tendance des projets
Détails d’un projet
Détails d’un build
Logs d’un build
Résultats des tests
Webographie
Jenkins
http://jenkins-ci.org/
http://en.wikipedia.org/wiki/Jenkins_%28software%29
Tutoriel (fr)
http://linsolas.developpez.com/articles/hudson/
Tutoriel (en)
http://niteshgoyal1302.wordpress.com/2014/04/02/conti
nuous-integration-with-jenkins-a-beginners-guide/
http://www.vogella.com/tutorials/Jenkins/article.html
Définitions
http://fr.wikipedia.org/wiki/Int%C3%A9gration_contin
ue
Atelier
atelier jenkins.pdf