1
Introduction à l'intégration continue
- Principes de l'intégration continue.
- Développement agile et intégration continue.
- Prérequis à l'intégration continue.
- Techniques de développement adaptées à l'intégration continue.
- Différents types de tests et d'audit d'une application.
- Cycle de vie du processus de développement.
- Outils annexes et intégration.
Démonstration
Découverte de Jenkins.
2
Mise en place et automatisation du Build
- Mise en place du serveur, les différents types d'installation.
- Configuration : page principale de la configuration, configuration de Git/SVN, serveur de mail.
- Jenkins et le Build, les meilleures pratiques et méthodes recommandées.
- Stratégies et techniques de notification.
- Fixer les dépendances entre les travaux de Build.
- Jenkins et Maven : rappel sur Maven, configuration du Build Maven, déploiement dans un repository Maven.
Exercice
Création et configuration d'un Projet Maven Jenkins basé sur un repo Git.
3
Qualité du code
- Introduction, intégration de la qualité dans le processus de build.
- Outils d'analyse : Checkstyle, FindBugs, CPD/PMD.
- Configuration du rapport qualité avec le plugin Violations.
- Rapport de complexité, sur les tâches ouvertes.
Exercice
Adaptation du projet Jenkins pour inclure les outils d'analyse de qualité de code et suivi de la qualité dans le temps.
4
Automatisation des tests
- Introduction, terminologie du test.
- Automatisation des tests unitaires et d'intégration.
- Configuration des rapports.
- Mesurer la couverture de test.
- Automatisation des tests d'acceptance.
- Automatisation des tests de performance avec JMeter.
- Optimiser les temps d'exécution des tests.
Exercice
Adaptation du projet Jenkins pour inclure JUnit et suivi des tests de performance avec JMeter.
5
Automatisation du déploiement
- Mise en place du script de déploiement.
- Mise à jour des bases de données.
- Tests minimaux. Retour en arrière.
Exercice
Adaptation du projet Jenkins pour automatiser le déploiement de l'artefact construit.
6
Administration d'un serveur Jenkins
- Activation de la sécurité et mise en place simple.
- Différents types de bases 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.