Skip to main content

Assistance pour GitHub Actions

Créez et perfectionnez les flux de travail GitHub Actions.

Remarque

  • Les exemples de cette bibliothèque sont destinés à vous inspirer. Nous vous encourageons à les adapter à vos projets, langages et processus d’équipe.
  • Pour des exemples d’instructions personnalisées pour des langages et scénarios spécifiques fournis par la communauté, consultez le référentiel Personnalisations remarquables de GitHub Copilot.
  • Vous pouvez appliquer des instructions personnalisées à différents niveaux, en fonction de la plateforme ou de l’IDE sur lequel vous les créez. Pour plus d’informations, consultez « À propos de la personnalisation des réponses GitHub Copilot ».

L’exemple suivant montre un fichier actions.instructions.md spécifique à un chemin d’accès, qui s’applique uniquement aux fichiers de flux de travail GitHub Actions dans votre référentiel, en utilisant le champ applyTo. Pour plus d’informations sur les fichiers contenant des instructions spécifiques au chemin d’accès, consultez Ajout d’instructions personnalisées du dépôt pour GitHub Copilot.

Text
---
applyTo: ".github/workflows/**/*.yml"
---

When generating or improving GitHub Actions workflows:

## Security First
- Use GitHub secrets for sensitive data, never hardcode credentials
- Pin third-party actions to specific commits by using the SHA value (e.g., `- uses: owner/some-action@a824008085750b8e136effc585c3cd6082bd575f`)
- Configure minimal permissions for GITHUB_TOKEN required for the workflow

## Performance Essentials
- Cache dependencies with `actions/cache` or built-in cache options
- Add `timeout-minutes` to prevent hung workflows
- Use matrix strategies for multi-environment testing

## Best Practices
- Use descriptive names for workflows, jobs, and steps
- Include appropriate triggers: `push`, `pull_request`, `workflow_dispatch`
- Add `if: always()` for cleanup steps that must run regardless of failure

## Example Pattern
```yaml
name: CI
on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - uses: actions/checkout@v5
      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: npm
      - run: npm ci
      - run: npm test
```

Pour aller plus loin

  •         [AUTOTITLE](/copilot/concepts/response-customization) - Vue d’ensemble de la personnalisation des réponses dans GitHub Copilot
    
  •         [AUTOTITLE](/copilot/how-tos/configure-custom-instructions) - Comment configurer des instructions personnalisées
    
  •         [Personnalisations remarquables de GitHub Copilot](https://github.com/github/awesome-copilot/blob/main/README.md) - Référentiel d’instructions personnalisées fournies par la communauté et d’autres personnalisations pour des langages et des scénarios spécifiques