Prérequis
Bases en JavaScript/Node.js, expérience avec npm et package.json, notions de contrôle de version Git, familiarité avec les concepts CI/CD
Durée
3 jours
Contenu Technique de la Formation
Cette formation couvre l’automatisation complète des projets Node.js/NPM du build au déploiement : pipelines Gitlab CI, workflows Github Actions, déploiements Vercel et environments de preview. Nous explorons semantic-release pour la versioning automatique, la publication NPM, les tests automatisés et les bonnes pratiques de CD modernes.
- Package.json scripts et npm CI — reproducibilité des builds, dépendances lockées
- Gitlab CI pipelines : .gitlab-ci.yml, stages, jobs parallèles, artifacts, caching
- Github Actions workflows : YAML, events, runners, secrets, matrix builds
- Déploiements Vercel et preview environments — serverless, instant rollback, analytics
- Semantic versioning et semantic-release — release notes automatisées, git tags, npm publish
- Tests automatisés en CI : Jest, Vitest, coverage reports, threshold enforcement
Objectifs de la Formation
Les objectifs visés par cette formation sont :
- Maîtriser npm CI et les scripts de build reproducibles dans package.json
- Concevoir et exécuter des pipelines Gitlab CI et Github Actions pour Node.js
- Automatiser la publication NPM et versioning avec semantic-release
- Déployer des applications vercel avec preview environments pour chaque PR
- Intégrer tests automatisés, coverage checks et linting dans les workflows
Table des Matières
Fondamentaux npm, Node.js et Reproducibilité des Builds
- npm ci vs npm install : reproducibilité, lockfiles (package-lock.json, pnpm-lock.yaml)
- Scripts npm : lint, test, build, start — définition et orchestration
- Dépendances devDependencies vs dependencies, peer dependencies
- Node version management avec .nvmrc et volta
- Optimisation des builds : incremental builds, caching de modules
Gitlab CI Pipelines pour Projets NPM
- .gitlab-ci.yml : structure YAML, stages, jobs, variables d’environnement
- Images Docker et runners pour Node.js, configuration parallélisation
- Artifacts et caching : partage de node_modules, reports, logs
- Protected branches et deploy keys pour la sécurité du CD
- Gitlab Container Registry et déploiements Docker
Github Actions Workflows pour Node.js
- Syntax YAML, events (push, pull_request, workflow_dispatch), triggers
- Actions réutilisables et marketplace, setup-node et versions
- Secrets et environments : authentification NPM, déploiements sécurisés
- Matrix builds pour tester multi-versions Node, OS, packages
- Artifacts, logs et status checks pour les pull requests
Déploiements Vercel et Preview Environments
- Vercel CLI et configuration vercel.json pour projets Node.js
- Déploiements depuis Gitlab CI et Github Actions vers Vercel
- Preview environments : URLs temporaires pour chaque PR, instant feedback
- Environment variables et secrets en Vercel, gestion par branche
- Monitoring, analytics et rollback instantané sur Vercel
Semantic Release et Publication NPM
- Semantic Versioning : major, minor, patch et impacts sur l’API
- semantic-release : release automatisée, changelog généré, git tags, npm publish
- Commit conventions : Conventional Commits pour l’analyse automatique
- Release notes et CHANGELOG.md générés depuis les commits
- Publication sur npm registry et private registries
Tests Automatisés et Coverage en CI
- Jest et Vitest : configuration, test discovery, mocking, assertions
- Coverage reports et threshold enforcement : blocage si couverture insuffisante
- Tests parallelisés en Gitlab CI et Github Actions
- Integration tests et e2e tests dans les workflows CI
- Rapports de test et intégration avec les pull requests
En Pratique
Créer des workflows Gitlab CI avec npm
- Mettre en place des pipelines d'intégration continue natifs.
- Construire et tester des applications Node.js automatiquement.
Implémenter Github Actions pour Node.js
- Configurer des workflows YAML réutilisables.
- Déployer automatiquement sur Vercel après commit.
Déployer en continu sur Vercel
- Connecter votre repository GitHub/Gitlab à Vercel.
- Mettre en place des déploiements preview et production.
Optimiser la pipeline frontend
- Exécuter tests et linting en parallèle.
- Gérer les variables d'environnement en sécurité.
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é.