Automatisation avec Jenkins

Partager par email

×

Ce cours permet de maîtriser Jenkins, un outil open-source d’automatisation des processus de développement logiciel, notamment pour la CI/CD (Intégration Continue / Livraison Continue). Les participants apprendront à configurer des jobs, créer des pipelines, intégrer des outils externes et optimiser leurs workflows DevOps.

Code Titre Durée Prix HT
jenkins Automatisation avec Jenkins 3 jours Nous consulter

Objectifs

À la fin de ce cours, les participants seront capables de :

  1. Comprendre les concepts de l’intégration continue (CI) et du déploiement continu (CD).

  2. Installer et configurer Jenkins.

  3. Créer et gérer des pipelines (Scripted et Declarative).

  4. Intégrer Jenkins avec des outils comme Git, Maven, Docker, et Kubernetes.

  5. Automatiser des tests et des déploiements.

  6. Sécuriser et monitorer une instance Jenkins.

Public

  • Développeurs

  • DevOps Engineers

  • Administrateurs systèmes

  • Chef de projets techniques

Pré-requis

  • Connaissance de base en Linux/Windows (ligne de commande).

  • Notions de Git (versioning).

  • Familiarité avec un langage de programmation (Java, Python, etc.).

  • Notions de Docker (optionnel mais recommandé).

Post-Formation

Méthodes

  • Cours magistral (présentation des concepts).

  • Démonstrations (exemples pratiques).

  • Travaux pratiques (TP) (mise en œuvre sur machine).

  • Études de cas (simulation d’un pipeline CI/CD réel).

Programme

Jour 1 : Introduction à Jenkins et Mise en Place

Matin : Fondamentaux de Jenkins

  1. Présentation de l’intégration continue (CI) et de Jenkins

    • Pourquoi Jenkins dans DevOps ?

    • Cas d’utilisation en entreprise

  2. Installation et configuration de Jenkins

    • Prérequis (Java, Docker, etc.)

    • Installation sur Linux/Windows

    • Premier démarrage et configuration initiale

  3. Interface utilisateur de Jenkins

    • Dashboard, gestion des jobs, logs

    • Gestion des utilisateurs et permissions

Après-midi : Création des Premiers Pipelines

  1. Création d’un job Freestyle

    • Build, tests, déploiement simple

  2. Introduction aux pipelines (Scripted vs Declarative)

    • Syntaxe de base, étapes (stages)

  3. Intégration avec Git

    • Connexion à un dépôt GitHub/GitLab

    • Déclenchement automatique (webhooks)


Jour 2 : Pipelines Avancés et Intégrations

Matin : Pipelines Complexes et Bonnes Pratiques

  1. Gestion des environnements (Dev/Test/Prod)

    • Utilisation de variables et credentials

  2. Optimisation des pipelines

    • Parallelisation des étapes

    • Gestion des erreurs (retry, timeout)

  3. Utilisation de Blue Ocean pour la visualisation

Après-midi : Intégration avec les Outils DevOps

  1. Jenkins et Docker

    • Exécution des jobs dans des conteneurs

    • Création d’images Docker via Jenkins

  2. Jenkins et Kubernetes

    • Déploiement sur un cluster K8s

  3. Plugins essentiels (SonarQube, Nexus, Slack, etc.)

Jour 3 : Automatisation Avancée et Projet Pratique

Matin : Sécurité et Scalabilité

  1. Sécurisation de Jenkins

    • RBAC (Role-Based Access Control)

    • Gestion des secrets avec HashiCorp Vault

  2. Scalabilité et performance

    • Agents distants (Jenkins Workers)

    • Répartition de charge

Après-midi : Projet Pratique et Déploiement

  1. Cas réel : Pipeline CI/CD complet

    • Intégration → Tests → Déploiement automatisé

  2. Best Practices et retour d’expérience

  3. Q&A et optimisation des configurations

Environnement

  • Machine avec :

    • Java 11+ (Jenkins est basé sur Java).

    • Docker (pour les exercices avancés).

    • Git (pour l’intégration avec les dépôts).

    • Navigateur web (pour accéder à l’interface Jenkins).

  • Accès Internet (pour installer les plugins).

  • Jenkins pré-installé (ou script d’installation fourni).

Mot-clés

Jenkins, CI/CD, Pipeline, Intégration Continue, Déploiement Continu, Automation, Git, Docker, Kubernetes, DevOps

Commander