Description
Objectif de formation : L'apprenant aura les compétences pour conduire l'ensemble des étapes d'un projet DevOps sous GitLab CI, de la configuration du projet à l'intégration d'outils de test.
Objectifs pédagogiques
- Paramétrer et organiser efficacement un projet dans GitLab
- Mettre en place des workflows de collaboration adaptés (GitFlow, GitLab Flow)
- Concevoir et déboguer des pipelines CI/CD robustes en YAML
- Automatiser les tests unitaires, fonctionnels, de qualité et de sécurité
- Gérer les artefacts, packages et registries Docker dans GitLab
- Déployer des applications vers des environnements cloud via Kubernetes
- Sécuriser les pipelines et gérer les secrets dans GitLab CI
- Superviser les déploiements et intégrer des métriques de performance
Public concerné
Développpeurs
Chefs de projets
Architectes
Reviewers
Administrateurs
Prérequis
Bonne maîtrise des commandes Git (pull, push, commit, merge…)
Expérience pratique dans un environnement de développement collaboratif
Connaissances de base en YAML et en conteneurisation (Docker)
Déroulé du programme
1
Rappels essentiels sur Git (1h)
1h
- Fonctionnement décentralisé vs centralisé
- Rappels des principales commandes
- Travaux pratiques : résolution de conflits, rebase vs merge
2
Présentation de GitLab & environnement de travail (2h)
2h
- Historique, architecture et rôles
- Installation locale (optionnelle) et interface Web
- Création de projet, paramètres de dépôt, gestion des accès
- TP : création d’un dépôt, configuration client GitLab
3
Organisation d’un projet GitLab (2h)
2h
- README.md, Wiki, Snippets
- Branches, tags, historique
- Paramétrage des droits
- Travaux pratiques : configuration d’un projet, exploration des rôles
4
Workflows de collaboration (2,5h)
5h
- GitFlow vs GitLab Flow : avantages/inconvénients
- Gestion des issues et milestones
- Merge request, politiques de validation
- Branches protégées, notifications
- Travaux pratiques : cycle collaboratif de développement d’une release
5
Architecture CI/CD avec GitLab (3h)
3h
- Concepts de pipelines, jobs, stages, runners
- Structure d’un fichier .gitlab-ci.yml
- Runners partagés, spécifiques, Docker-in-Docker
- Variables, includes, templates
- Travaux pratiques : création d’un pipeline de build et test
6
Artefacts & packages (1,5h)
5h
- Cache vs artefacts
- Registry Docker intégré à GitLab
- Versioning, rétention, nettoyage
- Travaux pratiques : construction et push d’une image Docker dans le registry GitLab
7
Automatisation des tests dans la CI (2h)
2h
- Intégration des tests JUnit, accessibilité, qualité de code
- Tests de charge, intégration avec outils d’analyse statique
- Visualisation dans les tableaux de bord GitLab
- Travaux pratiques : ajout de tests automatisés, fail volontaire d’un job pour débogage
8
Sécurisation des pipelines (1h)
1h
- Bonnes pratiques de sécurité : GitLab secrets, variables protégées
- Gestion des credentials (API, Docker Hub…)
- Contrôle d’accès et audit
- Travaux Pratiques : Sécurisation d’un pipeline, test de fuite de secrets
9
Déploiement automatisé & environnement (1,5h)
5h
- Déploiement dans différents environnements (dev, recette, prod)
- Feature flags, environnement variables, stratégie de rollback
- Travaux pratiques : mise en place d’un pipeline avec différents environnements
10
Introduction à Kubernetes (2h)
2h
- Concepts clés : pods, services, namespaces
- Intégration de GitLab CI avec un cluster Kubernetes
- Secrets & configmaps dans le pipeline
- Travaux pratiques : déploiement d’un container sur un cluster local/minikube
11
IaaS & déploiement via Terraform (1,5h)
5h
- Utilisation de Terraform dans GitLab CI pour la création d’infrastructure
- Structure d’un plan Terraform, backend, providers
- Travaux pratiques : plan/apply d’un cluster léger, variables sécurisées
12
Observabilité & supervision (1h)
1h
- Intégration Prometheus, Grafana
- Monitoring des jobs CI, alertes et performance applicative
- Travaux pratiques : analyse de pipeline, dashboard de métriques
Informations
Durée
3 jour(s)
21h
Tarif
2090 € HT
HT