L’information de build est envoyée lorsque votre serveur CI construit votre application en suivant les instructions décrites dans un job.
L’information de build décrit principalement le nom du build, son numéro, la date, le job et le statut. Lorsqu’il est envoyé à iceScrum, les informations de build doivent être associées à un projet (vous pouvez associer plusieurs jobs à un projet). iceScrum sait que les builds appartiennent au même job en fonction du nom de job fourni.
Le tableau de bord affiche les dernières informations de build pour chaque job associé au projet. Le nom du job est affiché sur la gauche. La couleur du nom du build dépend de l’état de ce dernier. Vous obtiendrez plus d’informations en le survolant.
Dans un projet, les informations de build sont affichées avec une ou plusieurs stories. Les stories sont affichées avec le build si elles incluent une ou plusieurs tâches associées à ce numéro de build.
L’information de build est également montrée dans les vues détaillées de tâche et de stories selon leur association. Contrairement aux informations du tableau de bord qui affichent uniquement la dernière version par job, tous les builds associés sont affichés.
Le plugin d’intégration continue inclut des tâches dans les informations de build si elles se trouvent dans les messages de commit selon ce modèle: T<taskUID>[-<taskEstimation>]. Ce modèle est celui que nous avons défini pour l’intégration SCM. Par conséquent, si vous utilisez déjà cette fonction iceScrum, les builds seront automatiquement associés à vos tâches.
Les sections suivantes décrivent comment configurer l’intégration avec votre serveur CI. À l’heure actuelle Jenkins et Travis CI sont disponibles d’origine. Si vous souhaitez avoir un nouveau plugin développé par notre équipe, contactez-nous. Faites-nous savoir si vous en développez un de votre côté, nous pourrions envisager de le rendre accessible à tous.
La seule configuration à faire sur votre projet iceScrum est d’activer l’App Jenkins.
Seuls les projets « freestyle » sont supportés pour le moment, le support de Jenkins Pipelines n’est pas encore disponible.
Si vous utilisez Jenkins, vous pouvez installer le plugin iceScrum directement à partir du menu Gérer Jenkins> Gérer les Plugins. Vous le trouverez sous l’onglet Disponible (il s’appelle iceScrum plugin). Choisissez Télécharger maintenant et installez après le redémarrage.
Si vous utilisez Hudson, vous devrez installer le plugin manuellement. Téléchargez le dernier fichier icesrum.hpi dans le répertoire $HUDSON_HOME/plugins et redémarrez Hudson.
Une fois votre serveur Jenkins redémarré, vous pouvez configurer la connexion à iceScrum dans le panneau paramètres iceScrum de la configuration de votre job.
Entrez l’URL de votre projet :
$server/p/$project
Si vous utilisez iceScrum Cloud, l’URL sera :
https://cloud.icescrum.com/p/$project
Authentification:
Enfin, ajoutez l’action post-build iceScrum qui enverra vos données de build à votre serveur iceScrum.
Si vous avez plusieurs jobs pour votre projet iceScrum, n’oubliez pas d’ajouter l’action post-build à chacun d’entre eux. Ensuite, le plugin enverra automatiquement les données de build à votre projet iceScrum pour chaque build qui inclut des commits avec le modèle de nomination de tâche iceScrum.
La seule configuration à faire sur votre projet iceScrum est d’activer l’App Travis CI.
Configurer un webhook
Afin de notifier iceScrum sur le statut du build de Travis CI, vous devez ajouter une notification webhook au fichier .travis.yml de votre projet.
language: groovy notifications: webhooks: urls: - https://cloud.icescrum.com/ws/project/PEETIC/build/travis?icescrum-token=dad27aff397bfes32fdab987 on_failure: always on_start: never on_cancel: always on_error: always
L’URL du webhook est construite de cette manière :
$server/ws/project/$project/build/travis?icescrum-token=$access_token
https://cloud.icescrum.com
Voici un example d’URL webhook pour le projet cloud PEETIC :
https://cloud.icescrum.com/ws/project/PEETIC/build/travis?icescrum-token=dad27aff397bfes32fdab987
Pour en savoir plus sur les notifications de webhook consultez la documentation officielle de Travis CI.
Sécurisez votre jeton api :
Le paramètre urls doit être sécurisé car il contient un jeton iceScrum. Travis CI vous permet de crypter les variables dans le fichier .travis.yml de votre projet.
# gem install travis $ cd ~/pathtoproject/myproject $ travis encrypt '$server/ws/project/$project/build/travis?icescrum-token=$access_token'
Insérez ensuite le résultat dans le fichier .travis.yml de votre projet.
Un tiret reste nécessaire devant la déclaration « secure: », car il ne faisait pas partie de la chaîne cryptée.
language: groovy notifications: webhooks: urls: - secure: &quot;i3Lq3diKBsskZL5QAnNMwYhMjG7MkApeFORj1HfZAwbbFynESB4ZpRQuMbMmKuFm61H/hgVaXfSvHxREfJZEKf71Le1jBYYdnsMZolOvi3NFlFZ5NZMOmsGm9csoJbXxvDGbmg8N6+ecaE/D/6tHPBlO1Hjd5WyqfDRMEl7VmsA258rOj7PHzY0ne+kRUgIc0Q5DYxfVoh2oHs6FSJHDLKJJHwUqrLDSy9lJHJyBjJZUHvRtycavXKvWE9r0zqE2TR1amKFa7YXWseppSvjUOkAwgOx6GXcwzX2ror6X8akns26GY46NvdYlVDzWIw9ArgoUKJF6VM/3wn23CgEMUlDy10w3eSR4Tnni107MzkO7wn+Ovy+xJP/wyZnJYmsgSUyGnERvAkjIHsDOkqCtEbDQbsvS4ggyogATBkLRqsRGPZKrrN/6CQX8Stl67AztFT79pb4Iijd0fJIOag3nkF0m5/dEgHHtsKEMgvHf5CF9T7EEJfVhqbQuv072rIc3CXUkkK3+5196EcnZIzRyx20cblEkTbVx+zMtFI8vg7QsSFdR9NEf3p1uwH5RGzdj6FWJ/jQUoM2i9Sv+Z9rRYUQo0rXDld9inJh26BjTvRkzf4ZDjyISAcbKiz2yZBTiCJh9UGyWCXmw8OP+vBhKTBvHnOYdCzkDAbSh1nw=&quot; on_failure: always on_start: never on_cancel: always on_error: always
Pour en savoir plus lisez la documentation Travis CI officielle.
La seule configuration à faire sur votre projet iceScrum est d’activer l’App Visual Studio Team Services CI.
Tout d’abord installez l’extension iceScrum pour Visual Studio Team Services depuis le market place Visual Studio.
Ensuite, ajoutez la tâche notify iceScrum à vos définitions de build existantes. Rendez vous dans le menu Build and Releases, modifiez une définition de build et ajoutez une tâche à une phase. Vous trouverez alors la tâche de build iceScrum en cherchant « iceScrum »ou en parcourant la section Utility.
La tâche notify iceScrum doit être placée à la fin de la dernière phase de build.
Entrez l’URL de votre projet :
$server/p/$project
Si vous utilisez iceScrum Cloud, l’URL sera :
https://cloud.icescrum.com/p/$project
iceScrum utilise désormais des jetons d’API pour l’authentification des web services. Apprenez comment générer un jeton d’API iceScrum.
Le jeton d’accès iceScrum doit être configuré en tant que process variable icescrum.accessToken. Ajoutez la variable et cliquez sur le cadenas pour assurer le stockage sécurisé du jeton.
L’option de contrôle doit être définie pour jouer la tâches even if a previous task has failed, even if the build was canceled. Ceci permet à iceScrum d’afficher aussi les builds annulés ou en échec.
N’oubliez pas de sauvegarder les modifications.