¿Cómo ejecutar flujos de trabajo de acciones de GitHub localmente?

8

Estoy planeando mover nuestra compilación de Travis CI a las acciones de GitHub usando Docker para nuestras pruebas por confirmación.

¿Puedo ejecutar estos nuevos flujos de trabajo de acciones de GitHub de forma reproducible localmente? ¿Existe una forma genérica de ejecutar localmente algún flujo de trabajo de acciones de GitHub?

William Entriken
fuente
1
Existe si todavía está utilizando la sintaxis HCL en desuso para las acciones y no se ha graduado al nuevo estilo YAML. Todavía no he visto nada para apoyar los nuevos flujos de trabajo de estilo
yaml
hay mucho interés nejtos/acten admitir la sintaxis de YAML, vea mi respuesta a continuación con enlaces a los problemas que se están discutiendo.
Jubair

Respuestas:

1

Existen herramientas como las ya mencionadas act, pero no son perfectas. No estás solo con este problema. Problemas similares son:

  • cómo probar las construcciones de Jenkins localmente
  • cómo probar las compilaciones de GitLab CI localmente
  • cómo probar las construcciones de Circle CI localmente
  • cómo probar las construcciones XXXX localmente

Y mi solución para estos problemas es:

  • evite las funcionalidades proporcionadas por sus herramientas de CI (acciones de GitHub, Gitlab CI, etc.)
  • escriba lo más posible de forma independiente de CI (scripts BASH, scripts de PowerShell, scripts de Gradle, scripts de NPM, archivos Docker, scripts de Ansible, todo lo que sepa)
  • invoque esos scripts desde su herramienta de CI. En las acciones de GitHub:run: your command to run
iirekm
fuente
En realidad, gitlab tiene una herramienta cli para probar sus flujos de trabajo:gitlab-runner exec docker my-job
Jubair