Skip to main content

Descripción de GitHub Actions

Conozca los conceptos básicos y la terminología esencial en GitHub Actions.

Nota:

Actualmente los ejecutores hospedados por GitHub no se admiten en GitHub Enterprise Server.

Información general

          GitHub Actions es una plataforma de integración y despliegue continuos (IC/DC) que te permite automatizar tu mapa de compilación, pruebas y despliegue. Puede crear flujos de trabajo que compilen y prueben cada solicitud de incorporación de cambios en el repositorio o implementar solicitudes de incorporación de cambios combinadas en producción.

          GitHub Actions va más allá de Solo DevOps y le permite ejecutar flujos de trabajo cuando se producen otros eventos en el repositorio. Por ejemplo, puedes ejecutar un flujo de trabajo para que agregue automáticamente las etiquetas adecuadas cada vez que alguien cree una nueva incidencia en tu repositorio.

Debe hospedar sus propias máquinas virtuales Linux, Windows o macOS para ejecutar flujos de trabajo para tu instancia de GitHub Enterprise Server.

Para obtener más información sobre la implantación de GitHub Actions en su empresa, consulte Presentación de GitHub Actions a su empresa.

Los componentes de GitHub Actions

Puede configurar un GitHub Actionsflujo de trabajo para que se desencadene cuando se produzca un evento en el repositorio, como cuando se abre una solicitud de incorporación de cambios o se crea una incidencia. El flujo de trabajo contiene uno o varios trabajos que se pueden ejecutar en orden secuencial o en paralelo. Cada trabajo se ejecutará dentro de su propio ejecutor de máquina virtual o dentro de un contenedor, y tendrá uno o varios pasos que pueden ejecutar un script que defina, o bien una acción, que es una extensión reutilizable que puede simplificar el flujo de trabajo.

Diagrama de un evento que desencadena el ejecutor 1 para ejecutar el trabajo 1, que desencadena el ejecutor 2 para ejecutar el trabajo 2. Cada uno de los trabajos se divide en varios pasos.

Flujos de trabajo

Un flujo de trabajo es un proceso automatizado configurable que ejecutará uno o más trabajos. Los flujos de trabajo se definen mediante un archivo de YAML que se verifica en tu repositorio y se ejecutará cuando lo active un evento dentro de este o puede activarse manualmente o en una programación definida.

Los flujos de trabajo se definen en el directorio .github/workflows de un repositorio. Un repositorio puede tener varios flujos de trabajo, y cada uno puede realizar un conjunto diferente de tareas, como las siguientes:

  • Compilar y probar de solicitudes de incorporación de cambios
  • Implementar la aplicación cada vez que se crea una versión
  • Agregar una etiqueta cada vez que se abre una incidencia nueva

Puede hacer referencia a un flujo de trabajo dentro de otro flujo de trabajo. Para más información, consulta Reutilización de flujos de trabajo.

Para más información, consulta Escritura de flujos de trabajo.

Eventos

Un evento es una actividad específica en un repositorio que desencadena una ejecución de flujo de trabajo. Por ejemplo, una actividad puede originarse GitHub cuando alguien crea una solicitud de incorporación de cambios, abre un problema o inserta una confirmación en un repositorio. También puede desencadenar una ejecución de flujo de trabajo según una programación, mediante la publicación en una API de REST o manualmente.

Para obtener una lista completa de eventos que se pueden usar para desencadenar flujos de trabajo, vea Eventos que desencadenan flujos de trabajo.

Trabajos

Un **trabajo ** es un conjunto de pasos de un flujo de trabajo que se ejecuta en el mismo ejecutor. Cada paso puede ser un script de shell o una acción que se ejecutarán. Los pasos se ejecutarán en orden y serán dependientes uno del otro. Ya que cada paso se ejecuta en el mismo ejecutor, puedes compartir datos de un paso a otro. Por ejemplo, puedes tener un paso que compile tu aplicación, seguido de otro que pruebe la aplicación que se compiló.

Puede configurar las dependencias de un trabajo con otros trabajos; de manera predeterminada, los trabajos no tienen dependencias y se ejecutan en paralelo. Cuando un trabajo tiene una dependencia de otro trabajo, espera a que el trabajo del que depende se complete antes de ejecutarse.

También puedes usar una matriz para ejecutar el mismo trabajo varias veces, cada una con una combinación diferente de variables, como sistemas operativos o versiones de lenguaje.

Por ejemplo, es posible que configure varios trabajos de compilación para distintas arquitecturas sin dependencias de trabajo y un trabajo de empaquetado que dependa de esas compilaciones. Los trabajos de construcción se ejecutan en paralelo y, cuando se han completado correctamente, se ejecuta la tarea de empaquetado.

Para más información, consulta Elegir qué hace tu flujo de trabajo.

Acciones

Una acción es un conjunto predefinido y reutilizable de trabajos o código que realiza tareas específicas dentro de un flujo de trabajo, lo que reduce la cantidad de código repetitivo que escribes en los archivos de flujo de trabajo. Las acciones pueden realizar tareas como:

  • Extracción del repositorio de Git desde GitHub
  • Configurar la cadena de herramientas correcta para el entorno de compilación
  • Configurar la autenticación en el proveedor de nube

Puede escribir sus propias acciones o puede encontrar acciones para usarlas en los flujos de trabajo de GitHub Marketplace.

Para compartir las acciones en toda la empresa sin publicarlas de forma pública, puedes almacenarlas en un repositorio interno y luego configurarlo para que acceda a los flujos de trabajo de GitHub Actions en otros repositorios que sean propiedad de la misma organización o de una organización de la empresa. Para más información, consulta Compartir acciones y flujos de trabajo con tu empresa.

Para más información sobre las acciones, consulta Reutilización de automatizaciones.

Ejecutores

Un ejecutor es un servidor que ejecuta los flujos de trabajo cuando se desencadenan. Cada ejecutor puede ejecutar un solo trabajo a la vez.

           Debe hospedar sus propios ejecutores para GitHub Enterprise Server.

          

Para obtener más información, consulte Administración de ejecutores autohospedados.

Pasos siguientes

GitHub Actions puede ayudarte a automatizar casi cualquier aspecto de tus procesos de desarrollo de aplicaciones. ¿Ya está listo para comenzar? Aquí tienes algunos recursos útiles para que tomes tus siguientes pasos con GitHub Actions:

Información adicional

  •         [AUTOTITLE](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises)