Acerca de los ejecutores hospedados en AE

GitHub AE ofrece máquinas virtuales hospedadas, personalizables y con seguridad robustecida, para ejecutar los flujos de trabajo de GitHub Actions. Puedes seleccionar el hardware, traer tu propia imagen de máquina, y habilitar una dirección IP para trabajar en red con tu Ejecutor hospedado en AE.

Nota: Los Ejecutor hospedado en AE se encuentran actualmente en beta y están sujetos a cambios.

Acerca de las Ejecutor hospedado en AE

Un Ejecutor hospedado en AE es una máquina virtual que administra GitHub y que tiene instalado el servicio de ejecutor de GitHub Actions. Los Ejecutor hospedado en AE de tu empresa son dedicados y puedes elegir de una amplia gama de opciones de hardware y software. Predeterminadamente, GitHub administra y autoescala a los Ejecutor hospedado en AE integralmente para maximizar el rendimiento mientras que minimiza los costos.

GitHub AE te permite crear y personalizar Ejecutor hospedado en AEs utilizando imágenes de Ubuntu o de Windows; puedes seleccionar el tamaño de máquina que quieras y, opcionalmente, configurar un rango de IP públicas para tus Ejecutor hospedado en AEs.

Cada job del flujo de trabajo se ejecuta en una instancia nueva del Ejecutor hospedado en AE y puedes ejecutar flujos de trabajo directamente en la máquina virtual o en un contenedor de Docker. Todos los pasos del job se ejecutan en la misma instancia, permitiendo que las acciones en este job compartan información utilizando el sistema de archivos del Ejecutor hospedado en AE.

Para agregar Ejecutor hospedado en AE a tu organización o empresa, consulta la sección "Agregar Ejecutor hospedado en AE".

Asignaciones de agrupaciones para los Ejecutor hospedado en AE

Tus Ejecutor hospedado en AE se distribuyen en la misma agrupación que tu instancia de GitHub AE. Ningún otro cliente tiene acceso a dicha agrupación y, como resultado, los Ejecutor hospedado en AE no se comparten con ningún otro cliente.

Administrar tus Ejecutor hospedado en AE

Durante el beta de los Ejecutor hospedado en AE, puedes administrar tus Ejecutor hospedado en AE si contactas al soporte de GitHub. Por ejemplo, el soporte de GitHub puede ayudarte para agregar un Ejecutor hospedado en AE nuevo, asignar etiquetas, o mover un Ejecutor hospedado en AE a un grupo diferente.

Facturación

Una vez que termine el beta, el uso facturable incluirá el tiempo total de actividad para las instancias activas en tus conjuntos de ejecutores hospedados en AE. Esto incluye:

  • Hora del job - minutos que se utilizaron ejecutando el job de las acciones.
  • Administración - minutos gastados volviendo a hacer la imagen de las máquinas.

Los precios aumentarán linearmente con los núcleos. Por ejemplo, 4 núcleos costarán lo doble que 2 núcleos. Las MV de Windows tendrán un precio más alto que las de Linux.

Especificaciones del Hardware

Los Ejecutor hospedado en AE se encuentran disponibles en diversas máquinas virtuales hospedadas en Microsoft Azure. Dependiendo de la disponibilidad regional, puedes elegir entre Standard_Das_v4, Standard_DS_v2, Standard_Fs_v2 series. Algunas regiones también incluyen ejecutores de GPU basados en Standard_NCs_v3.

Para obtener más información acercfa de los recursos de máquina de Azure, consulta la sección "Tamaños de las máquinas virtuales en Azure" en la documentación de Microsoft Azure.

Para determinar quém ejecutor ejecutó un job, puedes revisar las bitácoras de flujo de trabajo. Para obtener más información, consulta la sección "Visualizar el historial de ejecuciones de un flujo de trabajo".

Especificaciones de software

Puedes utilizar los Ejecutor hospedado en AE con imágenes de sistema operativo estándar, o puedes agregar imágenes que hayas creado.

Imágenes predeterminadas de sistema operativo

Estas imágenes solo incluyen las herramientas estándar del sistema operativo:

  • Ubuntu 18.04 LTS (Canonical)
  • Ubuntu 16.04 LTS (Canonical)
  • Windows Server 2019 (Microsoft)
  • Windows Server 2016 (Microsoft)

Imágenes personalizadas de sistema operativo

Puedes crear tus propias imágenes de SO en Azure y agregarlas a GitHub AE en forma de Ejecutor hospedado en AE. Para obtener más información, consulta la sección "Agregar un Ejecutor hospedado en AE con una imagen personalizada".

Especificaciones de red

Opcionalmente, puedes habilitar una dirección IP estática pública para tu Ejecutor hospedado en AE. Si se habilitan, todos los Ejecutor hospedado en AE en tu instancia compartirán un rango de 2 a 4 direcciones IP y se comunicarán utilizando los puertos de esas direcciones.

Si no habilitas las direcciones IP estáticas públicas, entonces tus Ejecutor hospedado en AE tendrán los mismos rangos de direcciones IP que los centros de datos de Azure subsecuentemente. Los paquetes entrantes de ICMP se bloquearán, por lo tanto, no se espera que funcionen los comandos de ping o traceroute.

Para obtener una lista de rangos de direcciones IP que utilizan las GitHub Actions para los Ejecutor hospedado en AE, puedes utilizar la API de REST de GitHub. Para obtener más información, consulta la clave actions en la respuesta de la terminal de Obtener información meta de GitHub". Puedes utilizar esta lista de direcciones IP si requieres prevenir acceso no autorizados a tus recursos internos mediante una lista de direcciones IP permitidas.

La lista de direcciones IP permitidas de GitHub Actions que devuelve la API se actualiza una vez por semana.

Privilegios adminsitrativos para los Ejecutor hospedado en AE

Las máquinas virtuales Linux se ejecutan utilizando un sudo sin contraseña. Cuando necesitas ejecutar comandos o instalar herramientas que requieren más privilegios que el usuario actual, puedes usar sudo sin la necesidad de brindar una contraseña. Para obtener más información, consulta "Manual de sudo."

Las máquinas virtuales de Windows están configuradas para ejecutarse como administradores con el control de cuentas de usuario (UAC) inhabilitado. Para obtener más información, consulta "Cómo funciona el control de cuentas de usuario" en la documentación de Windows.

Sistemas de archivos

GitHub ejecuta acciones y comandos de shell en directorios específicos en la máquina virtual. Las rutas de archivo en las máquinas virtuales no son estáticas. Usa las variables de entorno que proporciona GitHub para construir rutas de archivo para los directorios home, workspace y workflow.

DirectorioVariable de entornoDescripción
homeHOMEContiene datos relacionados con el usuario. Por ejemplo, este directorio podría contener las credenciales de un intento de inicio de sesión.
workspaceGITHUB_WORKSPACELas acciones y los comandos del shell se ejecutan en este directorio. Una acción puede modificar los contenidos de este directorio, al que pueden tener acceso acciones posteriores.
workflow/event.jsonGITHUB_EVENT_PATHLa carga POST del evento de webhook que activó el flujo de trabajo. GitHub reescribe esto cada vez que se ejecuta una acción para aislar el contenido del archivo entre acciones.

Para obtener una lista de las variables de entorno que crea GitHub para cada flujo de trabajo, consulta "Usar variables de entorno".

Sistema de archivos del contenedor de Docker

Las acciones que se ejecutan en contenedores Docker tienen directorios estáticos en la ruta /github. Sin embargo, te recomendamos encarecidamente que uses las variables de entorno predeterminadas para construir rutas de archivos en contenedores de Docker.

GitHub se reserva el prefijo de ruta /github y crea tres directorios para las acciones.

  • /github/home
  • /github/workspace - Nota:GitHub Actions debe ejecutarse por el usuario predeterminado (root) de Docker. Asegúrate de que tu Dockerfile no configure la instrucción de USER, de lo contrario, no podrás acceder a GITHUB_WORKSPACE.
  • /github/workflow

¿Te ayudó este documento?

Política de privacidad

¡Ayúdanos a hacer geniales estos documentos!

Todos los documentos de GitHub son de código abierto. ¿Notas algo que esté mal o que no sea claro? Emite una solicitud de cambios.

Haz una contribución

O, aprende cómo contribuir.