Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Habilitar e inhabilitar las actualizaciones de versión

Puedes configurar tu repositorio para que el Dependabot de GitHub actualice automáticamente los paquetes que utilizas.

Las personas con permisos de escritura en un repositorio pueden habilitar o inhabilitar las Actualizaciones de versión para el Dependabot de GitHub para el mismo.

En este artículo

Nota: Las Actualizaciones de versión para el Dependabot de GitHub se encuentran actualmente en beta y están sujetas a cambios. Para utilizar la característica del beta, sigue las instrucciones en este artículo.

Acerca de las actualizaciones de versión para las dependencias

You enable Actualizaciones de versión para el Dependabot de GitHub by checking a dependabot.yml configuration file in to your repository's .github directory. Dependabot then raises pull requests to keep the dependencies you configure up-to-date. Para cada dependencia del administrador de paquete que quieras actualizar, debes especificar la ubicación de los archivos de manifiesto de dicho paquete, así como la periodicidad en la que quieres buscar actualizaciones para las dependencias listadas en esos archivos. Para obtener información acerca de las actualizaciones de seguridad, consulta la sección "Configurar las Actualizaciones de seguridad del Dependabot de GitHub".

Cuando habilitas las actualizaciones de versión por primera vez, podrías tener muchas dependencias desactualizadas y algunas podrían estar varias versiones debajo de la última. Dependabot de GitHub checks for outdated dependencies as soon as it's enabled. Podrías ver nuevas solicitudes de extracción para las actualizaciones de versión después de algunos minutos de haber agregado el archivo de configuración, dependiendo de la cantidad de archivos de manifiesto para los cuales configuras las actualizaciones.

To keep pull requests manageable and easy to review, Dependabot raises a maximum of five pull requests to start bringing dependencies up to the latest version. Si fusionas algunas de estas primeras solicitudes de extracción antes de la siguiente actualización programada, entonces se abrirá un máximo de cinco solicitudes para todas aquellas subsecuentes (puedes cambiar este límite). Para obtener más información, consulta la sección "Personalizar las actualizaciones de las dependencias".

Habilitar Actualizaciones de versión para el Dependabot de GitHub

Currently, Actualizaciones de versión para el Dependabot de GitHub doesn't support manifest or lock files that contain any private git dependencies or private git registries. This is because, when running version updates, Dependabot must be able to resolve all dependencies from their source to verify that version updates have been successful. However, if you want to enable version updates for dependency manifests or lock files that do contain private dependencies, you can still enable Dependabot preview.

  1. Crea un archivo de configuración dependabot.yml.
  2. Utiliza package-ecosystem para especificar los administradores de paquete que se deben monitorear.
  3. Para cada administrador de paquete, utiliza:
    • directory para especificar la ubicación del manifiesto u otros archivos de definición.
    • schedule.interval para especificar qué tan a menudo se debe revisar si hay nuevas versiones.
  4. Revisa el archivo de configuración dependabot.yml en el directorio .github del repositorio.

Archivo dependabot.yml de ejemplo

El archivo de ejemplo dependabot.yml que se muestra a continuación configura las actualizaciones de versión para dos administradores de paquete: npm y Docker. Cuando se registra este archivo, el Dependabot de GitHub revisa los archivos de manifiesto en la rama predeterminada par ver si hay dependencias desactualizadas. Si encuentra dependencias desactualizadas, levantará solicitudes de extracción contra la rama predeterminada para actualizar estas dependencias.

# Basic dependabot.yml file with
# minimum configuration for two package managers

version: 2
updates:
  # Enable version updates for npm
  - package-ecosystem: "npm"
    # Look for `package.json` and `lock` files in the `root` directory
    directory: "/"
    # Check the npm registry for updates every day (weekdays)
    schedule:
      interval: "daily"

  # Enable version updates for Docker
  - package-ecosystem: "docker"
    # Look for a `Dockerfile` in the `root` directory
    directory: "/"
    # Check for updates once a week
    schedule:
      interval: "weekly"

En el ejemplo anterior, si las dependencias de Docker estuvieran muy desactualizadas, tal vez quisieras comenzar con una programación de tipo daily hasta que las dependencias estén bien actualizadas y, posteriormente, tomar una programación semanal.

Habilitar las actualizaciones de versión en las bifurcaciones

Si quieres habilitar las actualizaciones de versión en las bifurcaciones, hay un paso extra que debes tomar. Las actualizaciones de versión no se habilitan automáticamente en las bifurcaciones cuando existe un archivo de configuración dependabot.yml. Esto garantiza que los dueños de la bifurcación no habiliten las actualizaciones de versión accidentalmente cuando suben cambios, incluyendo el archivo de configuración dependabot.yml del repositorio original.

En una bifurcación, también necesitas habilitar explícitamente el Dependabot de GitHub.

  1. En GitHub, visita la página principal del repositorio.
  2. Debajo de tu nombre de repositorio, da clic en Perspectivas.
    Pestaña de perspectivas en la barra de navegación del repositorio principal
  3. En la barra lateral izquierda, da clic en Gráfica de dependencias.
    Pestaña de gráfica de dependencias en la barra lateral izquierda
  4. Debajo de "Gráfica de dependencias", da clic en Dependabot.
    Gráfica de dependencias, pestaña de Dependabot
  5. Debajo de "Habilitar el Dependabot", da clic en Enable Dependabot.

Revisar el estado de las actualizaciones de versión

Después de que habilitas las actualizaciones de versión, verás una nueva pestaña de Dependabot en la gráfica de dependencias del repositorio. This tab shows which package managers Dependabot de GitHub is configured to monitor and when Dependabot last checked for new versions.

Pestaña de perspectivas de repositorio, gráfica de dependencias, pestaña de dependabot

For information, see "Listing dependencies configured for version updates."

Inhabilitar las Actualizaciones de versión para el Dependabot de GitHub

Puedes inhabilitar las actualizaciones de versión completamente si eliminas el archivo dependabot.yml de tu repositorio. Normalmente, tal vez quieras inhabilitar las actualizaciones temporalmente para una o más dependencias o administradores de paquete.

  • Administradores de paquete: inhabilítalas configurando open-pull-requests-limit: 0 o dejando de comentar el package-ecosystem relevante en el archivo de configuración.
  • Dependencias específicas: inhabilítalas agregando los atributos de ignore para los paquetes o aplicaciones que quieras excluir de las actualizaciones.

Cuando inhabilitas las dependencias, puedes utilizar comodines para empatar con un conjunto de bibliotecas relacionadas. También puedes especificar qué versiones excluir. Esto es particularmente útil si necesitas bloquear actualizaciones en una biblioteca, el trabajo pendiente para apoyar un cambio sustancial en su API, pero quieres quieres obtener cualquier arreglo de seguridad para la versión que utilices.

Ejemplo de inhabilitar las actualizaciones de versión para algunas dependencias

En este archivo de dependabot.yml de ejemplo se incluyen ejemplos de las formas diferentes para inhabilitar las actualizaciones en algunas dependencias, mientras que se permite que otras actualizaciones continuen.

# dependabot.yml file with updates
# disabled for Docker and limited for npm

version: 2
updates:
  # Configuration for Dockerfile
  - package-ecosystem: "docker"
    directory: "/"
    schedule:
      interval: "weekly"
      # Disable all pull requests for Docker dependencies
    open-pull-requests-limit: 0

  # Configuration for npm
  - package-ecosystem: "npm"
    directory: "/"
    schedule:
      interval: "daily"
    # Overwrite any ignores created using `@dependabot ignore` commands
    ignore:
      # Ignore updates to packages that start 'aws'
      # Wildcards match zero or more arbitrary characters
      - dependency-name: "aws*"
      # Ignore some updates to the 'express' package
      - dependency-name: "express"
        # Ignore only new versions for 4.x and 5.x
        versions: ["4.x", "5.x"]

Advertencia: Antes de que agregues una opción de ignore al archivo de configuración dependabot.yml, revisa si el repositorio ya tiene alguna preferencia de ignorar (Que se haya creado utilizando los comandos de @dependabot ignore). Cuando agregas una opción de ignore al archivo de configuración dependabot.yml, esto ignora cualquier preferencia de ignorar almacenada centralmente para ese administrador de paquetes, rama, y directorio.

Esto afecta a las actualizaciones tanto de seguridad como de versión.

Para obtener más información acerca de revisar si existen preferencias para ignorar, consulta la sección "Opciones de configuración para las actualizaciones de depdendencias".

Pregunta a una persona

¿No puedes encontrar lo que estás buscando?

Contáctanos