Un de mes rôles dans mon équipe est la personne de construction . Je suis responsable de la maintenance / mise à jour de nos scripts de construction et de m'assurer que nous construisons «en douceur» sur le serveur d'intégration continue. Cela ne me dérange généralement pas de faire ce travail, même si souvent j'ai l'impression de garder constamment le serveur CI.
Ce travail peut parfois être ennuyeux parce que si la construction se brise, je dois abandonner l'histoire sur laquelle je travaille et enquêter sur l'échec de la construction. Les échecs de build se produisent quotidiennement dans notre équipe. Parfois, les développeurs ne construisent tout simplement pas localement avant de s'engager, les tests échouent donc sur le serveur CI. Dans cette situation, j'aime arriver rapidement à la personne qui a eu le «mauvais commit» afin que le build ne reste pas trop longtemps cassé. Parfois (beaucoup moins fréquemment) une condition étrange existe sur le serveur CI qui doit être déboguée.
Je sais que de nombreuses équipes matures utilisent l'intégration continue, mais il n'y a pas beaucoup d'informations sur les bonnes pratiques.
Mes problèmes indiquent-ils que notre intégration continue n'est pas très mûre ou cela fait-il simplement partie du travail?
Quelles sont les bonnes pratiques à suivre? Quelles sont les caractéristiques d' une intégration continue mature ?
Mise à jour
Au lieu de répondre à certains commentaires, je vais plutôt faire une mise à jour. Nous avons une seule commande simple qui fait exactement ce que le serveur de build fera lors de la construction de l'application. Il compilera, exécutera toutes les unités / l'intégration et quelques tests rapides basés sur l'interface utilisateur.
En lisant les réponses de chacun, on sent que nous pourrions avoir deux problèmes majeurs.
- CI Server ne se plaint pas assez fort quand une construction échoue.
- Les développeurs ne se sentent pas responsables de la responsabilité de chacun de s'assurer que leur engagement se déroule correctement.
Ce qui rend les choses plus difficiles dans mon équipe, c'est que nous avons une grande équipe (plus de 10 développeurs) ET nous avons quelques membres de l'équipe offshore qui s'engagent lorsque nous ne sommes même pas au travail. Parce que l'équipe est grande et que nous avons établi que les petits et fréquents commits sont préférés, nous avons parfois vraiment beaucoup d'activité en une journée.