8. 8
Un nombre trop important de JOBS
1 projet =
1 job nightly + 1 job de release
On utilisait différents plugins pour
centraliser la configuration
Et ceci pour … plus de 240 projets
et leurs branches…
Notre héritage
12. 12
Choix de conception
1 projet 1 JOB
Un slave par technologie
La gestion des fichiers de configuration est pilotée par
JENKINS
Développer une librairie
13. 13
Notre Librairie JENKINS
On a choisi de centraliser toute la logique dans une
librairie GROOVY
La librairie est hébergée dans GITHUB
On utilise des « scripted pipelines »
Réalisation de composants par types de projet
14. 14
Ajout manuel dans le nouveau
serveur
Création des JENKINSFILE
Harmonisation de la configuration de
tous les projets
La migration
15. 15
Quelques difficultés
Courbe d'apprentissage
assez forte au début
Le cycle de développement
n'est pas « fluide » ( tests
unitaires, développement dans
l'IDE,...)
Un nouveau langage
( ~GROOVY )
La documentation n'est pas très
explicite. Le fork de repo
GITHUB a été plus efficace par
rapport à nos choix de
conception.
22. 22
Toute la logique est centralisée dans une librairie GROOVY
On est sûr que les applications ont le même workflow de build
Le processus de construction est entièrement codé
Il peut être testé et fiabilisé
Les modifications sont maitrisées
Les apports de JENKINS2