Jenkins
Jenkins (anciennement Hudson) est un serveur d'intégration continue permettant d'automatiser les tests, l'audit et déploiement du code réalisé et de restituer des indicateurs qualité sur la production.
Prérequis :
Connaissance du langage Java et notions du cycle de développement.
Public concerné :
- Développeurs.
- Chefs de projet.
Durée :
2 jours (14 heures)
Vous souhaitez des informations complémentaires sur cette formation Contactez-nous !
Course Information
Objectifs pédagogiques
À l'issue de ce stage vous serez capable de :
- Comprendre les principes de l'intégration continue en vue de son implémentation.
- Intégrer Jenkins avec les autres outils (SCM, gestionnaire de tickets...).
- Mettre en place un serveur Jenkins automatisant les builds.
- Automatiser les tests, les audits de code et les déploiements sur la plateforme d'intégration Jenkins.
Contenu pédagogique
Introduction
- 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.
Chapitre 1 : 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
Chapitre 2 : 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
Chapitre 3 : 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'acceptante
- Automatisation des tests de performance avec JMeter
- Optimiser les temps d'exécution des tests
Chapitre 4 : 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
Chapitre 5 : 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