Formation intégration continue avec Git, Maven, Jenkins, Nexus , Sonar

Présentation de la formation ’Intégration continue Objis’

JPG - 18.2 ko

Mettez en oeuvre les maillons d’une chaîne d’Intégration continue avec Git (gestion des sources), Maven (build), Nexus (gestion livrables), Jenkins (serveur d’intégration continue) et Sonar (qualité logicielle). Maîtrisez l’intégration entre ces différents outils. Augmentez significativemlent la productivité de vos équipes de développement.

Bénéficiez des qualités distribuées de Git pour la gestion du code source. Automatisez vos builds et déploiements. Générez des rapports qualitatifs. Auditez le code source. Ajoutez de la robustesse avec vos test unitaires. Avancez avec assurance jour après jour.

Rythme : 70% de travaux pratiques dans le même esprit que nos tutoriels en libre accès.

Tarif (Euros HT) Audience Pratique Financement Contact Inscription
Inter : 2950
Intra : Nous contacter
Développeurs JAVA
70% Opportunités
financement
07 63 03 11 08 Bulletin inscription

Planning des cours

Mois Janv Fév Mars Avril Mai Juin Juillet Aout Sept Oct Nov Déc
Lieu
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
PARIS
Dates (5j)



17-21

19-23


18-22
23-27
20-24
11 - 15

Logiciels utilisés

- Brique ’Gestionnaire de source’ : Git 2.7 , GitBlit 1.7
- Brique ’Construction’ : Maven 3.3.9 + Junit 4.4 + TestNG 6.8 + Selenium Server 2 + Jacoco 0.7
- Brique ’Gestion des livrables’ : Nexus 2.10
- Brique ’Serveur Integration Continue’ : Jenkins 1.584
- Brique ’Métriques’ : SonarQube 4.5 + Sonar Runner 2.4 + Chekstyle 5.9 + PMD 5.0 + Findbugs 3.0
- Brique ’Gestion Bugs’ : Mantis 1.2.17

PNG - 156 ko
formation-integration-continue-usine-logicielle-objis-maillons

Vous allez apprendre à :

- Maîtriser les 7 phases de mise en oeuvre d’une intégration continue
- Maîtriser les maillons d’une chaîne d’intégration continue
- Automatiser la construction de vos applications
- Tester vos applications en continue
- Mettre en place un tableau de bord de vos intégrations
- Générer des rapports liés à l’activité de développement
- Valider le respect des normes de développement par les développeurs
- Déclencher des alertes et notifications
- Prévenir les bugs et la régression de vos applications
- Automatiser la création de vos livrables
- Comprendre l’acceptance en continue
- Comprendre le déploiement en continue

Programme détaillé

Introduction

- Comprendre la notion de Chaîne d’intégration continue
- les 7 étapes de mise en oeuvre intégration continue
- Role du serveur d’Intégration continue
- La place des tests unitaires / intégration
- L’acceptance en continue
- Le déploiement en continue
- Intégration continue et Agilité
- Robustesse, Maintenabilité

Maven pour de développeur
- définition
- conventions
- Coordonnées
- POM
- Installation
- sections de pom.xml
- Création Projet maven
- plugin, goal, Mojo
- Phases maven
- dépendances
- Repository local, distant
- plugin help
- plugin m2eclipse
- plugin checkstyle
- plugin sonar

Maven pour le chef de projet
- projet multi-modules
- héritage, composition
- génération rapports
- site internet du projet : plugin site
- Gestion de conflits
- Optimisations pom.xml
- dependencyManagement
- pluginManagement
- Repository Manager
- plugin release,
- Snapshot

Gestion sources avec Git

- Décentralisé !
- Créer un dépôt local
- Ajout et versioning de fichiers
- Supprimer, déplacer et renommer des fichiers
- Analyser l’historique des révisions
- Obtenir des informations sur l’état de la copie de travail
- Ignorer des fichiers
- Créer et gérer des branches
- merge : gérer les conflits
- Push, pull, fetch
- Comprendre rebase, reset
- Débugger avec bisect
- Gestions dépots avec GitBlit
- Gestions dépots avec GitLab
- Workflows Git

Automatiser les tests

- Tests unitaires avec JUnit
- Tests unitaires avec Mockito
- Tests unitaires avec TestNG
- Automatiser tests unitaires
- Automatiser tests d’intégration
- Intégration de tests Selenium WebDriver
- Phase de test et ’integation-test’
- ’pre-integation-test’ et ’post-interation-test’’
- Ignorer les tests
- Couverture de code
- Automatiser tests d’acceptance
- Automatiser tests de performance avec Gatling
- Résoudre les problèmes de lenteur des tests
- BDD avec concordion

Qualité du code

- La qualité de code dans le processus de build
- Plugins Maven : javadoc, Checkstyle, JXR, Changelog, FindBugs, PMD,
- Rapport sur la complexité du code : Cobertura, JaCoco
- Rapport sur les taches ouvertes (FIXME, TODO, )
- Installation sonar
- Intégration avec l’outil Sonar
- Intégration avec outil gestion bugs

Nexus

- Définition et valeur ajouté d’un >Repository d’entreprise
- offre du marché
- Installation Nexus
- Role Proxy
- Role pour bande passante
- gestion des livraisons releases / snapshot
- Intégration Maven / Nexus
- balise mirror et server dans settings.xml
- balise distributionManagement dans pom.xml

Jenkins
- Valeur ajoutée d’un serveur IC
- offre du marché
- Préparer l’environnement système
- Installation Jenkins
- Configuration JDK et Maven
- Création premier Job
- Lancement premier Job
- Actions pre-build
- Actions post-build
- Rapport Javadoc
- Rapport couverture de code
- Configurer les rapports de test dans Jenkins
- Afficher les résultats de test dans Jenkins
- Intégration avec Sonar
- Tableau de bord de la configuration Jenkins
- Configuration Variables d’environnement Système
- Configuration Propriétés globales
- Configuration outils de build : Maven, Ant, Shell
- Configuration gestionnaire de source (Subversion, cvs)
- Mémoire necessaire
- répertoire USER_HOME/.jenkins
- Backup données Jenkins
- Upgrade Jenkins
- Lancement de build MAven
- Voir les résultats d’un job

Sonar
- Les 7 axes de Qualité logicielle
- Installation par défaut (base h2)
- Intégration avec MySQL
- Analyse de code via Sonar Runner
- Analyse de code via Maven
- Analyse de code via Ant
- Analyse de code via plugin Eclipse
- Analyse de bugs Potentiels
- Respects des règles de codage
- Analyse résultats de Tests
- Analyse Duplications de code
- Analyse des Commentaires
- Analyse de l’Architecture et design
- Analyse de la Complexité du code
- Paramétrage de règles spécifiques
- Profils de règle