Skip to main content

Administración de Dependabot en ejecutores de prueba interna

Puede configurar ejecutores de prueba interna que Dependabot usa para acceder a los registros privados y a los recursos de red internos.

¿Quién puede utilizar esta característica?

Administradores de repositorios y propietarios de la organización

Acerca de Dependabot en ejecutores de prueba interna GitHub Actions

Si habilita Dependabot en un repositorio nuevo pero tiene GitHub Actions habilitado, Dependabot se ejecutará en la aplicación heredada en GitHub Enterprise Cloud para llevar a cabo Dependabot updates.

Si habilita Dependabot en un repositorio nuevo pero tiene GitHub Actions deshabilitado, Dependabot se ejecutará en la aplicación heredada en GitHub Enterprise Cloud para llevar a cabo Dependabot updates. Esto no proporciona un buen rendimiento, visibilidad ni control de los trabajos de Dependabot updates como lo hace GitHub Actions. Si desea usar Dependabot con GitHub Actions, debe asegurarse de que el repositorio permite GitHub Actions, habilite "Dependabot en ejecutores de acciones" de la página de configuración "Seguridad y análisis de código". Para obtener más información, consulte "Acerca de Dependabot en ejecutores de Acciones de GitHub".

Note

Las versiones futuras de GitHub siempre ejecutarán Dependabot mediante GitHub Actions, y ya no tendrá la opción de habilitar o deshabilitar esta configuración.

Puedes ayudar a los usuarios de su organización y repositorios 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. La ejecución de Dependabot en GitHub Actions permite mejorar el rendimiento y aumentar la visibilidad y el control de los trabajos de Dependabot.

Note

Dependabot no admite el uso de redes privadas con una instancia de Azure Virtual Network (VNET) o Actions Runner Controller (ARC).

Para tener un mayor control sobre el acceso de Dependabot a los registros privados y a los recursos de red internos, puede configurar Dependabot para que se ejecute en los ejecutores de prueba interna de GitHub Actions.

Por motivos de seguridad, al ejecutar Dependabot en los ejecutores de prueba interna de GitHub Actions, Dependabot updates no se ejecutará en repositorios públicos.

Para obtener más información sobre cómo configurar el acceso de Dependabot a registros privados al usar ejecutores hospedados de GitHub, vea "Guía para la configuración de registros privados para Dependabot". Para obtener información sobre qué ecosistemas se admiten como registros privados, consulta "Eliminación del acceso de Dependabot a registros públicos".

Requisitos previos

Debe asegurarse de tener Dependabot instalado y habilitado, y GitHub Actions está habilitado y en uso. La configuración de "Dependabot en ejecutores GitHub Actions de la organización también debe estar habilitada. Para obtener más información, vea «Acerca de Dependabot en ejecutores de Acciones de GitHub».

Es posible que su organización haya configurado una directiva para restringir las acciones y los ejecutores de prueba interna e impedir que se ejecuten en repositorios específicos, lo que a su vez no permitirá que Dependabot se ejecute en ejecutores de prueba interna de GitHub Actions. En este caso, la configuración de nivel de organización o repositorio para habilitar "Dependabot en ejecutores de prueba interna" no estará visible en la interfaz de usuario web. Para obtener más información, vea «Inhabilitar o limitar GitHub Actions para tu organización».

Al aplicar una directiva para permitir acciones y flujos de trabajo reutilizables en su empresa, y habilitar Dependabot en GitHub Actions, Dependabot no se ejecutará. Para permitir que Dependabot se ejecute con las acciones empresariales y los flujos de trabajo reutilizables, debe elegir permitir acciones creadas por GitHub, o permitir las acciones y flujos de trabajo reutilizables especificados. Para obtener más información, vea «Requerir políticas para las GitHub Actions en tu empresa».

Configurar los ejecutores autohospedados para Dependabot updates

Después de configurar la organización o el repositorio para ejecutar Dependabot en GitHub Actions, y antes de habilitar Dependabot en ejecutores de prueba interna, debe configurar ejecutores de prueba interna 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.

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.

También debes permitir el tráfico saliente a dependabot-actions.githubapp.com para evitar que se produzcan errores en los trabajos para Dependabot security updates. Para obtener más información, vea «Acerca de los ejecutores autohospedados».

Certificado de la configuración de los ejecutores de Dependabot

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

  1. Aprovisione ejecutores de prueba interna en el nivel de repositorio u organización. Para obtener más información, vea «Acerca de los ejecutores autohospedados» y «Agrega ejecutores auto-hospedados».

  2. 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:

  3. Asigne una etiqueta dependabot a cada ejecutor que quiera que use el Dependabot. Para obtener más información, vea «Uso de etiquetas con ejecutores autohospedados».

  4. 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 obtener más información, vea «Automatizar al Dependabot con las GitHub Actions».

Habilitar los ejecutores autohospedados para Dependabot updates

Una vez que haya configurado ejecutores de prueba interna para Dependabot updates, puede habilitar o deshabilitar Dependabot updates en ejecutores de prueba interna en el nivel de organización o repositorio.

Tenga en cuenta que deshabilitar y volver a habilitar "Dependabot en ejecutores de prueba interna" no desencadenará una nueva ejecución de Dependabot.

Habilitar o deshabilitar el repositorio

Puede administrar Dependabot en ejecutores de prueba interna para el repositorio público, privado o interno.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la sección "Seguridad" de la barra lateral, haga clic en Análisis y seguridad del código.

  4. En "Dependabot", a la derecha de "Dependabot en ejecutores autohospedados", haz clic en Habilitar para habilitar la característica o Deshabilitar para deshabilitarla.

Habilitar o deshabilitar en una organización

Puedes habilitar Dependabot en ejecutores de prueba interna para todos los repositorios privados o internos de una organización. Solo se actualizarán los repositorios ya configurados para ejecutar Dependabot en GitHub Actions para ejecutar Dependabot en ejecutores de prueba interna la próxima vez que un trabajo de Dependabot se desencadene.

Note

Debe habilitar ejecutores autohospedados para su organización si usa ejecutores más grandes. Para obtener más información, vea «Acerca de Dependabot en ejecutores de Acciones de GitHub».

  1. En la esquina superior derecha de GitHub, seleccione la foto del perfil y haga clic en Sus organizaciones.
  2. Junto a la organización, haga clic en Settings.
  3. En la sección "Seguridad" de la barra lateral, haga clic en Código seguridad y a continuación en Configuración global.
  4. En "Dependabot", seleccione "Dependabot en ejecutores autohospedados" para habilitar la característica o cancele la selección para deshabilitarla. Esta acción habilita o deshabilita la característica para todos los repositorios nuevos de la organización.

Para obtener más información, vea «Configuración de seguridad global para su organización».