Site web professionnel12 min de lecture

Pipeline CI/CD moderne avec GitHub Actions en 2026 — guide complet

GitHub Actions traite 71 millions de jobs par jour. Les runners ARM64 sont GA et 37 % moins chers. Les prix ont baissé de 39 % en janvier 2026. Ce guide couvre le pipeline complet — lint, test parallèle, build, Docker multi-plateforme, déploiement OIDC — avec des configs YAML modernes prêtes à copier.

Pipeline CI/CD moderne avec GitHub Actions en 2026 — guide complet

Nouveautés GitHub Actions 2025-2026

  • Runners ARM64 natifs (ubuntu-24.04-arm) : gratuits en repos publics, +40 % perf vs gen précédente
  • YAML anchors supportés, fonction case(), lazy loading pour workflows 300+ jobs
  • Actions Performance Metrics (GA) pour le monitoring
  • Prix réduits : -39 %, Linux 4 vCPU/16 GB par défaut
  • CodeQL scanne les workflows eux-mêmes — 800 000+ vulnérabilités détectées dans 158 000 repos

Pipeline CI complet : lint, test, build

name: CI Pipeline
on:
  push:
    branches: [main, develop]
  pull_request:
    branches: [main]
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true
jobs:
  quality:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: '20', cache: 'npm' }
      - run: npm ci
      - run: npm run lint && npm run type-check
  test:
    needs: quality
    runs-on: ubuntu-latest
    strategy:
      matrix:
        shard: [1, 2, 3, 4]
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: '20', cache: 'npm' }
      - run: npm ci
      - run: npx jest --shard=${{ matrix.shard }}/4
  build:
    needs: test
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci && npm run build
      - uses: actions/upload-artifact@v4
        with: { name: build, path: dist/ }

Les tests sont parallélisés en 4 shards via matrix — réduction de 60-70 % du temps CI sur les gros projets.

Sécurité : CodeQL, Dependabot et OIDC

CodeQL scanne vos workflows (script injection, permissions manquantes). Dependabot automatise les mises à jour npm et GitHub Actions. OIDC élimine les secrets long-lived pour AWS, GCP, Azure :

permissions:
  id-token: write
  contents: read
steps:
  - uses: aws-actions/configure-aws-credentials@v4
    with:
      role-to-assume: ${{ vars.AWS_DEPLOY_ROLE }}
      aws-region: eu-west-3

Bonnes pratiques : pin les actions par SHA, permissions minimales (permissions: {} puis opt-in), ne jamais interpoler des inputs non fiables dans run:.

Docker multi-plateforme et support monorepo

Cache Docker via backend GHA (cache-from: type=gha, cache-to: type=gha,mode=max). Builds natifs ARM sur runners ARM64 (plus rapide que QEMU).

Monorepo : dorny/paths-filter@v3 réduit les temps CI de 70-90 % en ne buildant que les packages modifiés. Pattern « status-check » pour le branch protection avec jobs conditionnels.

Toujours définir timeout-minutes — le défaut est 6 heures (!). Le concurrency avec cancel-in-progress: true évite les builds en doublon sur chaque push.

Questions fréquentes

Oui pour les repos publics (runners Linux, ARM64, macOS inclus). Pour les repos privés : 2 000 minutes/mois gratuites (plan Free), puis facturation à la minute.
Oui. Tous nos projets clients ont un pipeline CI/CD GitHub Actions : lint + typecheck + tests + build + déploiement automatique. C'est inclus dans chaque livraison.

Prêt à passer à l'action ?

Maquette gratuite sous 24h, sans engagement.

Articles connexes