Formation Bazel : Build, Test et CI/CD à l’échelle
€ HT / personne |
3 jours (21 heures) |
Présentation
Bazel est un système de build open‑source pour les entreprises. Cette plateforme d’industrialisation pour des applications multi‑langages et multi‑plateformes fournit des outils pour compiler</strong tester et packager de manière incrémentale et reproductible.
Notre formation Bazel : Build, Test et CI/CD à l’échelle vous permettra de structurer vos projets, gérer les dépendances et accélérer vos pipelines en tirant parti du cache et de l’exécution distante.
Vous serez en mesure d’obtenir plus d’informations sur les performances de build, de configurer un environnement Bazel complet et de définir les bonnes pratiques de CI/CD et de sécurité.
Bazel facilite l’orchestration des tests et la corrélation des résultats avec les métriques de pipeline. De plus, Bazel s’adapte aux dépôts monorepo comme aux architectures distribuées, du poste de développeur aux agents de CI.
À la suite de cette formation, vous serez en mesure d’installer, configurer et exploiter Bazel, ainsi que de comprendre son architecture et ses mécanismes d’optimisation. Comme toutes nos formations, celle‑ci vous présentera la dernière version stable en date et ses nouveautés.
Comme toutes nos formation, celle-ci utilise la dernière version stable v8.3.1 de Bazel.
Objectifs
- Comprendre l’architecture et les concepts clés de Bazel
- Industrialiser un environnement de build polyglotte
- Réduire les temps de build via cache et remote execution
- Automatiser les tests et intégrer Bazel en CI/CD
- Garantir portabilité, sécurité et traçabilité des artefacts
Public visé
- Développeurs logiciels
- Ingénieurs DevOps
- Architectes applicatifs
Pré‑requis
- Aisance en ligne de commande et Git
- Notions de développement (Java, Python, C++ ou Go)
- Premières bases en intégration continue
Programme de notre fromation Bazel : Build, Test et CI/CD à l’échelle
Introduction à Bazel et notions fondamentales
- Comprendre l’architecture de Bazel et son positionnement
- Comparer avec Maven, Gradle, Make et autres outils
- Installation et configuration initiale sur votre poste
- Rôle des fichiers WORKSPACE et BUILD
- Gestion des dépendances externes et Bzlmod
- Atelier : Installation et première configuration d’un projet Bazel
Structure des projets et gestion des dépendances
- Organisation en packages, targets et monorepo polyglotte
- Règles natives : cc_binary, java_library, py_test…
- Introduction à Starlark pour créer des règles personnalisées
- Déclaration/consommation des dépendances et contraintes de plateforme
- Stratégies de modularisation et réutilisation des macros
- Atelier : Structurer un projet multi-langages avec Bazel
Optimisation des builds
- Principe du build incrémental et graphes de dépendances
- Cache local vs remote caching : quand et comment
- Remote execution et parallélisation à grande échelle
- Réglages de performance (sandboxing, stratégies de spawn, RAM/CPU)
- Mesure et diagnostic : profils, build event protocol
- Atelier : Mettre en place un cache distant et mesurer les gains
Gestion des tests avec Bazel
- Tests unitaires, d’intégration et end‑to‑end avec règles test
- Herméticité, reproductibilité et flaky tests
- Paramètres clés : –test_output, –test_filter, –runs_per_test
- Intégration avec JUnit, pytest, Go test…
- Rapports, temps d’exécution et sharding
- Atelier : Écrire et exécuter une suite de tests multi‑langages
Bazel et CI/CD
- Intégrer Bazel dans Jenkins, GitHub Actions, GitLab CI
- Stratégies de pipeline : builds incrémentaux, branch builds, releases
- Gestion des artefacts, cache partagé et isolation des jobs
- Optimisation des temps de cycle et du coût d’exécution
- Bonnes pratiques de fiabilité (timeouts, retry, cache keys)
- Atelier : Créer un pipeline CI/CD complet avec Bazel
Développement multiplateforme
- Builds pour Linux, macOS, Windows
- Cross‑compilation et toolchains (C/C++, Java, Go, Python…)
- Dépendances natives et liens dynamiques/statiques
- Intégration avec Docker et images reproductibles
- Portabilité, compatibilité et CI multi‑agents
- Atelier : Construire et tester un projet pour plusieurs plateformes
Extension et personnalisation
- Écosystème des rules_* et sélection des extensions
- Écriture de règles en Starlark : providers, actions, attrs
- Macros et factorisation du code de build
- Publication interne de règles partagées
- Gestion des dépendances, versions et compatibilité
- Atelier : Créer une règle Bazel personnalisée
Sécurité et gouvernance
- Politiques d’accès, audit et traçabilité des builds
- Validation et signature des artefacts (SBOM, attestations)
- Gestion des dépendances open‑source et licensing
- Analyse de surface d’attaque et durcissement
- Conformité et exigences réglementaires
- Atelier : Mettre en place des contrôles de sécurité dans la chaîne
Maintenance et bonnes pratiques
- Structurer un monorepo pour la maintenabilité
- Convention de nommage, revue de BUILD files
- Suivi de performance et métriques long terme
- Automatisation de la maintenance (linters, buildifier)
- Migration depuis d’autres outils (Maven/Gradle/Make)
- Atelier : Optimiser un projet Bazel existant
Clôture et plan d’implémentation
- Bilan des acquis et des accélérateurs clés
- Checklist d’industrialisation Bazel en CI/CD
- Modèle de .bazelrc et patterns réutilisables
- Roadmap d’adoption et stratégie de changement
- Ressources et veille (releases, LTS, roadmap)
- Atelier : Élaborer votre plan d’adoption Bazel
Pour aller plus loin
Formation Jenkins: Intégration continue
Formation Kubernetes
Formation Tekton
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Nos Formateurs Référents
Témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Afficher tous les témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Noter la formation
€ HT / personne |
3 jours (21 heures) |
UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?
Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.
ILS SE SONT FORMÉS CHEZ NOUS