Acerca de los ejecutores autohospedados para Dependabot updates
Puedes ayudar a los usuarios de tu instancia de GitHub Enterprise Server a crear y mantener código seguro configurando las actualizaciones de versión y seguridad 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 para crear las solicitudes de incorporación de cambios que actualizarán las dependencias.
Requisitos previos
La configuración de ejecutores autohospedados supone solo un paso en mitad del proceso para habilitar Dependabot updates. Hay varios pasos que debes seguir antes de estos, incluida la configuración de tu instancia de GitHub Enterprise Server para usar GitHub Actions con ejecutores autohospedados. Para más información, consulta Habilitación de Dependabot para la empresa.
Configurar los ejecutores autohospedados para Dependabot updates
# Requisitos del sistema para ejecutores de 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}
]
}
Requisitos de red para ejecutores del Dependabot
Los ejecutores del Dependabot necesitan acceso al internet público, a GitHub.com y a cualquier registro interno que se 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.
Certificado de la configuración de los ejecutores de Dependabot
Si la instancia de GitHub Enterprise Server usa un certificado autofirmado o si Dependabot debe interactuar con registros que usan certificados autofirmados, esos certificados también deben instalarse en los ejecutores autohospedados que ejecutan trabajos de Dependabot. 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.
Agregar ejecutores autohospedados para actualizaciones del Dependabot
-
Puede aprovisionar ejecutores autohospedados en el nivel de repositorio, organización o empresa. Para más información, consulta Acerca de los 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 que solo pueden acceder a las redes internas que necesita el Dependabot.
- Instala los certificados autofirmados para la instancia de GitHub Enterprise Server o para los registros con los que Dependabot tendrá que interactuar.
- Configura Node.js para usar el mismo certificado. Para más información, consulta Solucionar problemas en las GitHub Actions de tu empresa.
-
Asigne una etiqueta
dependabot
a cada ejecutor que quiera que use el Dependabot. Para más información, consulta Uso de etiquetas con ejecutores autohospedados. -
Opcionalmente, habilite los flujos de trabajo que desencadena Dependabot para usar permisos que sean más que de solo lectura y tener acceso a los secretos que normalmente están disponibles. Para más información, consulta Solucionar problemas en las GitHub Actions de tu empresa.