Prérequis
Connaissance de base du développement .NET (dotnet CLI, solutions et projets). Familiarité avec Git et les workflows Github (commits, branches, pull requests). Notions d’intégration continue appréciées.
Durée
2 jours
Contenu Technique de la Formation
Cette formation couvre la mise en place de pipelines CI/CD pour des projets .NET avec Github Actions. Elle s’adresse aux développeurs et DevOps qui souhaitent automatiser la compilation, les tests, la publication de packages NuGet et les déploiements d’applications .NET.
- Structure d’un workflow YAML : triggers, jobs, steps et runners
- Actions essentielles pour .NET : actions/checkout, actions/setup-dotnet, cache NuGet
- Compilation et exécution de tests : dotnet build, dotnet test, collecte de coverage
- Matrix strategy pour tester sur plusieurs versions de .NET et plusieurs OS
- Publication de packages NuGet et création de releases Github
- Gestion des secrets, environments et approbations pour les déploiements
Objectifs de la Formation
Les objectifs visés par cette formation sont :
- Concevoir des workflows Github Actions pour compiler et tester des projets .NET
- Mettre en place une matrix strategy pour couvrir plusieurs cibles .NET et systèmes d’exploitation
- Publier automatiquement des packages NuGet et des artefacts de build
- Sécuriser les déploiements avec les secrets Github et les environments
- Optimiser le temps d’exécution avec le cache et les workflows réutilisables
Table des Matières
Fondamentaux de Github Actions
- Runners hébergés vs self-hosted
- Anatomie d’un workflow YAML et cycle de vie
- Triggers : push, pull_request, schedule, workflow_dispatch
CI pour projets .NET
- actions/setup-dotnet et sélection de la version SDK
- Restore, build et test avec dotnet CLI
- Cache des packages NuGet et des outputs
Tests et qualité de code
- Collecte de coverage avec coverlet et upload vers Codecov
- Analyse statique et linters dans le pipeline
- Publication des résultats de tests
Build matriciel et multi-plateformes
- Matrix strategy pour .NET 6, 7 et 8
- Exécution sur Ubuntu, Windows et macOS
- Fail-fast et include / exclude
Publication et déploiement
- Publication de packages NuGet sur nuget.org ou Github Packages
- Création de releases Github avec artefacts
- Déploiement vers Azure App Service ou autres cibles
Sécurité et maintenabilité
- Gestion des secrets et variables d’environnement
- Environments et règles d’approbation manuelle
- Workflows réutilisables et composite actions
En Pratique
Création et configuration de workflows YAML
- Configurer des déclencheurs (push, pull request, schedule)
- Développer des workflows multi-jobs avec dépendances et conditions
Automatisation du build et des tests .NET
- Utiliser des actions pour compiler, tester et valider des projets .NET
- Intégrer NUnit, xUnit et couvrir les rapports de code
Déploiement et release continus
- Configurer des déploiements vers Azure App Service ou AWS
- Gérer les secrets et les permissions d'actions
Optimisation des pipelines
- Implémenter le caching pour accélérer les builds
- Monitorer et déboguer les workflows en production
Modalités et Inscription
Cette formation est proposée selon deux formules pour s'adapter au mieux à vos besoins :
Session régulière
Des sessions sont organisées à intervalles réguliers. Demandez les prochaines dates planifiées pour vous inscrire à la prochaine session.
Sur mesure & intra-entreprise
Vous souhaitez former vos équipes directement dans vos locaux ou adapter le programme technique à votre contexte d'entreprise ? Contactez-nous pour obtenir un devis personnalisé.