img

Jenkins : intégration continue

Jenkins est un serveur Open Source d'intégration continue permettant d'automatiser les tâches de build, tests, déploiement, production de release. Sans aucune intervention, les travaux validés dans l'outil de gestion de configuration (Git, SVN ou autres) sont automatiquement testés, audités et déployés sur les plateformes d'intégration ou même de production. En temps réel, l’é...

Bookmark 1 Intervenant 9 Inscrits

Objectifs

  • Objectif opérationnel :
  • Savoir installer, configurer et dimensionner un serveur Jenkins.

Objectifs pédagogiques

  • Concrètement, à l'issue de cette formation Jenkins, vous aurez acquis les connaissances et compétences nécessaires pour :
  • Comprendre les principes et les bénéfices de l’intégration continue
  • Savoir installer, configurer et dimensionner un serveur Jenkins
  • Être capable d’intégrer Jenkins avec d'autres outils (SCMs, Sonar, Nexus, Gestionnaire de tickets, Docker)
  • Savoir définir des pipelines d’intégration ou de déploiement continue via l’interface Jenkins et via des scripts Pipelines
  • Comprendre comment exploiter un serveur Jenkins
  • Savoir utiliser l’API Rest et la CLI de Jenkins pour automatiser les builds
  • Savoir automatiser les tests et les audits de code
  • Être capable d’automatiser et de déployer Jenkins sur un projet
  • À qui s'adresse cette formation ?

Public concerné

  • Ce cours Jenkins s’adresse à des développeurs, architectes et ingénieurs désireux de mettre en place un environnement d’intégration et de déploiement continus pour leurs projets.

Prérequis

  • Les participants possèdent nécessairement des notions du système et du cycle de développement d’un logiciel. Une expérience collaborative de développement (idéalement en Java) est recommandée pour avoir une bonne vision d’ensemble des différents rôles et implications des acteurs du projet. Si elle est éloignée du développement, cette participation en équipe à un projet doit au moins s’être inscrite dans une démarche agile.

Programme de la formation

Jour 1

Introduction à l’intégration et au déploiement continus (Concepts Clés)

  • Les méthodes agiles et la transition DevOps
  • Cycle de vie du code jusqu’à la production
  • Intégration, Livraison, déploiement continus
  • Le rôle du SCM, utilisation des branches
  • Typologies des tests et des analyses statiques, positionnement dans les pipelines CI/CD
  • Automatisation des déploiement : Problématique de provisionnement et outils d’IaaC
  • Déployer Jenkins dans un projet

Mise en place du serveur Jenkins (Jenkins usage CJE)

  • L'offre Jenkins/Hudson. Notion de job, de workspace, graphes de tendance
  • L’interface Web
  • Mise en place du serveur, les différents types d'installation
  • Structure du JENKINS_HOME
  • Configuration générale, configuration des outils,
  • Les plugins Jenkins, configuration, documentation

Travaux pratiques

Installation de Jenkins en service, Configuration Git, Java, Maven. Mise en place de build Maven

Intégration Jenkins (Jenkins usage CJE)

  • Intégration SCM et WebHooks
  • Intégration avec les outils de gestion de tickets
  • Intégration Outils de Test (unitaires, intégration, fonctionnel, performance)
  • Intégration de la qualité avec SonarQube, intégrer les rapports des audits qualité
  • Intégration Repository d’artefact, Registres Docker
  • Notification de l’équipe, les différentes solutions

Travaux pratiques

  • Intégrations avec dépôt Gitlab, avec Jira, publication des rapports de tests et d’analyse Sonar, intégration Nexus

Jour 2

Architecture Maître Esclave (Best Practices CJE)

  • Architecture maître esclave, les différents types d’agents
  • Provisionnement des agents et pré-installation d’outil, classification par labels
  • Agent sur le cloud, agents Docker
  • Dimensionnement des nœuds maîtres et des agents
  • Architecture HA avec CloudBees Enterprise

Travaux pratiques

Mise en place d’agent SSH, Windows et JNLP, Utilisation d’agent docker

Les Pipelines (Building Continuous Delivery Pipelines CJE)

  • Concepts de pipeline, phases et promotions
  • Relation amont/aval entre jobs, Passage de paramètres, Copy d’artefacts
  • Plugins de synchronisation de jobs, Join Plugin, Dependency Plugin, Pipeline View
  • Le plugin Pipeline, Le système d’aide intégré, la documentation
  • Distinction de 2 syntaxes disponibles, Rappels sur Groovy
  • Syntaxe déclarative, les différentes directives
  • Construction pour la syntaxe script
  • Utilisation de Docker
  • Les librairies partagées

Travaux pratiques

  • Plusieurs travaux pratiques progressifs ayant pour but de mettre en place un pipeline typique de livraison continue sur une infrastructure docker incluant les phases de compilation, test, métriques qualités, déploiement en intégration et approbation manuelle

Exploitation d'un serveur Jenkins (Jenkins Usage CJE)

  • Activation de la sécurité, alternatives pour la gestion des utilisateurs
  • Gestion des autorisations et des rôles
  • Journalisation des actions utilisateur
  • Gestion de l'espace disque Monitoring de la charge CPU
  • Sauvegarde de la configuration
  • Automatisation des tâches avec CLI ou l’API Rest

Travaux pratiques

Mise en place de la sécurité, sauvegarde et restauration

Projet final

Jenkins est un serveur Open Source d'intégration continue permettant d'automatiser les tâches de build, tests, déploiement, production de release. Sans aucune intervention, les travaux validés dans l'outil de gestion de configuration (Git, SVN ou autres) sont automatiquement testés, audités et déployés sur les plateformes d'intégration ou même de production. En temps réel, l’équipe agile étendue peut alors visualiser toutes les métriques du projet pour chaque branche et commit (résultats des tests, qualité de code, etc.). La productivité globale de l'équipe s’en montre fortement accrue. Le serveur d’intégration continue, tel que Jenkins, est une brique essentielle de l’approche DevOps et du développement agile.

Nous couvrirons les cours suivants:

-.-

Sur 5.0

5stars
(90%)
4stars
(65%)
3stars
(49%)
2stars
(25%)
1stars
(15%)

Formations Recommandées

Mot Clés

Recherche

Nos Formateurs

Newsletter

Abonnez-vous pour plus informations.