{"meta":{"title":"Configuration de mises à jour de version Dependabot","intro":"Vous pouvez configurer votre référentiel de sorte que Dependabot mette automatiquement à jour les packages que vous utilisez.","product":"Sécurité et qualité du code","breadcrumbs":[{"href":"/fr/code-security","title":"Sécurité et qualité du code"},{"href":"/fr/code-security/how-tos","title":"Guides pratiques"},{"href":"/fr/code-security/how-tos/secure-your-supply-chain","title":"Sécuriser votre chaîne d’approvisionnement"},{"href":"/fr/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies","title":"Sécurisez vos dépendances"},{"href":"/fr/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/configuring-dependabot-version-updates","title":"Configurer les mises à jour de versions"}],"documentType":"article"},"body":"# Configuration de mises à jour de version Dependabot\n\nVous pouvez configurer votre référentiel de sorte que Dependabot mette automatiquement à jour les packages que vous utilisez.\n\n<!--Marketing-LINK: From /features/security/software-supply-chain page \"About version updates for dependencies\".-->\n\n## Activation des Dependabot version updates\n\nVous activez les Dependabot version updates en validant un fichier de configuration `dependabot.yml` dans votre référentiel.\nSi vous activez la fonctionnalité dans votre page de paramètres, GitHub crée un fichier de base que vous pouvez modifier ; sinon vous pouvez créer le fichier en utilisant n’importe quel éditeur de fichiers.\n\n1. Sur GitHub, accédez à la page principale du référentiel.\n\n2. Sous le nom de votre référentiel, cliquez sur **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Paramètres**. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** , puis cliquez sur **Paramètres**.\n\n   ![Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.](/assets/images/help/repository/repo-actions-settings.png)\n\n3. Dans la section « Sécurité » de la barre latérale, cliquez sur **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-codescan\" aria-label=\"codescan\" role=\"img\"><path d=\"M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z\"></path><path d=\"M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z\"></path></svg> Advanced Security**.\n\n4. Sous « Dependabot », à droite de « Dependabot version updates », cliquez sur **Activer** pour ouvrir un fichier de configuration de base `dependabot.yml` dans le répertoire `.github` de votre référentiel. For information about the options you can use to customize how Dependabot maintains your repositories, see [Référence des options Dependabot](/fr/code-security/dependabot/working-with-dependabot/dependabot-options-reference).\n\n   ```yaml copy\n   # To get started with Dependabot version updates, you'll need to specify which\n   # package ecosystems to update and where the package manifests are located.\n\n   version: 2\n   updates:\n   - package-ecosystem: \"\" # See documentation for possible values\n     directory: \"/\" # Location of package manifests\n     schedule:\n       interval: \"weekly\"\n   ```\n\n5. Ajoutez une `version`. Cette clé est obligatoire. Le fichier doit commencer par `version: 2`.\n\n6. Si vous avez des dépendances dans un registre privé, vous pouvez ajouter une section `registries` contenant les détails de l’authentification. Pour plus d’informations, consultez « [Configuration de l’accès aux registres privés pour Dependabot](/fr/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot) ».\n\n7. Ajoutez une section `updates`, avec une entrée pour chaque gestionnaire de package à faire superviser par Dependabot. Cette clé est obligatoire. Vous l’utilisez pour configurer la façon dont Dependabot met à jour les versions ou les dépendances de votre projet. Chaque entrée configure les paramètres de mise à jour pour un gestionnaire de package particulier. Pour plus d’informations, consultez « [À propos du fichier dependabot.yml](/fr/code-security/concepts/supply-chain-security/about-the-dependabot-yml-file) » et « [Référence des options Dependabot](/fr/code-security/dependabot/working-with-dependabot/dependabot-options-reference) ».\n\n8. Pour chaque gestionnaire de package, utilisez :\n\n   * `package-ecosystem` pour spécifier le gestionnaire de package. Pour plus d’informations sur les gestionnaires de package pris en charge, consultez [`package-ecosystem`](/fr/code-security/dependabot/working-with-dependabot/dependabot-options-reference#package-ecosystem-).\n   * `directories` ou `directory` pour spécifier l’emplacement de plusieurs manifestes ou d’autres fichiers de définition. Pour plus d’informations, consultez [Définition de plusieurs emplacements pour les fichiers manifestes](/fr/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#defining-multiple-locations-for-manifest-files).\n   * `schedule.interval` pour spécifier la fréquence à laquelle rechercher les nouvelles versions.\n\n9. Vérifiez le fichier de configuration *dependabot.yml* dans le répertoire `.github` du référentiel.\n\n### Exemple de fichier `dependabot.yml`\n\nL’exemple de fichier `dependabot.yml` ci-dessous configure les mises à jour de version pour trois gestionnaires de paquets : npm, Docker et GitHub Actions. Quand ce fichier est archivé, Dependabot vérifie si les fichiers manifestes sur la branche par défaut contiennent des dépendances obsolètes. S’il trouve des dépendances obsolètes, il déclenche des demandes de tirage par rapport à la branche par défaut pour mettre à jour les dépendances.\n\n```yaml copy\n# Basic `dependabot.yml` file with\n# minimum configuration for three package managers\n\nversion: 2\nupdates:\n  # Enable version updates for npm\n  - package-ecosystem: \"npm\"\n    # Look for `package.json` and `lock` files in the `root` directory\n    directory: \"/\"\n    # Check the npm registry for updates every day (weekdays)\n    schedule:\n      interval: \"daily\"\n\n  # Enable version updates for Docker\n  - package-ecosystem: \"docker\"\n    # Look for a `Dockerfile` in the `root` directory\n    directory: \"/\"\n    # Check for updates once a week\n    schedule:\n      interval: \"weekly\"\n\n  # Enable version updates for GitHub Actions\n  - package-ecosystem: \"github-actions\"\n    # Workflow files stored in the default location of `.github/workflows`\n    # You don't need to specify `/.github/workflows` for `directory`. You can use `directory: \"/\"`.\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n```\n\nDans l’exemple ci-dessus, si les dépendances Docker étaient très obsolètes, vous pourriez commencer par une planification `daily` jusqu’à ce que les dépendances soient à jour, puis revenir à une planification hebdomadaire.\n\n## Activation des mises à jour de version sur les duplications (forks)\n\nSi vous souhaitez activer les mises à jour de version sur les duplications, il existe une étape supplémentaire. Les mises à jour de version ne sont pas automatiquement activées sur les duplications quand un fichier de configuration `dependabot.yml` est présent. Cela garantit que les propriétaires de duplication n’activent pas involontairement les mises à jour de version quand ils tirent (pull) des modifications incluant un fichier de configuration `dependabot.yml` à partir du dépôt d’origine.\n\nSur une duplication, vous devez également activer explicitement Dependabot.\n\n1. Sur GitHub, accédez à la page principale du référentiel.\n2. Sous le nom de votre référentiel, cliquez sur **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Paramètres**. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** , puis cliquez sur **Paramètres**.\n\n   ![Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.](/assets/images/help/repository/repo-actions-settings.png)\n3. Dans la section « Sécurité » de la barre latérale, cliquez sur **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-codescan\" aria-label=\"codescan\" role=\"img\"><path d=\"M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z\"></path><path d=\"M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z\"></path></svg> Advanced Security**.\n4. Sous « Dependabot », à droite de « Dependabot version updates », cliquez sur **Activer** pour permettre à Dependabot d'initier des mises à jour de version.\n\n## Réception de mises à jour pour les dépendances indirectes\n\nPar défaut, seules les dépendances directes définies explicitement dans un manifeste sont conservées à jour par Dependabot version updates. Vous pouvez choisir de recevoir des mises à jour pour les dépendances indirectes définies dans les fichiers de verrouillage. Pour plus d’informations, consultez « [Contrôle des dépendances mises à jour par Dependabot](/fr/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#allowing-specific-dependencies-to-be-updated) ».\n\n## Autorisation de l’accès aux dépendances privées\n\nLors de l’exécution de mises à jour de sécurité ou de version, certains écosystèmes doivent être capables de résoudre toutes les dépendances de leur source pour vérifier que les mises à jour ont réussi. Si vos fichiers manifeste ou de verrouillage contiennent des dépendances privées, Dependabot doit être capable d’accéder à l’emplacement auquel ces dépendances sont hébergées. Les propriétaires de l’organisation peuvent octroyer à Dependabot un accès aux dépôts privés contenant des dépendances pour un projet au sein de cette même organisation. Pour plus d’informations, consultez « [Gestion des paramètres de sécurité et d'analyse pour votre organisation](/fr/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private-dependencies) ». Vous pouvez configurer un accès aux registres privés dans le fichier de configuration `dependabot.yml` d’un dépôt. Pour plus d’informations, consultez « [Configuration de l’accès aux registres privés pour Dependabot](/fr/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot) ».\n\nDe plus, Dependabot ne prend pas en charge les dépendances GitHub privées pour tous les gestionnaires de package. Pour plus d’informations, consultez « [Écosystèmes et référentiels pris en charge par Dependabot](/fr/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories) » et « [prise en charge de la langue GitHub](/fr/get-started/learning-about-github/github-language-support) ».\n\n## Vérification de l’état des mises à jour de version\n\nUne fois que vous avez activé les mises à jour de version, l’onglet **Dependabot** dans le graphe de dépendances du dépôt est rempli. Cet onglet indique quels sont les gestionnaires de packages que Dependabot doit superviser et quand Dependabot a recherché les nouvelles versions pour la dernière fois.\n\n![Capture d’écran de la page Graphe des dépendances. Un onglet intitulé « Dependabot » est mis en évidence avec un encadré orange.](/assets/images/help/dependabot/dependabot-tab-view.png)\n\nPour plus d'informations, veuillez consulter la section [Liste des dépendances configurées pour les mises à jour de version](/fr/code-security/dependabot/troubleshooting-dependabot/listing-dependencies-configured-for-version-updates).\n\n## Désactivation des Dependabot version updates\n\nVous pouvez désactiver entièrement les mises à jour de version en supprimant le fichier `dependabot.yml` de votre référentiel. Plus généralement, vous souhaitez désactiver temporairement les mises à jour pour une ou plusieurs dépendances ou gestionnaires de packages.\n\n* Gestionnaires de packages : effectuez la désactivation en définissant `open-pull-requests-limit: 0` ou en commentant l’élément `package-ecosystem` approprié dans le fichier de configuration.\n* Dépendances spécifiques : effectuez la désactivation en ajoutant des attributs `ignore` pour les packages ou les applications que vous souhaitez exclure des mises à jour.\n\nQuand vous désactivez les dépendances, vous pouvez utiliser des caractères génériques pour désigner un ensemble de bibliothèques associées. Vous pouvez également spécifier les versions à exclure. Cela est particulièrement utile si vous devez bloquer les mises à jour d’une bibliothèque, en attente d’un travail permettant de prendre en charge un changement cassant de son API, mais que vous souhaitez obtenir des correctifs de sécurité pour la version que vous utilisez.\n\n### Exemple de désactivation des mises à jour de version pour certaines dépendances\n\nL’exemple de fichier `dependabot.yml` ci-dessous inclut des exemples des différentes façons de désactiver les mises à jour de certaines dépendances, tout en permettant la poursuite des autres mises à jour.\n\n```yaml\n# `dependabot.yml` file with updates\n# disabled for Docker and limited for npm\n\nversion: 2\nupdates:\n  # Configuration for Dockerfile\n  - package-ecosystem: \"docker\"\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n      # Disable all pull requests for Docker dependencies\n    open-pull-requests-limit: 0\n\n  # Configuration for npm\n  - package-ecosystem: \"npm\"\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n    ignore:\n      # Ignore updates to packages that start with 'aws'\n      # Wildcards match zero or more arbitrary characters\n      - dependency-name: \"aws*\"\n      # Ignore some updates to the 'express' package\n      - dependency-name: \"express\"\n        # Ignore only new versions for 4.x and 5.x\n        versions: [\"4.x\", \"5.x\"]\n      # For all packages, ignore all patch updates\n      - dependency-name: \"*\"\n        update-types: [\"version-update:semver-patch\"]\n```\n\nPour savoir si des préférences « ignore » sont appliquées, consultez [Référence des options Dependabot](/fr/code-security/dependabot/working-with-dependabot/dependabot-options-reference#ignore--)."}