Acerca de los ejecutores autohospedados para Dependabot updates
Puede ayudar a los usuarios de tu instancia de GitHub Enterprise Server a crear y mantener código seguro configurando las actualizaciones de seguridad y de versión de Dependabot. Con Dependabot updates, los desarrolladores pueden configurar repositorios para que sus dependencias se actualicen y se mantengan seguras automáticamente. Para más información, consulta Habilitación de Dependabot para la empresa.
Para usar Dependabot updates en tu instancia de GitHub Enterprise Server, debes configurar ejecutores autohospedados dedicados para crear las solicitudes de incorporación de cambios que van a actualizar las dependencias.
Requisitos previos
La configuración de ejecutores autohospedados es solo un paso en mitad del proceso para habilitar Dependabot updates. Hay varios pasos que se deben seguir antes de estos pasos, incluida la configuración de tu instancia de GitHub Enterprise Server para su uso GitHub Actions con ejecutores autohospedados. Para más información, consulta Habilitación de Dependabot para la empresa.
Configurar ejecutores autohospedados para Dependabot updates:
Requisitos del sistema para ejecutores Dependabot
Cualquier máquina virtual (VM) que use para los ejecutores del Dependabot debe cumplir los requisitos de los ejecutores autohospedados. Además, deben cumplir los siguientes requisitos.
-
Sistema operativo Linux
-
Arquitectura x64
-
Tener Docker instalado con acceso para los usuarios del ejecutor:
- Se recomienda instalar Docker en modo sin raíz y configurar los ejecutores para acceder a Docker sin privilegios
root. - Como alternativa, instale Docker y conceda a los usuarios del ejecutor privilegios para ejecutar Docker.
- Se recomienda instalar Docker en modo sin raíz y configurar los ejecutores para acceder a Docker sin privilegios
Los requisitos de CPU y memoria dependerán del número de ejecutores simultáneos que implemente en una máquina virtual determinada. A modo de guía, hemos configurado correctamente 20 ejecutores en una sola máquina de 8 GB de 2 CPU pero, en última instancia, los requisitos de CPU y memoria dependerán en gran medida de los repositorios que se actualicen. Algunos ecosistemas requerirán más recursos que otros.
Si especifica más de 14 ejecutores simultáneos en una máquina virtual, también debe actualizar la configuración /etc/docker/daemon.json de Docker para aumentar el número predeterminado de redes que puede crear Docker.
{
"default-address-pools": [
{"base":"10.10.0.0/16","size":24}
]
}
Advertencia
Actualmente, las redes privadas no son compatibles ni con una red virtual de Azure (VNET) ni con el Actions Runner Controller (ARC) para Dependabot en GitHub Actions. Al usar VNET o ARC, lo hace bajo su propio riesgo, y GitHub actualmente no puede ofrecerle soporte si surgen problemas.
Requisitos de red para ejecutores Dependabot
Los ejecutores Dependabot requieren acceso a la Internet pública, GitHub.com y a cualquier registro interno que se vaya a utilizar en Dependabot updates. Para minimizar el riesgo de la red interna, debe limitar el acceso desde la máquina virtual (VM) a la red interna. Esto reduce la posibilidad de que se produzcan daños en los sistemas internos si un ejecutor descarga una dependencia secuestrada.
Configuración de certificados para ejecutores Dependabot
Si la GitHub Enterprise Server instancia usa un certificado autofirmado o si Dependabot necesita interactuar con registros que usan certificados autofirmados, esos certificados también deben instalarse en los ejecutores autohospedados que ejecutan Dependabot trabajos. Esta seguridad protege la conexión. También debes configurar Node.js para usar el certificado, ya que la mayoría de las acciones se escriben en JavaScript y se ejecutan utilizando Node.js, lo cual no utiliza el almacenamiento del certificado del sistema operativo.
Adición de ejecutores autohospedados para actualizaciones de Dependabot
-
Puede aprovisionar ejecutores autohospedados en el nivel de repositorio, organización o empresa. Para más información, consulta Ejecutores autohospedados y Agrega ejecutores auto-hospedados.
-
Configure los ejecutores autohospedados con los requisitos descritos anteriormente. Por ejemplo, en una máquina virtual que ejecuta Ubuntu 20.04, haría lo siguiente:
- Instalar Docker y asegurarse de que los usuarios del ejecutor tienen acceso a Docker. Para obtener más información, vea la documentación de Docker.
- Compruebe que los ejecutores tienen acceso a la red pública de Internet y solo pueden acceder a las redes internas que Dependabot necesita.
- Instale los certificados autofirmados para la GitHub Enterprise Server instancia o para los registros con los que tendrá que Dependabot interactuar.
- Configura Node.js para usar el mismo certificado. Para más información, consulta Solución de problemas de Acciones de GitHub para su empresa.
-
Asigne una etiqueta de
dependabota cada ejecutor que quiera que utilice Dependabot. Para más información, consulta Uso de etiquetas con ejecutores autohospedados. -
Opcionalmente, habilite los flujos de trabajo desencadenados por Dependabot para usar más que permisos de solo lectura y para tener acceso a los secretos que normalmente están disponibles. Para más información, consulta Solución de problemas de Acciones de GitHub para su empresa.