Intégration, Livraison & Déploiement Continus

  • Durée : 2 Jours (14 h)
  • Tarif en présentiel ou en classe à distance : sur demande

Les tarifs indiqués sont valables par personne

A qui s’adresse ce cours ?

Architectes techniques, Développeurs, SysAdmins

Pré-Requis

Niveau intermédiaire en développement web, connaissances de base en administration système

Une connaissance minime des tests automatisés est un plus

Moyens pédagogiques

Alternance de cours magistraux (50%) et de travaux pratiques (50%).

Modalités de suivi et d’évaluation

Questionnaire de pré-évaluation avant le stage

Questionnaire d’évaluation de la satisfaction en fin de stage

Feuille de présence émargée par demi-journée par les stagiaires et le formateur

Attestation de fin de formation

 

Objectifs

A l’issue de cette formation, les participants seront en mesure de :

Connaître les outils et pratiques majeurs du CI/CD

Mettre en place et utiliser Jenkins dans leur travail quotidien

Déroulement du cours

Mettre en place des outils de test et de déploiement automatisés est la meilleure manière d’assurer une qualité constante pour vos applications web. Cela permet de détecter et empêcher les régressions ainsi que d’améliorer l’expérience utilisateur. Combiner un outil de CI/CD avec les bonnes pratiques de Continuous Delivery et de Continuous Deployment vous permettra de mettre à jour vos applications bien plus souvent et bien plus vite.

Cette formation vous donnera des bases solides afin de mettre en place cet outil et les bonnes pratiques associées.

 

I. Introduction et généralités

Règles

Méthodologie

Objectifs

II. Pratiques

Définitions

- Assurance Qualité (QA)

- Intégration Continue (CI)

- Livraison Continue (CD)

- Déploiement Continu

Comparaison

Limites de cas : le workflow de développement d’une librairie

III. Workflow

Modèle de branche

Versioning sémantique

Outil : Git-Flow

IV. Builds

Les objectifs des builds

Les dépendances des builds

- Les dépendances système

- Les dépendances de code

- Outils : Composer / Phing

V. Les Tests

Test d’acceptance

- Définition

- Outil : Behat

Test Unitaire

- Définition

- Outils : SimpleTest, PHPUnit, phpspec, Atoum

Pyramide de Test

Glossaire de la boîte à outil de test

- Fixture

- Stub

- Mock

VI. Déploiement

- Packaging

- Migration de dépendance

- Roll-back

VII. Automatisation

Pipeline de déploiement

 

L’outil de CI/CD qui sera utilisé pendant la formation est GitLab.

 

Nos forces