Le guide complet pour construire des pipelines CI/CD avec Claude Code
Un guide complet pour construire des pipelines CI/CD avec Claude Code, avec des exemples pratiques et les bonnes pratiques.
Optimiser la construction de pipelines CI/CD avec Claude Code
Les fichiers de configuration CI/CD contiennent de nombreuses syntaxes détaillées et les essais-erreurs prennent souvent du temps. Avec Claude Code, vous pouvez générer en une seule fois un pipeline adapté à votre projet.
Workflow de base GitHub Actions
> Crée un workflow GitHub Actions.
> - Exécuter lint, vérification des types et tests quand une PR est créée
> - Builder et déployer lors du merge sur main
> - Utiliser Node.js 20, pnpm
> - Configurer le cache pour accélérer
# .github/workflows/ci.yml
name: CI
on:
pull_request:
branches: [main]
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- run: pnpm install --frozen-lockfile
- name: Lint
run: pnpm lint
- name: Type Check
run: pnpm tsc --noEmit
- name: Test
run: pnpm test -- --coverage
- name: Upload Coverage
if: github.event_name == 'pull_request'
uses: actions/upload-artifact@v4
with:
name: coverage
path: coverage/
deploy:
needs: lint-and-test
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: pnpm build
- name: Deploy to Vercel
uses: amondnet/vercel-action@v25
with:
vercel-token: ${{ secrets.VERCEL_TOKEN }}
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }}
vercel-args: --prod
Build et push d’images Docker
> Crée un workflow pour builder une image Docker et la pousser vers
> GitHub Container Registry.
> Tagger avec le tag git et le SHA du commit.
# .github/workflows/docker.yml
name: Docker Build
on:
push:
tags: ["v*"]
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- uses: docker/setup-buildx-action@v3
- uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/metadata-action@v5
id: meta
with:
images: ghcr.io/${{ github.repository }}
tags: |
type=semver,pattern={{version}}
type=sha,prefix=
- uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
cache-from: type=gha
cache-to: type=gha,mode=max
La mise en place d’un environnement Docker est expliquée en détail dans le guide d’intégration avec Docker.
Intégration des tests E2E
> Intègre les tests E2E Playwright dans le CI/CD.
> Sauvegarder les captures d'écran en cas d'échec des tests.
e2e-test:
needs: lint-and-test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
- run: pnpm install --frozen-lockfile
- run: npx playwright install --with-deps chromium
- name: Run E2E Tests
run: pnpm test:e2e
- uses: actions/upload-artifact@v4
if: failure()
with:
name: playwright-report
path: playwright-report/
retention-days: 7
Pour une vue d’ensemble des stratégies de test, consultez le guide complet des stratégies de test, et pour l’intégration avec le workflow Git, consultez également Automatisation complète des opérations Git.
Ajout du scan de sécurité
> Ajoute un scan de vulnérabilités des dépendances au CI.
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npx audit-ci --moderate
Les détails sur les vérifications de sécurité sont expliqués dans Automatisation des audits de sécurité.
Résumé
Avec Claude Code, vous pouvez construire en peu de temps un pipeline CI/CD optimal pour votre projet. En spécifiant clairement chaque étape - lint, tests, build, déploiement - des workflows prêts pour la production sont générés.
Pour plus de détails sur GitHub Actions, consultez la documentation officielle de GitHub Actions, et pour Claude Code, consultez la documentation officielle d’Anthropic.
Related Posts
Maîtriser les Hooks de Claude Code : Formatage automatique, tests automatiques et plus encore
Apprenez à configurer le formatage et les tests automatiques avec les hooks de Claude Code. Inclut des exemples de configuration pratiques et des cas d'utilisation concrets.
Configuration des serveurs MCP dans Claude Code et cas d'utilisation pratiques
Un guide complet sur les capacités des serveurs MCP de Claude Code. Apprenez à connecter des outils externes, configurer des serveurs et découvrez des exemples d'intégration concrets.
Le guide complet pour rédiger un CLAUDE.md : Bonnes pratiques de configuration de projet
Un guide approfondi pour rédiger des fichiers CLAUDE.md efficaces. Apprenez à communiquer votre stack technologique, vos conventions et la structure de votre projet pour maximiser la qualité des réponses de Claude Code.