Projet Hudson-Jenkins

De EjnTricks
Révision de 7 septembre 2016 à 23:46 par Etienne (discussion | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

Cet article a été intialisé pour une installation de Hudson. Cependant, l'installation de plugins sous Jenkins est identique.

Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Add-icon.png Création projet

Toutes création de projet s'effectue en cliquant sur le lien Nouvelle tâche dans la partie gauche de l'interface. Tout projet peut être modifié à posteriori. Il suffit de l'ouvrir depuis l'interface et de cliquer sur le lien Configurer sur la partie gauche.

Warning-icon.png Précaution

Aussi étonnant que cela puisse paraître, mais un nom de projet qui contient un espace peut être source de nombreux problèmes. Lors de la mise à jour du plugin SonarQube en version 2.3, il était recommandé d'utiliser une étape post build. Ceci déclenche donc l'exécution d'un nouveau process Maven, mais un avertissement d'erreur est affiché dans la log. Dans cet exemple, l'exécution a été réalisé avec un build dont le nom est CXF Tutorial.

[workspace] $ /var/opt/maven/bin/mvn -f pom.xml -Dsonar.login=etienne -Dsonar.password=****** -Dsonar.host.url=http://www.dev.jouvinio.net/sonar sonar:sonar
channel stopped
/var/opt/maven/bin/mvn: 200: local: Tutorial/workspace: bad variable name

Il semblerait que l'emplacement de l'espace de travail ne soit pas "protégé". Ceci a fait l'objet d'un ticket, https://issues.jenkins-ci.org/browse/JENKINS-30431, et en version 1.638 le ticket a été fermé dans corectif.

La solution proposée est de spécifier un nom technique et un lisible. Ce second est alors utilisé pour l'interface, alors que le premier est conservé pour les opérations techniques, comme la création de l'espace de travail. Ainsi, il faut aller dans la page d'administration du process et d'ouvrir les propriétés avancée en cliquant sur le bouton Avancée.... La valeur du champ Nom du Maven project, pour cet exemple le projet est de type Maven, est modifié pour ne contenir aucun espace. La valeur de Display Name est modifiée avec une valeur lisible.


Cela s'explique par le fait qu'il est utilisé dans le nom de l'espace de travail et différentes variables. Après confirmation, seul le nouveau nom est pris en compte. Il faut retourner sur la configuration afin de changer le nom affiché.

De plus, l'espace de travail n'est plus disponible, puisque son emplacement est modifié en théorie, mais pas dans les différents de fichiers de configuration, comme dans le cas du déplacement d'une instance Jenkins.

L'espace de travail est bien modifié pour cet exemple, passant de /usr/share/tomcat7/.jenkins/jobs/CXF Tutorial à /usr/share/tomcat7/.jenkins/jobs/tutorial_cxf. La modification des fichiers techniques s'effectuent à l'aide de la commande suivante.

#sudo find /usr/share/tomcat7/.jenkins/jobs/tutorial_cxf -name *.xml -exec sed -i 's/CXF Tutorial/tutorial_cxf/g' {} \;

Puis l'instance Jenkins est redémarrée afin de prendre en compte les modifications, consistant à redémarrer Tomcat dans le cadre de cette installation.

Attention, ce remplacement est très intrusif et peut modifier le nom spécifié dans Display Name.


Dans le cas d'un projet existant, la modification du nom nécessite la confirmation de l'utilisateur.


Dans le cadre des version 2.X de Jenkins, l'accès est un peu différente, mais s'effectue toujours dans la configuration du projet. Il faut cliquer sur le bouton Avancée.


Des champs additionnels sont présentés, permettant de spécifier le nom lisible.



Logo-maven.png Logo SVN.png Projet Maven - SVN

Cet exemple décrit la création d'un projet maven. Après avoir spécifié le nom du projet, il faut sélectionner l'option Construire un projet maven2:


Le projet est confirmé en cliquant sur le bouton Ok. Les propriétés de celui ci sont alors affichées. Dans cet exemple, il faut indiquer l'emplacement sur SVN pour récupérer les sources:


Il est recommander de forcer l'update des sources avant exécution de celui ci en cochant la case Utiliser 'svn update'.

Une fois créé, l'utilisateur est redirigé vers la page d'accueil du projet, à partir de laquelle toutes les actions sont disponibles (en fonction des permissions)


Run-icon.png Exécution des Jobs

Plusieurs modes d'exécution des jobs sont disponibles dans Hudson. Ce paragraphe se propose de les résumer

Start-icon.png Manuelle

Dans ce mode, les jobs ne sont exécutés que sur demande de l'utilisateur. Pour cela, il suffit de décocher toutes les options dans la section Ce qui déclenche le build


Scheduled-Tasks-icon.png Lancement

En exécutant manuellement un job, par clique sur le lien Lancer un build. Une info bulle est alors affichée sous le lien pour indiquer le démarrage de celui ci et une nouvelle ligne dans l'historique des builds est ajoutée.


En cliquant sur cette nouvelle ligne, l'utilisateur accède à la description de l'exécution:


Depuis cette interface, il est possible de suivre l'avancement avec une simulation de console Shell. Pour cela il faut cliquer sur le lien Sortie de la console. Il est possible d'accéder à cet affichage en cliquant sur la barre de progression au niveau de la liste de l'historique des Builds.