Usine Logicielle

Formation inter-entreprise

À qui s'adresse la formation?

Administrateurs systèmes - DevOps - Développeurs confirmés

Durée

5,00 jour(s)

Langues(s) de prestation

EN FR

Prochaine session

Prérequis

Notions d'administration systèmes

Objectifs

Comprendre les principes DevOps - Mettre en place une solution de configuration logicielle basée sur Git - Gérer les versions des projets du dépôt de données - Mettre en œuvre et exploiter un serveur d'intégration continue - Gérer les interconnexions avec un système de build et de tests.

Contenu

Introduction à DevOps

Principes DevOps
Valeurs DevOps: Culture, Automatisation, Lean, Mesure,
Partage
Culture DevOps: présentation, caractéristiques, mise en place
Intégration et déploiement continues
Panorama des outils DevOps.

Présentation de GIT

Gestion de configuration logicielle (GCL): présentation, positionnement, outils
Terminologie GCL: Branch, Tag, Checkout, Commit, Merge,...
Git: fonctionnalités, composants
Git vs SubVersioN

Configuration de Git: préférences, authentification
Editeur de code et outil d'analyse

Atelier: Installation d'un client Git - Création d'un dépôt de données

Exploitation du repository

Import de sources du projet
Récupération d'une copie locale
Création de branches
Commit de modifications et gestion des conflits
La création d'une branche
Gestion des métadonnées, historique
Création de Tags dans Git

Atelier: Mise en place de projets sur le repository - Récupération d'une copie locale et multiples opérations de propogations de modifications avec gestion des conflits

Administration de Git

Gestionnaire
Git disponibles: gitweb, git-gui,...
Git distibué
Le service web GitHub
Gestion des utilisateurs
Import et export de repositories
Sécurité du dépôt et des échanges (SSL)
Sauvegarde et restauration

Atelier: Multiples tâches d'administration

Tâches avancées

Organisation de la gestion de versions
Git dans un système d'intégration continue
Gestion des logs
Statistiques du dépôt

Atelier: Git dans un système d'intégration continue (Hudson), gestion des logs et génération de statistiques (tableaux, graphiques)

Comprendre l'intégration continue

Processus de développement, tests unitaires / d'intégration
Intégration continue: présentation, positionnement dans une démarche agile
Gestion des environnements: développement, recette, production
Outils de conteneurs applicatifs (Docker)
Configurations système et applicative et outils de centralisation (Puppet, Ansible) Industrialisation des déploiements.
Panorama outils de gestion: versionnement, build, tests, qualité
Présentation d'outils d'intégration continue: Jenkins, GitLab-CI, Bamboo,... Types d'installation

Atelier: Mise en place d'un outil d'intégration continue, tour d'horizon de l'interface Gérer des builds

Structure d'un build de projets: steps ou pipeline
Mise en place de builds: automatiques / manuels
Plugins pour la gestion des dépôts de source: Git, TFS, SVN,... Outils de build: Maven,
Ant, Gradle,...
Organisation des branches et des tags
Gestion des dépendances et dépôts
Intégration des dépôts avec les outils de build
Gestion des notifications

Atelier: Interfaçage avec des dépôts de dépendances - Configuration et lancement de builds

Contrôler la qualité du code

Présentation, gestion de la qualité du code
Panorama des outils:
Checkstyle, FindBugs,...
Rapport de qualité: configuration, plugins (Violations)
Autres rapports: complexité, tâches,...
Atelier: Intégration d'outils de gestion de qualité du code (SonarQube) dans une démarche d'intégration continue

Automatiser les tests

Types de tests
Automatisation, couverture
Tests unitaires et d'intégration
Tests d'acceptance, tests de performances
Optimisation des tests

Atelier: Multiples scénarios d'automatisation de tests unitaires, d'intégration, de performances

Mettre en place une stratégie de déploiement

Stratégie globale d'automatisation Scripts de déploiement et de mise à jour
Rollbacks

Atelier: Construction de scripts de déploiement Administrer les outils

Sécurité du serveur d'intégration continue
Gestion des utilisateurs: bases, rôles, autorisations Gestion des journaux
Espace mémoire/charge CPU, espace disque Monitoring

Atelier: Multiples tâches d'administration du serveur

Méthodes pédagogiques

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

Évaluation

Contrôle continu

Certificat, diplôme

Attestation de fin de stage mentionnant le résultat des acquis

Contact pour cette formation

Dawan - Service commercial

Ces formations pourraient vous intéresser

EN
Journée
Informatique et systèmes d'information - Système exploitation informatique - Windows
EN
Journée
Sur demande
Informatique et systèmes d'information - Analyse programmation - Programmation - Programmation orientée objet
EN
Journée
Informatique et systèmes d'information - Analyse programmation - Programmation - Programmation orientée objet