Rédigé par Juven Xu
Internet Relay Chat (ou IRC) est une forme populaire de messagerie instantanée, conçue principalement pour la communication de groupes par canaux. Par exemple, Jenkins a un canal sur Freenode de telle façon que les utilisateurs et les développeurs peuvent échanger sur des sujets liés à Jenkins. Vous verrez de nombreux utilisateurs poser des questions et la plupart du temps des utilisateurs plus expérimentés fournir des réponses rapidement.
Comme avec la messagerie instantanée Jabber, vous pouvez configurer Jenkins pour “pousser” des notifications via IRC. Quelques clients IRC tels que xchat supportent une configuration d'alerte de telle manière que lorsqu'un message arrive, il peut faire clignoter l'icône du panneau ou émettre un bip sonore. Pour mettre en place le support IRC dans Jenkins, vous devez d'abord installer le plugin IRC et leplugin Instant Messaging. Allez simplement dans le gestionnaire de plugins par défaut, cochez les cases correspondantes et redémarrez ensuite Jenkins (voir Figure 8.14, “Installation des plugins Jenkins IRC”).
Une fois cela fait, vous devez activer le plugin IRC, et le configurer pour intégrer votre propre environnement. Fondamentalement, cela consiste à fournir le nom d'hôte et le port du serveur IRC que vous utilisez, un canal IRC dédié, et un surnom pour le plugin IRC. Une bonne pratique consiste à mettre en place un canal dédié pour les notifications provenant de l'IC. Ainsi, si les gens bavardent sur d'autres canaux, ils ne seront pas perturbés. Vous pouvez également configurer des détails supplémentaires dans la section Avancé. Tous ces éléments sont disponibles sur la page Configurer le système (voirFigure 8.15, “Configuration avancée des notifications par IRC”).
En plus du nom d'hôte, du port, du canal, et du surnom que nous avons
mentionnés précédemment, vous pouvez également configurer le mot de passe du serveur IRC ou celui du
NickServ si votre environnement les nécessite. Les commandes doivent être préfixées essentiellement de
la même façon que pour Jabber (voir Section 8.7, “Messagerie instantanée”)
si vous souhaitez interagir avec le serveur via des messages IRC.
Enfin, vous voudrez peut-être configurer le plugin IRC pour utiliser la commande
/notice
en lieu et place de la commande par défaut
/msg
.
/notice
est identique à
/msg
excepté que le message sera encadré de
tirets, ce qui évitera une réponse de la plupart des robots.
Une fois que la configuration globale est prête, vous pouvez activer la notification par IRC pour chaque tâche de build et mettre en place une stratégie de notification. Ouvrez la page de configuration de tâche de build, allez à la section Actions à la suite du build et cliquez sur l'option IRC Notification. Si vous souhaitez configurer une stratégie de notification plutôt que d'utiliser celle par défaut, cliquez sur le bouton "Avancé..." (voirFigure 8.16, “Configuration avancée de notifications par IRC pour une tâche de build”).
Les stratégies de notification (quand et à qui envoyer des messages de notification) sont décrites dans Section 8.7, “Messagerie instantanée”. Le plugin Jabber ainsi que le plugin IRC dépendent du plugin Instant Messaging. Ils partagent donc un certain nombre de caractéristiques fondamentales communes. Certaines options sont toutefois spécifiques à l'extension IRC. Par exemple, vous pouvez définir un canal personnalisé si vous n'aimez pas la valeur globale par défaut. De plus, pour un message de notification envoyé à un canal, vous pouvez choisir les informations à transmettre dans les messages de notification. Vos options ici sont le résumé du build, les changements effectués via le système de gestion de version, et les tests échoués.
Une fois que vous enregistrez la configuration, tout est prêt. Basé sur ce que vous avez configuré, ce plugin va rejoindre les canaux IRC appropriés et envoyer des messages de notification pour les tâches de build.
Par exemple, dans Figure 8.17, “Messages de notification par IRC en action”, le plugin IRC rejoint le canal #ci-book sur freenode. Tout d'abord, l'utilisateur juven a committé quelques changements avec le message "feature x added" et le plugin IRC notifie tous les connectés au canal que le build a été un succès. Ensuite, juven committe un autre changement pour la fonctionnalité y, mais cette fois le build a échoué. John a remarqué et corrigé l'erreur de build. Le plugin IRC déclare maintenant "Yippie, build fixed!" Notez que certaines lignes de cet écran sont soulignées, c'est parce que je me suis connecté en tant qu'utilisateur "juven" et j'ai configuré mon client IRC XChat pour mettre en évidence les messages contenant mon surnom.