Formation en Développement: Jenkins, mettre en place l'intégration continue en Java (Adapté DGFIP) - Ascent Formation
Retour aux formations
Développement

Jenkins, mettre en place l'intégration continue en Java (Adapté DGFIP)

2 jour(s)12h

Description

Objectif général de la formation: À l’issue de la formation, les participants seront capables de configurer et d’administrer un environnement de concevoir des pipelines CI/CD pour des applications Java et d’automatiser les étapes de build, de test, d’analyse de code et de déploiement. Ils sauront également superviser, sécuriser et optimiser l’exécution des pipelines. Modalité : Toutes les modalités (présentiel, classe virtuelle et hybride) sont possibles Lieu possible de réalisation : Locaux du bénéficiaire ou locaux d’Ascent Formation, en France métropolitaine et dans les DROM-COM Nombre maximal de participants : 20 Niveau SAME visé : Maîtrise (M) Compétences visées Configurer et administrer Jenkins ainsi que ses principaux composants. Créer et paramétrer différents types de jobs Jenkins. Concevoir des pipelines CI/CD à l’aide d’un Jenkinsfile. Intégrer Jenkins avec Git, des outils de build Java, des outils de tests et des solutions d’analyse de code. Automatiser les étapes de build, de test, de contrôle qualité et de déploiement d’une application Java. Gérer les paramètres, variables d’environnement et secrets utilisés dans les pipelines. Superviser, sécuriser et optimiser les pipelines Jenkins. Diagnostiquer les erreurs d’exécution et mettre en oeuvre des mécanismes de reprise ou de rollback.

Objectifs pédagogiques

  • Expliquer le rôle de Jenkins dans une chaîne d’intégration et de déploiement continus.
  • Identifier l’architecture, les composants et les principaux concepts de Jenkins.
  • Configurer les noeuds, les plugins et les paramètres nécessaires à l’exécution des jobs.
  • Créer, configurer et déclencher des jobs freestyle et des pipelines Jenkins.
  • Écrire et exploiter un Jenkinsfile pour automatiser un workflow CI/CD.
  • Intégrer un dépôt Git et déclencher automatiquement un pipeline à partir d’un événement externe.
  • Intégrer les étapes de compilation, de tests unitaires et d’analyse de la qualité du code dans un pipeline.
  • Mettre en place une Quality Gate et des étapes de validation.
  • Automatiser le déploiement d’une application Java en sécurisant les variables et les secrets.
  • Analyser les journaux d’exécution afin d’identifier et de corriger les erreurs d’un job.
  • Optimiser l’exécution des pipelines grâce au parallélisme et à la réduction des temps de traitement.
  • Mettre en oeuvre les principales mesures de sécurisation, de sauvegarde et de supervision de Jenkins.

Public concerné

Développeurs Java souhaitant automatiser leurs workflows avec Jenkins.
Ingénieurs DevOps et administrateurs système.
Responsables techniques impliqués dans l’intégration continue et le déploiement continu.

Prérequis

Maîtriser les principes généraux de l’intégration continue et du déploiement continu.
Savoir utiliser Git pour cloner un dépôt, créer des commits, gérer des branches et effectuer des opérations de push.
Posséder des connaissances de base en développement Java.
Savoir compiler et exécuter une application Java à l’aide d’un outil de build tel que Maven ou Gradle.
Être à l’aise avec l’utilisation d’un terminal et les commandes courantes d’un système Linux ou Windows.
Connaître les principes de base des tests unitaires et du déploiement d’une application.

Déroulé du programme

1

Jour 1 : Introduction et configuration de Jenkins (6 heures)

6h
2

▪ CI/CD et prise en main de Jenkins (1.5 heures) :

5h
3

Rappels sur les concepts de CI/CD

4

Concepts clés de Jenkins : rôle dans une chaîne d’intégration continue, architecture et composants.

5

Travaux pratiques : Découverte de l’interface de Jenkins et lancement d’un job simple.

6

• Administration de Jenkins (1.5 heures) :

5h
7

Ajout et configuration des noeuds

8

Associer des noeuds aux jobs

9

Installation et gestion des plugins Jenkins (Git, Sonarqube, ...)

10

Travaux pratiques : Ajout de 2 noeuds et attribution à des projets spécifiques

11

• Gestion et lancement des jobs (3 heures) :

3h
12

Les différents types de jobs (freestyle, pipeline, ...) et le rôle du Jenkinsfile

13

Etapes de build et interactions entre jobs

14

Gestion des paramètres et des variables

15

Déclenchement des jobs et gestion des évènements externes

16

Debogage et comprendre la sortie des jobs

17

Travaux pratiques : Déclenchement d'un job via un git push et gestion des paramètres environnementaux

18

Jour 2 : Automatisation avancée et pipelines (6 heures)

6h
19

• Tests automatisés et audits de code (2 heures) :

2h
20

Intégration des tests unitaires au sein du pipeline

21

Utilisation d’outils d’analyse de code et mise en place d’une Quality Gate

22

Automatisation des rapports et mise en place d’étapes de validation

23

Travaux pratiques : Mise en place d'un pipeline intégrant des tests unitaires et une Quality Gate

24

• Déploiement continu avec Jenkins (2 heures) :

2h
25

Automatisation des déploiements applicatifs

26

Gestion des secrets et variables pour les déploiements sécurisés.

27

Démonstration des stratégies de rollback en cas d’échec.

28

Travaux pratiques : Configurer un pipeline Jenkins pour tester et déployer une application Java.

29

• Supervision et optimisation (2 heures) :

2h
30

Suivi des performances des pipelines Jenkins.

31

Optimisation des workflows : parallélisme, réduction des temps d’exécution.

32

Sécurisation et sauvegarde des configurations Jenkins.

33

Travaux pratiques : Superviser et optimiser un pipeline Jenkins complexe.

Informations

Durée

2 jour(s)

12h

Tarif

Sur demande