L'intégration Continue

Types de builds

Le build est vraiment l'un des mots les plus importants. Il est au coeur du concept d'intégration continue. Il existe de multiples sortes de builds, c'est pour cette raison que je vais les détailler ci-dessous. Tout d'abord, je vais en donner une définition.

Définition

Le build n'est pas qu'une simple compilation comme on pourrait souvent le croire. C'est cette erreur qui fait que l'on ne comprend pas bien l'intérêt de ce concept. Il n'y a pas de définition précise mais on retrouve généralement ces différentes étapes :


Il y a donc plusieurs types de builds. Le schéma ci-dessous les illustrent avec leur fréquence. On peut voir que plus le build est gros moins il est fréquent. C'est vraiment la philosophie de l'intégration continue, il ne faut pas faire perdre de temps aux développeurs. Le but est de se rendre compte des erreurs rapidement donc tout ce qui est build rapide sont fait le plus souvent possible et pour les builds plus poussés, on les effectue moins souvent.

Types de builds

Builds privés

Le build privé désigne le build du développeur ou build local qui de l'ordre d'une dizaine par jour. Ce build sert à se rendre compte rapidement si les changements que l'on a effectué marchent. L'intérêt de ce type de build est qu'il est autonome, s'il rate on est le seul à le savoir et on sait que le problème vient de nous. De plus le gros avantage de ce build est que ce que l'on va commiter après sur le gestionnaire de sources est du code que l'on a testé en local donc moins enclin aux erreurs.

Build d'intégration de jour

Le build d'intégration de jour est effectué par le serveur d'intégration continue. Ce build est réalisé plusieurs fois par jour et de manière automatique. Il sert à vérifier que les changements de tout le monde marchent. Tous les jours, à chaque commit des développeurs ou à intervalles réguliers, les projets sont compilés, testés, déployés et les résultats sont générés.

Build d'intégration de nuit

Le build d'intégration de nuit est lui aussi effectué par le serveur d'intégration continue mais qu'une fois par jour. Il sert à vérifier que le produit marche. Ce build est plus complet que le précédent, tous les tests sont réalisés. Par exemple, les tests de performance qui sont ignorés lors des builds de jour. Les builds d'intégration de jour sont plus lights que ceux de nuit pour éviter un temps d'attente trop long pour les développeurs.

Conseils pour les builds d'intégration

Il faut garder en tête que les builds de jour ne doivent pas excé 10 à 15 minutes. Pour les builds de nuit, la durée importe moins mais il faut éviter que cela dépasse une heure.