Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Jenkins2 : le retour ( d'expérience) : TouraineTech 2018

1,587 views

Published on

Retour d'expérience sur la mise en œuvre de JENKINS2

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Jenkins2 : le retour ( d'expérience) : TouraineTech 2018

  1. 1. le retour (d’expérience) JENKINS 2 < Touraine TECH 2018
  2. 2. 2 Architecte Alexandre TOURET JAVA, API, CI, BIG DATA, OPENSOURCE linkedin.com/in/atouret
  3. 3. 3 SOMMAIRE Notre construction d’applications Pourquoi on est passé à JENKINS 2 ? La migration En conclusion, que nous a apporté JENKINS 2 ?
  4. 4. Notre construction d’applications
  5. 5. 5 Création d’applications Extraction des sources Build Déploiement dans un environnement de DEV Analyse qualité Tests Déploiement dans le repository Création de la release Applications JAVA, JS, ESB,...
  6. 6. Pourquoi on est passé à JENKINS 2 ?
  7. 7. 7 Pourquoi on est passé à JENKINS 2 ?
  8. 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
  9. 9. 9 Veille
  10. 10. La Migration
  11. 11. 11 Inventaire des projets
  12. 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. 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. 14 Ajout manuel dans le nouveau serveur Création des JENKINSFILE Harmonisation de la configuration de tous les projets La migration
  15. 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.
  16. 16. 16 Les étapes de construction
  17. 17. 17 Un exemple de fichier Jenkinsfile
  18. 18. 18 La librairie Les composants pour chaque type de projet
  19. 19. 19 Un exemple de stage : le build
  20. 20. 20 La librairie Les classes utilitaires
  21. 21. En conclusion
  22. 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
  23. 23. 23 Quelques liens Jenkins.io (https://jenkins.io/doc/) CloudBeesTV (https://www.youtube.com/user/CloudBeesTV) Repo GITHUB de Fabric8IO https://github.com/fabric8io/fabric8-pipeline-library https://github.com/fabric8io/fabric8-jenkinsfile-library
  24. 24. 24 Merci ! Questions ?

×