Acerca de los ejecutores auto-hospedados para las GitHub Actions
Las GitHub Actions permiten que las personas que utilizan tu instancia de GitHub Enterprise Server mejoren su productividad al automatizar cada fase del flujo de trabajo de desarrollo de software. Para obtener más información, consulta la sección "Acerca de las GitHub Actions para las empresas".
Con GitHub Actions, los desarrolladores pueden escribir y combinar tareas individuales llamadas acciones para crear flujos de trabajo personalizados. Para habilitar las GitHub Actions para tu instancia de GitHub Enterprise Server, debes hspedar por lo menos una máquina para ejecutar jobs. Esta máquina se denomina como un ejecutor auto-hospedado. Los ejecutores auto-hospedados pueden ser físicos, virtuales, estar en un contenedor, en las instalaciones o en la nube. La máquina de tu ejecutor se conecta aGitHub Enterprise Server utilizando la aplicación para ejecutores auto-hospedados de GitHub Actions. Los ejecutores auto-hospedados pueden ejecutar Linux, Windows o macOS. Para obtener más información, consulta "Acerca de los ejecutores autoalojados."
Esta guía te muestra cómo aplicar un enfoque de administración centralizada para los ejecutores auto-hospedados para GitHub Actions en tu empresa. En la guía, completarás las siguientes tareas.
- Configurar una política limitada para restringir las acciones que pueden ejecutarse dentro de tu empresa
- Desplegar un ejecutor auto-hospedado para tu empresa
- Crear un grupo para administrar el acceso a los ejecutores disponibles para tu empresa
- Opcionalmente, restringir aún más los repositorios que puede utilizar el ejecutor
También encontrarás información adicional sobre cómo monitorear y asegurar tus ejecutores auto-hospedados, cómo acceder a las acciones desde GitHub.com, y cómo personalizar el software en tus máquinas ejecutoras.
Después de que termines la guía, los usuarios de tu instancia de GitHub Enterprise Server podrán ejecutar jobs de flujo de trabajo desde GitHub Actions en una máquina ejecutora auto-hospedada.
Prerrequisitos
-
GitHub Actions debe estar habilitado para GitHub Enterprise Server. Un administrador de sitio puede habilitar y configurar GitHub Actions para tu instancia. Para obtener más información, consulta la sección "Iniciar con las GitHub Actions para GitHub Enterprise Server".
-
Debes tener acceso a la máquina que utilizarás como ejecutor auto-hospedado en tu ambiente.
-
La conexión entre los ejecutores auto-hospedados y GitHub Enterprise Server es a través de HTTP (puerto 80) o HTTPS (puerto 443). Para garantizar la conectividad por HTTPS, configura el TLS para tu instancia de GitHub Enterprise Server. Para obtener más información, consulta la sección "Configurar el TLS". Para obtener más información, consulta la sección "Acerca de los ejecutores auto-hospedados".
-
Tu empresa debe ser dueña de por lo menos una organización. Para obtener más información, consulta las secciones "Acerca de las organizaciones" y "Crear una organización nueva desde cero".
1. Configurar políticas para las GitHub Actions
Primero, habilita las GitHub Actions para todas las organizaciones y configura una política para restringir las acciones que pueden ejecutarse en tu instancia de GitHub Enterprise Server. Opcionalmente, los propietarios de las organizaciones pueden seguir restringiendo estas políticas para cada una de ellas.
-
En la esquina superior derecha de GitHub Enterprise Server, da clic en tu foto de perfil y luego en Configuración de empresa.
-
En la barra lateral de la cuenta de empresa, haz clic en Policies (Políticas).
-
Debajo de " Políticas", haz clic en Acciones.
-
Debajo de "Políticas", selecciona Habilitar para todas las organizaciones.
-
Selecciona Permite las acciones selectas y Permitir las acciones que cree GitHub para permitir las acciones locales y las acciones que cree GitHub.
-
Haz clic en Save (guardar).
Puedes configurar políticas adicionales para restringir las acciones disponibles para los usuarios de tu instancia de GitHub Enterprise Server. Para obtener más información, consulta la sección "Requerir políticas para las GitHub Actions en tu empresa".
2. Despliega el ejecutor auto-hospedado para tu empresa
A continuación, agrega un ejecutor auto-hospedado a tu empresa. GitHub Enterprise Server te guiará durante la instalación del software necesario en la máquina ejecutora. Después de que despliegues el ejecutor, puedes verificar la conectividad entre la máquina ejecutora y tu instancia de GitHub Enterprise Server.
Agregar el ejecutor auto-hospedado
Para agregar un ejecutor auto-hospedado a una empresa, debes ser el propietario de la misma.
-
En la esquina superior derecha de GitHub Enterprise Server, da clic en tu foto de perfil y luego en Configuración de empresa.
-
En la barra lateral de la cuenta de empresa, haz clic en Policies (Políticas).
-
Debajo de " Políticas", haz clic en Acciones.
-
Haz clic en la pestaña de Ejecutores auto-hospedados.
-
Da clic en Agregar nuevo y luego en Ejecutor nuevo.
-
La imagen y arquitectura de tu sistema operativo para tu máquina del ejecutor auto-hospedado.
-
Verás instrucciones que te mostrarán cómo descargar la aplicación del ejecutor e instalarla en tu máquina de ejecutor autoalojado.
Abre un shell en tu máquina de ejecutor autoalojado y ejecuta cada comando del shell en el orden que se muestra.
Nota: En Windows, si deseas instalar la aplicación del ejecutor autoalojado como un servicio, debes abrir un shell con privilegios de administrador. También recomendamos que uses
C:\actions-runner
como el directorio para la aplicación del ejecutor autoalojado de modo que las cuentas del sistema de Windows puedan acceder al directorio del ejecutor.Las instrucciones te guían para completar estas tareas:
- Descargar y extraer la aplicación de ejecutor autoalojado.
- Ejecutar el script
config
para configurar la aplicación del ejecutor auto-hospedado y registrarlo con GitHub Actions. El scriptconfig
requiere la URL destino y un token de tiempo limitado generado automáticamente para autenticar la solicitud.- En Windows, el script
config
también te pregunta si deseas instalar la aplicación del ejecutor autoalojado como un servicio. Para Linux y macOS, puedes instalar un servicio después de que termines de agregar el ejecutor. Para obtener más información, consulta "Configurar la aplicación del ejecutor autoalojado como un servicio."
- En Windows, el script
- Ejecutar la aplicación del ejecutor autoalojado para conectar la máquina a las GitHub Actions.
Revisar que tu ejecutor auto-hospedado se haya agregado exitosamente
Después de completar estos pasos para agregar un ejecutor auto-hospedado, dicho ejecutor y su estado ahora se listan bajo "Ejecutores auto-hospedados".
La aplicación del ejecutor autoalojado debe estar activa para que el ejecutor acepte trabajos. Cuando se conecta la aplicación del ejecutor a GitHub Enterprise Server y está lista para recibir jobs, verás el siguiente mensaje en la terminal de la máquina.
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
3. Administra el acceso al ejecutor auto-hospedado utilizando un grupo
Puedes crear un grupo de ejecutores para administrar el acceso al ejecutor que agregaste a tu empresa. Utilizarás el grupo para elegir qué organizaciones pueden ejecutar jobs desde GitHub Actions en el ejecutor.
GitHub Enterprise Server agrega a todos los ejecutores nuevos a un grupo. Los ejecutores pueden estar en solo un grupo a la vez. Predeterminadamente, GitHub Enterprise Server agrega ejecutores nuevos al grupo "Predeterminado".
-
En la esquina superior derecha de GitHub Enterprise Server, da clic en tu foto de perfil y luego en Configuración de empresa.
-
En la barra lateral de la cuenta de empresa, haz clic en Policies (Políticas).
-
Debajo de " Políticas", haz clic en Acciones.
-
Haz clic en la pestaña de Ejecutores auto-hospedados.
-
Utiliza el menú desplegable Agregar nuevo y selecciona Grupo nuevo.
-
Debajo de "Nombre de grupo", escribe un nombre para tu grupo de ejecutores.
-
Para elegir una política para el acceso de la organización, debajo de "Acceso de la organización", selecciona el menú desplegable Acceso de la organización y haz clic en Organizaciones selectas.
-
A la derecha del menú desplegable con la política de acceso de la organización, haz clic en .
-
Selecciona las organizaciones a las cuales te gustaría otorgar acceso al grupo de ejecutores.
-
Opcionalmente, para permitir que los repositorios públicos en las organizaciones seleccionadas utilicen los ejecutores en el grupo, selecciona Permitir repositorios públicos.
Advertencia:
Te recomendamos que solo utilices los ejecutores auto-hospedados con los repositorios privados. Esto se debe a que tu repositorio podría ejecutar código peligroso en tu máquina de ejecutor auto-hospedado potencialmente al crear una solicitud de cambios que excluya el código en un flujo de trabajo.
Para obtener más información, consulta "Acerca de los ejecutores autoalojados."
-
Haz clic en Guardar grupo para crear el grupo y aplicar la política.
-
A la derecha de "Predeterminado", haz clic en el número de ejecutores del grupo para que se muestren.
-
Selecciona el ejecutor que desplegaste.
-
A la derecha de "Grupos de ejecutores"; selecciona el menú desplegable Mover a grupo y haz clic en aquél que hayas creado previamente.
Ya desplegaste un ejecutor auto-hospedado que puede ejecutar jobs de GitHub Actions dentro de las organizaciones que especificaste.
4. Restringir aún más el acceso al ejecutor auto-hospedado
Opcionalmente, los propietarios de las organizaciones pueden restringir aún más la política de acceso del grupo de ejecutores que creaste. Por ejemplo, los propietarios de las organizaciones podrían permitir que solo ciertos repositorios de la organización utilicen el grupo de ejecutores.
Para obtener más información, consulta la sección "Administrar el acceso a los ejecutores auto-hospedados".
Pasos siguientes
-
Puedes monitorear los ejecutores auto-hospedados y solucionar problemas comunes. Para obtener más información, consulta la sección "Monitorear y solucionar problemas de los ejecutores auto-hospedados".
-
GitHub te recomienda revisar las consideraciones de seguridad para las máquinas ejecutoras auto-hospedadas. Para obtener más información, consulta la sección "Fortalecimiento de seguridad para las GitHub Actions".
-
Puedes sincronizar manualmente los repositorios de GitHub.com que contengan acciones hacia tu empresa en GitHub Enterprise Server. Como alternativa, puedes permitir que los miembros de tu empresa accedan automáticamente a las acciones de GitHub.com utilizando GitHub Connect. Para obtener más información, consulta lo siguiente.
-
Puedes personalizar el software disponible en tus máquinas ejecutoras auto-hospedadas o configurar tus ejecutores para que ejecuten software similar a aquellos hospedados en GitHub disponible para los clientes que utilizan GitHub.com. El software que impulsa las máquinas ejecutoras para GitHub Actions es de código abierto. Para obtener más información, consulta los repositorios
actions/runner
yactions/virtual-environments
.