Skip to main content

Ejecutor de Acciones de GitHub

Genera y mejora flujos de trabajo de GitHub Actions.

Nota:

  • Los ejemplos de esta biblioteca están pensados para inspirarte: te recomendamos que los ajustes para que sean más específicos para tus proyectos, lenguajes y procesos de equipo.
  • Para obtener ejemplos aportados por la comunidad de instrucciones personalizadas para lenguajes y escenarios específicos, consulta el repositorio Awesome GitHub Copilot Customizations.
  • Puedes aplicar instrucciones personalizadas en distintos ámbitos, en función de la plataforma o IDE donde las crees. Para obtener más información, vea «Acerca de la personalización de las respuestas de GitHub Copilot Chat».

En el ejemplo siguiente se muestra un archivo actions.instructions.md específico de la ruta de acceso que solo se aplica a los archivos de flujo de trabajo de GitHub Actions del repositorio mediante el campo applyTo. Para más información sobre los archivos de instrucciones específicos de la ruta de acceso, consulta Incorporación de instrucciones personalizadas del repositorio para 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
```

Información adicional