Skip to main content

Справочник по параметрам зависимостей

Подробная информация обо всех опциях, которые можно использовать для настройки способов Dependabot обслуживания ваших репозиториев.

Кто может использовать эту функцию?

Users with write access

В этой статье

В этой статье приведена справочная информация по параметрам конфигурации, доступным в dependabot.yml файле. Используйте эти параметры, чтобы настраивать мониторинг Dependabot упаковки экосистем, планировать обновления и создавать pull requests. Для обзора dependabot.yml файла и его работы смотрите О файле dependabot.yml.

Все опции, отмеченные иконкой, также меняют способ Dependabot создания pull-запросов на обновления безопасности, за исключением случаев, где target-branch это используется.

Обязательные ключи

KeyМестоположениеЦель
versionВерхний уровень
          Dependabot Использовать синтаксис конфигурации. Всегда: `2`.|

| updates | Верхний уровень| Раздел, в котором определяется каждый package-ecosystem из них для обновления.| | package-ecosystem | в разделе updates | Определите диспетчер пакетов для обновления. | | directories или directory | Под каждой package-ecosystem записью | Определите расположение манифеста или других файлов определений для обновления. | | schedule.interval | Под каждой package-ecosystem записью | Определите, следует ли искать обновления версий: daily, weeklyили monthly. |

Кроме того, можно включить ключ верхнего уровня registries для определения сведений о доступе для частных реестров, смregistries верхнего уровня".

YAML

# 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"

Для реального примера dependabot.yml файла см. Dependabotсобственный конфигурационный файл .

          `allow`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Используется для определения точного определения зависимостей, которые следует поддерживать для экосистемы пакетов. Часто используется с параметром ignore . Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          Dependabot Поведение по умолчанию:

* Все зависимости, явно определённые в манифесте, поддерживаются в актуальном состоянии с помощью обновлений версий. * Все зависимости, определённые в файлах блокировки с уязвимыми зависимостями, обновляются с помощью обновлений безопасности.

При allow задании Dependabot используется следующий процесс:

  1. Проверьте наличие всех явно разрешенных зависимостей.

  2. Затем отфильтруйте все игнорируемые зависимости или версии.

    Если зависимость соответствует allow оператору и операторуignore, он игнорируется****.

ПараметрыЦель
dependency-nameРазрешить обновления зависимостей с соответствующими именами, при необходимости используя * для сопоставления ноль или более символов.
dependency-typeРазрешить обновления для зависимостей определенных типов.
update-typesРазрешить обновления одного или нескольких уровней семантического версионирования. Поддерживаемые значения: version-update:semver-patch, version-update:semver-minorи version-update:semver-major.

          `dependency-name` (`allow`)

Для большинства диспетчеров пакетов необходимо определить значение, соответствующее имени зависимости, указанному в файле блокировки или манифеста. Некоторые системы имеют более сложные требования.

Диспетчер пакетовОбязательный форматExample
Gradle и MavengroupId:artifactIdorg.kohsuke:github-api
Docker для тегов изображенийПолное имя репозиторияДля тега <account ID>.dkr.ecr.us-west-2.amazonaws.com/base/foo/bar/ruby:3.1.0-focal-jemallocизображения используйте base/foo/bar/ruby.

          `dependency-type` (`allow`)
Типы зависимостейПоддерживаемые диспетчерами пакетовРазрешить обновления
directAllВсе явно определенные зависимости.
indirect
          `bundler`, `pip`, `composer`, `cargo`, `gomod`, `uv` | Зависимости прямых зависимостей (также известные как подзависимости или транзитивные зависимости).|

| all | All | Все явно определенные зависимости. Для bundler, pip, composer,cargo``gomod``uv также зависимости прямых зависимостей.| | production | bundler, composer, mix, maven``npm, pip, , ( uv не все менеджеры) | Только для зависимостей, определенных диспетчером пакетов в качестве рабочих зависимостей. | | development| bundler, composer, mix, maven``npm, pip, , ( uv не все менеджеры) | Только для зависимостей, определенных диспетчером пакетов в качестве зависимостей разработки. |

          `update-types` (`allow`)

          `update-types` Влияет только на _обновления версий_ , а не _на обновления безопасности_.

Укажите, какие семантические версии (SemVer) разрешать.

SemVer является принятым стандартом для определения версий программных пакетов в форме x.y.z. Dependabot предполагает, что версии в этой форме всегда major.minor.patchявляются . Значение update-types представляет собой список одной или нескольких строк.

  • Используйте version-update:semver-patch для разрешения релизов патчей.
  • Используйте version-update:semver-minor для разрешения незначительных релизов.
  • Используйте version-update:semver-major для разрешения крупных релизов.

Если update-types в правиле allow исключено, разрешены все типы обновлений для этого правила.

Вы можете объединять update-types с dependency-name разрешёнными обновлениями или dependency-type ещё больше сузить. Примеры того, как можно объединить эти опции, см. Управление обновлениями зависимостей с помощью Dependabot.

          `assignees`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Укажите отдельные назначаемый объект для всех запросов на вытягивание, поднятых для экосистемы пакетов. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:
  • Запросы на вытягивание создаются без назначаемого пользователя.

При assignees определении:

  •         <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-versions" aria-label="versions" role="img"><path d="M7.75 14A1.75 1.75 0 0 1 6 12.25v-8.5C6 2.784 6.784 2 7.75 2h6.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 14Zm-.25-1.75c0 .138.112.25.25.25h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25h-6.5a.25.25 0 0 0-.25.25ZM4.9 3.508a.75.75 0 0 1-.274 1.025.249.249 0 0 0-.126.217v6.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.75 1.75 0 0 1 3 11.25v-6.5c0-.649.353-1.214.874-1.516a.75.75 0 0 1 1.025.274ZM1.625 5.533h.001a.249.249 0 0 0-.126.217v4.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.748 1.748 0 0 1 0 10.25v-4.5a1.748 1.748 0 0 1 .873-1.516.75.75 0 1 1 .752 1.299Z"></path></svg> Все pull-запросы на обновления версий создаются с выбранными присваивателями.
    
  •         <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield-check" aria-label="shield-check" role="img"><path d="m8.533.133 5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667l5.25-1.68a1.748 1.748 0 0 1 1.066 0Zm-.61 1.429.001.001-5.25 1.68a.251.251 0 0 0-.174.237V7c0 1.36.275 2.666 1.057 3.859.784 1.194 2.121 2.342 4.366 3.298a.196.196 0 0 0 .154 0c2.245-.957 3.582-2.103 4.366-3.297C13.225 9.666 13.5 8.358 13.5 7V3.48a.25.25 0 0 0-.174-.238l-5.25-1.68a.25.25 0 0 0-.153 0ZM11.28 6.28l-3.5 3.5a.75.75 0 0 1-1.06 0l-1.5-1.5a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l.97.97 2.97-2.97a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg> Все pull-запросы на обновления безопасности создаются с выбранными присваивателями, если `target-branch` только не определяется обновление для нестандартной ветки.
    

Назначаемы должны иметь доступ на запись в репозиторий. Для репозиториев, принадлежащих организации, члены организации с доступом на чтение также являются допустимыми назначаемыми.

          `commit-message`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Определите формат для сообщений фиксации. Так как заголовки запросов на вытягивание записываются на основе сообщений о фиксации, этот параметр также влияет на заголовки запросов на вытягивание. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:
  • Фиксация сообщений соответствует аналогичным шаблонам, обнаруженным в репозитории.

При commit-message определении:

  •         <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-versions" aria-label="versions" role="img"><path d="M7.75 14A1.75 1.75 0 0 1 6 12.25v-8.5C6 2.784 6.784 2 7.75 2h6.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 14Zm-.25-1.75c0 .138.112.25.25.25h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25h-6.5a.25.25 0 0 0-.25.25ZM4.9 3.508a.75.75 0 0 1-.274 1.025.249.249 0 0 0-.126.217v6.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.75 1.75 0 0 1 3 11.25v-6.5c0-.649.353-1.214.874-1.516a.75.75 0 0 1 1.025.274ZM1.625 5.533h.001a.249.249 0 0 0-.126.217v4.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.748 1.748 0 0 1 0 10.25v-4.5a1.748 1.748 0 0 1 .873-1.516.75.75 0 1 1 .752 1.299Z"></path></svg> Все коммит-сообщения следуют определённому шаблону.
    
  •         <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield-check" aria-label="shield-check" role="img"><path d="m8.533.133 5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667l5.25-1.68a1.748 1.748 0 0 1 1.066 0Zm-.61 1.429.001.001-5.25 1.68a.251.251 0 0 0-.174.237V7c0 1.36.275 2.666 1.057 3.859.784 1.194 2.121 2.342 4.366 3.298a.196.196 0 0 0 .154 0c2.245-.957 3.582-2.103 4.366-3.297C13.225 9.666 13.5 8.358 13.5 7V3.48a.25.25 0 0 0-.174-.238l-5.25-1.68a.25.25 0 0 0-.153 0ZM11.28 6.28l-3.5 3.5a.75.75 0 0 1-1.06 0l-1.5-1.5a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l.97.97 2.97-2.97a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg> Все коммит-сообщения следуют определённому шаблону, если только `target-branch` не обновляется в нестандартную ветку.
    
ПараметрыЦель
prefixОпределяет префикс для всех сообщений фиксации и заголовков запросов на вытягивание.
prefix-developmentВ поддерживаемых системах определяет другой префикс, используемый для фиксаций, которые обновляют зависимости в группе зависимостей разработки.
includeСледуйте префиксу сообщения фиксации с дополнительными сведениями.

Совет

Когда запросы на вытягивание создаются для группированных обновлений, имя ветви и название запроса на вытягивание определяются группойIDENTIFIER, см. в разделеgroups .

prefix

  • Используется для всех сообщений фиксации, если prefix-development не определено.
  • Значение может составлять до 50 символов.
  •         Dependabot вставляет двоеточие после префикса перед добавлением основного сообщения фиксации, когда значение заканчивается буквой, цифрой, закрывающей скобкой или заключительной скобкой.
    
  • Завершите значение символом пробела, чтобы остановить добавление двоеточия.

prefix-development

Поддерживается: bundler, composer, mix, maven, npm``pip, , и uv.

  • Используется только для сообщений фиксации, обновляющих зависимости в группе зависимостей разработки.
  • В противном случае параметр ведет себя точно так же, как prefix и параметр.

include

  • Поддерживает только значение scope
  • При определении любого префикса следует тип зависимостей, обновленных в фиксации: deps или deps-dev.

          `cooldown`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

          **Определяет период** охлаждения для обновлений зависимостей, что позволяет отложить обновления в течение настраиваемого количества дней. Эта `cooldown` опция доступна только для обновлений _версий_ , но не для _обновлений безопасности_ .

Эта функция позволяет пользователям настраивать частоту Dependabot генерации обновлений новых версий, обеспечивая больший контроль над частотой обновлений. Примеры см. в разделе Оптимизация создания запросов на вытягивание обновлений версий Dependabot.

          Dependabot Поведение по умолчанию:
  • Проверьте наличие обновлений в соответствии с запланированным путем schedule.interval.
  • Рассмотрите все новые версии немедленно** для обновлений**.

При cooldown определении:

  1.        Dependabot Проверяет наличие обновлений в соответствии с определёнными `schedule.interval` настройками.
    
  2.        Dependabot Проверяет настройки перезарядки.
    
  3. Если новый релиз зависимости соответствует периоду восстановления, Dependabot пропускает обновление версии для этой зависимости.
  4. Зависимости без периода охлаждения или тех, кто за прошлый период охлаждения, обновляются до последней версии в соответствии с настроенным versioning-strategy параметром.
  5. После окончания перезарядки зависимости Dependabot обновляется по стандартной стратегии обновления, определённой в dependabot.yml.

          **Конфигурация `cooldown`**

Можно указать длительность охлаждения, используя приведенные ниже параметры.

ПараметрDescription
default-days
          **Период охлаждения по умолчанию для зависимостей без определенных** правил (необязательно). |

| semver-major-days | Период охлаждения для обновлений основных версий (необязательно, применяется только к диспетчерам пакетов, поддерживающим SemVer). | | semver-minor-days | Период охлаждения для дополнительных обновлений версий (необязательно, применяется только к диспетчерам пакетов, поддерживающим SemVer). | | semver-patch-days | Период охлаждения для обновлений версий исправлений (необязательно, применяется только к диспетчерам пакетов, поддерживающим SemVer). | | include | Список зависимостей для применения охлаждения (до 150 элементов). Поддерживает подстановочные знаки (*). | | exclude | Список зависимостей, исключенных из прохладной очистки **** (до 150 элементов). Поддерживает подстановочные знаки (*). |

В таблице ниже показаны диспетчеры пакетов, для которых поддерживается SemVer.

Диспетчер пакетовПоддерживается SemVer
Базель
Средство увязки программ в пакеты
Булочка
Груз
Composer
Devcontainers
Докер
Docker Compose
Dotnet SDK
Elm
GitHub Actions
Gitsubmodule
Gomod (Модули Go)
Gradle (Грэйдл)
Штурвал
Шестнадцатеричное (шестнадцатеричное)
Julia
Мейвен
NPM и Yarn
NuGet
OpenTofu
PIP
Кабак
Swift
Terraform
УЛЬТРАФИОЛЕТОВЫЙ

Примечание.

  • Если semver-major-days, semver-minor-daysили semver-patch-days не определены, default-days параметры будут иметь приоритет для обновлений на основе охлаждения.
  • Список exclude всегда имеет приоритет над списком include . Если зависимость указана в обоих списках, она исключается из прохладной работы и будет немедленно обновлена.

          `directories` или `directory`<svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg><svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>

          **Обязательный параметр**. Используется для определения расположения манифестов пакета для каждого диспетчера пакетов (например, _package.json_ или _Gemfile_). Без этой информации Dependabot нельзя создавать pull requests на обновления версий. Примеры см. в разделе ["Определение нескольких расположений для файлов](/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#defining-multiple-locations-for-manifest-files) манифеста".
  • Используется directory для определения одного каталога манифестов.

  • Используется directories для определения списка нескольких каталогов манифестов.

  • Определите каталоги относительно корневого каталога репозитория для большинства диспетчеров пакетов.

  • Для GitHub Actions, используйте значение /. Dependabot будет искать в /.github/workflows каталоге, а также по action.yml/action.yaml файлу из корневой директории.

Если необходимо использовать несколько блоков в файле конфигурации для определения обновлений для одной целевой ветви экосистемы, необходимо убедиться, что все значения уникальны и не перекрываются в каталогах.

Примечание.

Ключ directories поддерживает глоббинг и подстановочный знак *. Эти функции не поддерживаются ключом directory .

          `enable-beta-ecosystems`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

В настоящее время не используется.

          `groups`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Определите правила для создания одного или нескольких наборов зависимостей, управляемых диспетчером пакетов, чтобы группировать обновления в меньшее количество целевых запросов на вытягивание. Примеры см. в разделе Оптимизация создания запросов на вытягивание обновлений версий Dependabot.

          Dependabot Поведение по умолчанию:
  • Откройте один запрос на вытягивание для каждой зависимости, которая должна быть обновлена до более новой версии для обновлений версий и обновлений системы безопасности.

Когда groups используется для определения правил:

  • Все обновления зависимостей, которые соответствуют правилу, объединяются в одном запросе на вытягивание.
  • Если зависимость соответствует нескольким правилам, она включена в первую группу, которая соответствует ей.
  • Все устаревшие зависимости, которые не соответствуют правилу, обновляются в отдельных запросах на вытягивание.
ПараметрыЦель
IDENTIFIERОпределите идентификатор группы для использования в именах ветвей и заголовках запросов на вытягивание. Это должно начинаться и заканчиваться буквами, а также содержать буквы, каналы |, подчеркивания _или дефисы -.
applies-toУкажите тип обновления, к которому применяется группа. Если не определено, по умолчанию обновляется версия. Поддерживаемые значения: version-updates или security-updates.
dependency-typeОграничить группу типом. Поддерживаемые значения: development или production.
exclude-patternsОпределите один или несколько шаблонов, чтобы исключить зависимости из группы.
group-byГрупповые обновления в нескольких каталогах. Поддерживаемое значение: dependency-name.
patternsОпределите один или несколько шаблонов для включения зависимостей с соответствующими именами.
update-typesОграничить группу одним или несколькими уровнями семантического управления версиями. Поддерживаемые значения: minor, patchи major.

          `dependency-type` (`groups`)

Поддерживается: bundler, , composer``mix, maven, npmи pip.

По умолчанию группа будет включать все типы зависимостей.

  • Используется development для включения только зависимостей в группу зависимостей разработки.
  • Используется production для включения только зависимостей в рабочую группу зависимостей.

          `group-by` (`groups`)

Используйте groups.<group-name>.group-by для указания, как Dependabot групповые обновления должны быть в нескольких каталогах в монорепозитории.

  •         **Тип:** Струна
    
  •         **Принятые ценности:**`dependency-name`
    
  •         **Относится к:** Конфигурации с множеством указанных каталогов
    

При установке на dependency-name, Dependabot для каждого обновления зависимостей создаётся один пулл-запрос для всех указанных каталогов, а не отдельные pull requests для каждого каталога.

          **Ограничения межкаталоговой группировки**

Применяя group-by: dependency-name, помните следующие правила.

  • Все каталоги должны использовать одну и ту же экосистему пакетов (например, все npm или все bundler)
  •         **Применяется только к обновлениям версий**
    
  • Если в каталогах есть несовместимые версионные ограничения для зависимости, Dependabot создаются отдельные pull requests

Для примеров использования group-by, см. Оптимизация создания запросов на вытягивание обновлений версий Dependabot.

          `patterns` и `exclude-patterns` (`groups`)

Оба варианта поддерживают использование * в качестве подстановочной карточки для определения совпадений с именами зависимостей. Если зависимость совпадает как с шаблоном, так и с шаблоном исключения, она исключается из группы.

          `update-types` (`groups`)

По умолчанию группа будет включать обновления для всех семантических версий (SemVer). SemVer является принятым стандартом для определения версий программных пакетов в форме x.y.z. Dependabot предполагает, что версии в этой форме всегда major.minor.patchдоступны.

  • Используется patch для включения выпусков исправлений.
  • Используется minor для включения дополнительных выпусков.
  • Используется major для включения основных выпусков.

Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          `ignore`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Используйте параметр, allow чтобы определить точно, какие зависимости следует поддерживать для экосистемы пакетов. Dependabot проверяет все разрешённые зависимости, а затем фильтрует любые игнорированные зависимости или версии. Таким образом, зависимость, соответствующая как разрешением, так и игнорировать, будет игнорироваться. Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          Dependabot Поведение по умолчанию:

* Все зависимости, явно определённые в манифесте, поддерживаются в актуальном состоянии с помощью обновлений версий. * Все зависимости, определённые в файлах блокировки с уязвимыми зависимостями, обновляются с помощью обновлений безопасности.

При ignore использовании Dependabot используется следующий процесс:

  1. Проверьте наличие всех явно разрешенных зависимостей.

  2. Затем отфильтруйте все игнорируемые зависимости или версии.

    Если зависимость соответствует allow оператору и операторуignore, он игнорируется****.

ПараметрыЦель
dependency-nameИгнорируйте обновления зависимостей с именами сопоставления, при необходимости используя * для сопоставления ноль или более символов.
versionsИгнорировать определенные версии или диапазоны версий.
update-typesИгнорировать обновления на одном или нескольких уровнях семантического управления версиями. Поддерживаемые значения: version-update:semver-patch, version-update:semver-minorи version-update:semver-major.

          `dependency-name` (`ignore`)

Для большинства диспетчеров пакетов необходимо определить значение, соответствующее имени зависимости, указанному в файле блокировки или манифеста. Некоторые системы имеют более сложные требования.

Диспетчер пакетовОбязательный форматExample
Gradle и MavengroupId:artifactIdorg.kohsuke:github-api
Docker для тегов изображенийПолное имя репозиторияДля тега <account ID>.dkr.ecr.us-west-2.amazonaws.com/base/foo/bar/ruby:3.1.0-focal-jemallocизображения используйте base/foo/bar/ruby.

          `versions` (`ignore`)

Используйте для пропуска определенных версий или диапазонов версий. Если вы хотите определить диапазон, используйте стандартный шаблон для диспетчера пакетов. Рассмотрим пример.

  • npm: использование ^1.0.0
  • Пакет: использование ~> 2.0
  • Docker: использование синтаксиса версии пакета
  • NuGet: использование 7.*
  • Maven: использование [1.4,)

Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          `update-types` (`ignore`)

Укажите, какие семантические версии (SemVer) следует игнорировать. SemVer является принятым стандартом для определения версий программных пакетов в форме x.y.z. Dependabot предполагает, что версии в этой форме всегда major.minor.patchявляются .

  • Используется version-update:semver-patch для включения выпусков исправлений.
  • Используется version-update:semver-minor для включения дополнительных выпусков.
  • Используется version-update:semver-major для включения основных выпусков.

          `insecure-external-code-execution`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Поддерживается: bundler, mix и pip.

Разрешить Dependabot выполнять внешний код в манифесте во время обновлений. Примеры см. в разделе "Разрешение выполнения внешнего кода".

          Dependabot Поведение по умолчанию:
  • Когда вы предоставляете Dependabot доступ к одному или нескольким реестрам, внешний код автоматически отключается для защиты вашего кода от скомпрометированных пакетов.
  • Обновления версий могут завершиться ошибкой без возможности выполнения кода.

Если вы разрешаете insecure-external-code-execution:

  •         Dependabot будет выполнять код в манифесте в рамках процесса обновления версии.
    
  • Код имеет доступ только к диспетчерам пакетов в реестрах, связанных с этим updatesпараметром. Доступ к любому из реестров, определенных в конфигурации верхнего уровня registries , не разрешен.
  • Это должно обеспечить успешное обновление, но также может позволить скомпрометированному пакету украсть учетные данные или получить доступ к настроенным реестрам.

Поддерживаемое значение: allow.

          `labels`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Укажите собственные метки для всех запросов на вытягивание, возникающих для диспетчера пакетов. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:
  • Все запросы на вытягивание имеют dependencies метку.
  • Если вы определяете несколько диспетчеров пакетов, в каждый запрос на вытягивание добавляется дополнительная метка для экосистемы или языка. Например, java для обновлений Gradle и submodules для обновлений подмодулы Git.
  • Если в репозитории присутствуют метки семантической версии (SemVer), они будут применены автоматически для указания типа обновления версии (major, minor, или patch).
  •         Dependabot Создайте эти стандартные метки автоматически, по мере необходимости, в вашем репозитории.
    

При labels определении:

  • Указанные метки используются вместо меток по умолчанию.
  • Метки SemVer (если они присутствуют в репозитории) по-прежнему будут применяться в дополнение к любым определенным пользовательским меткам.
  • Если какая-либо из этих меток не определена в репозитории, она пропускается.
  • Вы можете отключить все метки, включая метки по умолчанию, с помощью labels: [ ].

Установка этого параметра также влияет на запросы на вытягивание обновлений системы безопасности для файлов манифеста этого диспетчера пакетов, если только вы не используете target-branch для проверки наличия обновлений версий в ветви, отличной от ветви по умолчанию.

          `milestone`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Свяжите все запросы на вытягивание, поднятые для диспетчера пакетов, с вехой. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:
  • Не используются вехи.

При milestone определении:

  • Все запросы на вытягивание диспетчера пакетов добавляются в веху.

Поддерживаемое значение: числовой идентификатор вехи.

Совет

Если вы посмотрите на веху, ее идентификатором является последняя часть URL-адреса страницы, после milestone. Например, см. https://github.com/<org>/<repo>/milestone/3раздел AUTOTITLE.

          `multi-ecosystem-groups`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

Определите группы, охватывающие несколько экосистем пакетов, чтобы получить единый Dependabot пулл-запрос, обновляющий все поддерживаемые экосистемы пакетов. Такой подход помогает сократить количество получаемых Dependabot pull requests и упростить рабочий процесс обновления зависимостей.

          Dependabot Поведение по умолчанию:
  • Создайте отдельные запросы на вытягивание для каждой экосистемы пакетов с обновлениями зависимостей.

Когда multi-ecosystem-groups используется:

  • Обновления в нескольких экосистемах пакетов в одной группе объединяются в один запрос на вытягивание.
  • Группы имеют собственные расписания и могут наследовать или переопределять отдельные параметры экосистемы.

multi-ecosystem-group

Назначьте экосистемы отдельных пакетов группе с несколькими экосистемами с помощью multi-ecosystem-group параметра в updates конфигурации.

Внимание

Обновления с несколькими экосистемами требуют определенных шаблонов конфигурации и имеют уникальное поведение объединения параметров. Полные инструкции по настройке, примеры конфигурации и подробные справочники по параметрам см. в разделе Настройка обновлений с несколькими экосистемами для Dependabot.

YAML
# Basic `dependabot.yml` file defining a multi-ecosystem-group
version: 2

multi-ecosystem-groups:
  infrastructure:
    schedule:
      interval: "weekly"

updates:
  - package-ecosystem: "docker"
    directory: "/"
    patterns: ["nginx", "redis"]
    multi-ecosystem-group: "infrastructure"

  - package-ecosystem: "terraform"
    directory: "/"
    patterns: ["aws"]
    multi-ecosystem-group: "infrastructure"

          `open-pull-requests-limit`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

Измените ограничение на максимальное количество запросов на вытягивание обновлений версий, открытых в любое время.

          Dependabot Поведение по умолчанию:
  • Если открыты пять запросов на вытягивание с обновлениями версий, дальнейшие запросы на вытягивание не создаются до тех пор, пока некоторые из этих открытых запросов не будут объединены или закрыты.
  • Обновления системы безопасности имеют отдельный внутренний предел в десять открытых запросов на вытягивание, которые нельзя изменить.

При open-pull-requests-limit определении:

  •         Dependabot открывает pull requests до определённого целочисленного значения. Можно задать большое значение, чтобы эффективно убрать лимит на открытые запросы на вытягивание.
    
  • Вы можете временно отключить обновления версий для менеджера пакетов, установив эту опцию на ноль, см. Отключение Dependabot version updates.

          `package-ecosystem`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        
          **Обязательный параметр.** Определите один `package-ecosystem` элемент для каждого менеджера пакетов, который вы хотите Dependabot отслеживать для новых версий. Репозиторий также должен содержать манифест зависимостей или файл блокировки для каждого диспетчера пакетов, см [. пример `dependabot.yml` файла](/code-security/dependabot/dependabot-version-updates/configuring-dependabot-version-updates#example-dependabotyml-file).
Диспетчер пакетовЗначение YAMLПоддерживаемые версии
Базельbazelv7, v8, v9
Булочкаbun>=v1.2.5
Средство увязки программ в пакетыbundler
          v2 |

| Груз | cargo | версия 1 | | Composer | composer | версия 2 | | | | Conda | conda | Неприменимо | | | | Контейнеры разработки | devcontainers | Неприменимо | | Докер | docker | версия 1 | | | | Docker Compose | docker-compose | Версии 2, 3 | | | | | | .NET SDK | dotnet-sdk | >=.NET Core 3.1 | | | | | | Диаграммы Helm | helm | версия 3 | | | | Hex | mix | версия 1 | | | | Julia | julia | >=v1.10 | | | | Пакет ELM | elm | Версия 0.19 | | Субмодуль Git | gitsubmodule | Неприменимо | | GitHub Actions | github-actions | Неприменимо | | Модули Go | gomod | версия 1 | | Gradle (Грэйдл) | gradle | Неприменимо | | Мейвен | maven | Неприменимо | | | | Никс-флейки | nix | Неприменимо | | | | npm | npm | v7, v8, v9, v10 | | NuGet | nuget | <=6.12.0 | | | | OpenTofu | opentofu | Неприменимо | | | | пит| pip | v24.2 | | pip-compile | pip | 7.4.1 | | pipenv | pip | <= 2024.4.1 | | pnpm | npm | т. 7, т. 8
v9, v10 (только обновления версий) | | poetry | pip | версия 2 | | | | До коммита | pre-commit | Неприменимо | | | | паб | pub | версия 2 | | | | Цепочка инструментов Rust | rust-toolchain | Неприменимо | | | | Swift | swift | v5 | | Terraform | terraform | >= 0,13, <= 1.10.x | | | | ультрафиолетовый | uv | v0 | | | | | | vcpkg | vcpkg | Неприменимо | | | | yarn | npm | v1, v2, v3, v4 |

          `pull-request-branch-name.separator`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Укажите разделитель, используемый при создании имен ветвей. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:
  • Создайте имена ветвей формы: dependabot/PACKAGE_MANAGER/DEPENDENCY

При pull-request-branch-name.separator определении:

  • Вместо этого используйте указанный /символ.

Поддерживаемые значения: "-", _``/

Совет

Символ дефиса должен быть экранирован, поэтому он не интерпретируется как запуск пустого списка YAML.

          `rebase-strategy`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Отключите автоматическую перебазировку pull-запросов, вызванных Dependabot.

          Dependabot По умолчанию перебазируется открытые pull request-запросы при Dependabot обнаружении изменений в версии или обновлении безопасности. 
          Dependabot проверяет изменения когда:
  • Расписание выполняется для проверки обновлений версий.
  • Вы снова открываете закрытый Dependabot pull request.
  • Вы меняете значение в target-branchDependabot конфигурационном файле, см. target-branch.
  •         Dependabot Pull request конфликтует после недавнего push-запроса на целевой ветке.
    

Когда rebase-strategy установлено на disabled, Dependabot перестают перебазировать pull requests.

Примечание.

Запросы на вытягивание, открытые перед отключением повторной базы данных, будут перебазироваться до 30 дней после их открытия. Это влияет на все запросы на вытягивание, конфликты с целевой ветвью и все запросы на вытягивание обновлений версий.

          `registries`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Настройте доступ к частным реестрам пакетов для Dependabot обновления более широкого спектра зависимостей, см. Настройка доступа к частным реестрам для Dependabot и Руководство по настройке частных реестров для Dependabot.

В файле есть 2 расположения dependabot.yml , в которых можно использовать registries ключ:

  1. На верхнем уровне, где вы определяете частные реестры, которые вы хотите использовать, и сведения о доступе см. в разделе Настройка доступа к частным реестрам для Dependabot.

  2. В блоках, где можно указать, какие частные updates реестры следует использовать каждому диспетчеру пакетов.

           Dependabot По умолчанию поднимают pull requests только для обновления зависимостей, хранящихся в общедоступных реестрах.
    

Когда Dependabot в конфигурационном файле есть верхний registries уровень, определяющий доступ к одному или нескольким приватным реестрам, вы можете настроить каждый package-ecosystem из них на использование одного или нескольких таких регистров.

Если registries определяется для диспетчера пакетов:

  • Каждый частный реестр, указанный для диспетчера пакетов, проверяется на наличие обновлений версии и системы безопасности.
  •         Dependabot использует данные доступа, определённые в верхнем разделе `registries` .
    

Поддерживаемые значения: REGISTRY_NAME или "*"

          `schedule`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

          **Обязательный параметр.** Определите частоту проверки новых версий для каждого диспетчера пакетов, который вы настраиваете с помощью `interval` параметра. Опционально, для ежедневных и недельных интервалов вы можете настраивать время Dependabot проверки обновлений. Примеры см. в разделе [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
ПараметрыЦель
interval
          **Обязательно**. Определяет частоту для Dependabot. |

| day | Укажите день, который нужно запустить для еженедельного интервала . | | time | Укажите время выполнения. | | | | cronjob | Определяет выражение cron, если тип интервала равен cron. | | | | timezone | Укажите часовой time пояс значения. |

interval

Поддерживаемые значения: daily, , weekly, monthly``quarterly, semiannually``yearlyилиcron

Каждый диспетчер пакетов должен определить интервал расписания.

  • Используется daily для запуска на каждый рабочий день, понедельник до пятницы.
  • Используется weekly для запуска раз в неделю по умолчанию в понедельник.
  • Используется monthly для запуска в первый день каждого месяца.
  • Используется quarterly для запуска в первый день каждого квартала (январь, апрель, июль и октябрь).
  • Используется semiannually для запуска каждые шесть месяцев, в первый день января и июля.
  • Используется yearly для запуска в первый день января.
  • Используется cron для параметра планирования на основе выражений cron. См. раздел cronjob.

По умолчанию Dependabot случайным образом назначается время для применения всех обновлений в конфигурационном файле. С помощью time``timezone параметров можно задать определенную среду выполнения для всех интервалов.
Если использовать cron интервал, можно определить время обновления с помощью выражения cronjob .

day

Поддерживаемые значения: monday, , tuesday, wednesday``thursday, friday``saturdayилиsunday

При необходимости запустите еженедельные обновления для диспетчера пакетов в определенный день недели.

time

Формат: hh:mm

При необходимости выполните все обновления для диспетчера пакетов в определенное время суток. По умолчанию время интерпретируется как UTC.

cronjob

Поддерживаемые значения: допустимое выражение cron в синтаксисе cron или естественном выражении.

Синтаксис Cron содержит пять полей, разделенных пробелом, где каждое поле представляет единицу времени.

┌───────────── minute (0 - 59)
│ ┌───────────── hour (0 - 23)
│ │ ┌───────────── day of the month (1 - 31)
│ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
│ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
│ │ │ │ │
* * * * *

Примеры: , 0 9 * * *``every day at 5pm

          `0 9 * * *` эквивалентен "каждый день в 9 утра". 
          `every day at 5pm` эквивалентна `0 17 * * *`.

Примечание.

  • Часовые пояса должны быть указаны в параметре timezone , а не в cronjob.
  • Для cronjob использования интервала cron требуется расписание типов.
YAML

# Basic `dependabot.yml` file for cronjob

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 based on `cronjob` value
    schedule:
      interval: "cron"
      cronjob: "0 9 * * *"

timezone

Укажите часовой пояс для time значения. По умолчанию часовой пояс — UTC.

Идентификатор часового пояса должен соответствовать часовой поясу в базе данных, поддерживаемой iana, см . список часовых поясов базы данных tz.

          `target-branch`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

Определите конкретную ветвь для проверки обновлений версий и целевых запросов на вытягивание обновлений версий. Примеры см. в разделе Настройка запросов на вытягивание зависимостей для соответствия вашим процессам.

          Dependabot Поведение по умолчанию:

* Dependabot использует стандартную ветку репозитория, см. О ветке по умолчанию.

При target-branch определении:

  • Для обновления версий проверяются только файлы манифеста в целевой ветви.
  • Все запросы на вытягивание обновлений версий открываются для указанной ветви.
  • Параметры, определенные для этогоpackage-ecosystem, больше не применяются к обновлениям системы безопасности, так как обновления безопасности всегда используют ветвь по умолчанию для репозитория.

          `exclude-paths`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates only" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
        

Используйте для указания путей каталогов и файлов, которые Dependabot следует игнорировать при поиске манифестов и зависимостей. Этот параметр полезен, если требуется предотвратить обновления зависимостей в определенных расположениях, таких как тестовые ресурсы, поставщик кода или определенные файлы.

          Dependabot Поведение по умолчанию:
  • Все каталоги и файлы в указанном параметре directory включаются в проверку обновления, если этот параметр не исключен.

При exclude-paths определении:

  • Все файлы и каталоги, соответствующие указанным путям, игнорируются во время проверки обновлений для указанной package-ecosystem записи.
ПараметрЦель
exclude-pathsСписок шаблонов глобов для файлов или каталогов, которые следует игнорировать.

Поддерживаются шаблоны glob, такие как ** рекурсивное сопоставление и * подстановочные знаки с одним сегментом. Шаблоны относятся к указанному directory для конфигурации обновления. Каждая экосистема может иметь собственные exclude-paths параметры.

Example

YAML
version: 2
updates:
  - package-ecosystem: "npm"
    directory: "/"
    schedule:
      interval: "daily"
    exclude-paths:
      - "src/test/assets"
      - "vendor/**"
      - "src/*.js"
      - "src/test/helper.js"

# Sample patterns that can be used-

# Pattern: docs/*.json
# Matches: docs/foo.json, docs/bar.json

# Pattern: *.lock
# Matches: Gemfile.lock, package.lock, foo.lock (in any directory)

# Pattern: test/**
# Matches: test/foo.rb, test/bar/baz.rb, test/any/depth/file.txt

# Pattern: config/settings.yml
# Matches: config/settings.yml

# Pattern: **/*.md
# Matches: README.md, docs/guide.md, any/depth/file.md

# Pattern: src/*
# Matches: src/main.rb, src/app.js
# Does NOT match: src/utils/helper.rb

# Pattern: hidden/.*
# Matches: hidden/.env, hidden/.secret

В этом примере Dependabot я игнорирую src/test/assets папку, все файлы под vendor/, все JavaScript-файлы непосредственно под src/, и конкретный файл src/test/helper.js при поиске обновлений.

          `vendor`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Поддерживается только: bundler и gomod только.

Скажите Dependabot сохранять зависимости, указанные поставщиками, а также зависимости, определённые файлами манифеста. Зависимость описывается как "поставщик" или "кэширована" при хранении кода в репозитории, смbundle cache.

Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          Dependabot Поведение по умолчанию:
  • Сохраняйте только зависимости, записанные в манифесте и файлах блокировки, определенных для bundler.
  • Вызов запросов на обновление безопасности и версий, которые обновляют номера версий, записанные в файлах манифеста и блокировки.
  • Для модулей Go все поставщики зависимостей автоматически идентифицируются и поддерживаются так, как если бы vendor он был включен.

Если vendor включена:

  •         Dependabot также поддерживает зависимости для Bundler, которые хранятся в  `_vendor/cache_` каталоге репозитория.
    
  • Запросы на вытягивание иногда содержат обновления зависимостей, хранящихся в репозитории.

Поддерживаемые значения: true или false

          `versioning-strategy`
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-versions" aria-label="Version updates" role="img"><path d="M10 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2Zm-.5-2a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5H10a.5.5 0 0 0-.5.5ZM6.17 4.165a.75.75 0 0 1-.335 1.006c-.228.114-.295.177-.315.201a.035.035 0 0 0-.008.016.423.423 0 0 0-.012.112v13c0 .07.008.102.012.112a.03.03 0 0 0 .008.016c.02.024.087.087.315.201a.749.749 0 1 1-.67 1.342c-.272-.136-.58-.315-.81-.598C4.1 19.259 4 18.893 4 18.5v-13c0-.393.1-.759.355-1.073.23-.283.538-.462.81-.598a.75.75 0 0 1 1.006.336ZM2.15 5.624a.75.75 0 0 1-.274 1.025c-.15.087-.257.17-.32.245C1.5 6.96 1.5 6.99 1.5 7v10c0 .01 0 .04.056.106.063.074.17.158.32.245a.75.75 0 0 1-.752 1.298C.73 18.421 0 17.907 0 17V7c0-.907.73-1.42 1.124-1.65a.75.75 0 0 1 1.025.274Z"></path></svg>
          <svg version="1.1" width="24" height="24" viewBox="0 0 24 24" class="octicon octicon-shield-check" aria-label="Security updates" role="img"><path d="M16.53 9.78a.75.75 0 0 0-1.06-1.06L11 13.19l-1.97-1.97a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l5-5Z"></path><path d="m12.54.637 8.25 2.675A1.75 1.75 0 0 1 22 4.976V10c0 6.19-3.771 10.704-9.401 12.83a1.704 1.704 0 0 1-1.198 0C5.77 20.705 2 16.19 2 10V4.976c0-.758.489-1.43 1.21-1.664L11.46.637a1.748 1.748 0 0 1 1.08 0Zm-.617 1.426-8.25 2.676a.249.249 0 0 0-.173.237V10c0 5.46 3.28 9.483 8.43 11.426a.199.199 0 0 0 .14 0C17.22 19.483 20.5 15.461 20.5 10V4.976a.25.25 0 0 0-.173-.237l-8.25-2.676a.253.253 0 0 0-.154 0Z"></path></svg>
        

Поддерживается: bundler, cargo, composer, mix, npm``pip``pubиuv

Определите, как Dependabot следует редактировать файлы манифеста. Примеры см. в разделе Управление обновлениями зависимостей с помощью Dependabot.

          Dependabot Поведение по умолчанию:
  • Попробуйте различать зависимости приложений и библиотек.
  • Для приложений всегда увеличьте минимальное требование к версии, чтобы соответствовать новой версии. Стратегия increase .
  • Для библиотек расширяйте требования к разрешенной версии, чтобы включить как новые, так и старые версии, когда это возможно. Стратегия widen .

Когда versioning-strategy определено, Dependabot используется заданная стратегия.

ЦенностьПоведение
autoПоведение по умолчанию.
increaseВсегда увеличьте минимальное требование к версии, чтобы соответствовать новой версии. Если диапазон уже существует, обычно это только увеличивает нижнюю границу.
increase-if-necessaryОставьте требование версии без изменений, если она уже разрешает новый выпуск (Dependabot по-прежнему обновляет разрешенную версию). В противном случае расширение требования.
lockfile-onlyСоздавать запросы на вытягивание только для обновления файлов блокировки. Пропускать все новые версий, для которых требуются изменения манифеста пакета.
widenРасширяйте допустимые требования к версии для включения новых и старых версий, когда это возможно. Как правило, это увеличивает только максимально допустимое требование версии.

Например, если текущая версия и 1.0.0 текущее ограничение является ^1.0.0 различными стратегиями, будет вызывать следующие обновления:

Новая версия 1.2.0

  •         `increase`: новое ограничение `^1.2.0`
    
  •         `increase-if-necessary`: новое ограничение `^1.0.0`
    
  •         `widen`: новое ограничение `^1.0.0`
    

Новая версия 2.0.0

  •         `increase`: новое ограничение `^2.0.0`
    
  •         `increase-if-necessary`: новое ограничение `^2.0.0`
    
  •         `widen`: новое ограничение `>=1.0.0 <3.0.0`
    

Примечание.

Если менеджер пакетов, который вы используете, пока не поддерживает настройку параметра versioning-strategy или не поддерживает нужное значение, то код стратегии открытый код, поэтому если вы хотите, чтобы конкретная экосистема поддерживала новую стратегию, вы всегда можете отправить pull request в https://github.com/dependabot/dependabot-core/.

Теги управления версиями

  • Представляет этапы жизненного цикла выпуска программного обеспечения, такие как альфа, бета-версия и стабильные версии.
  • Позволяет издателям более эффективно распространять свои пакеты.
  • Укажите стабильность версии и сообщите, какие пользователи должны ожидать с точки зрения функций и стабильности.

Dependabot распознает различные теги управления версиями для предварительных выпусков, стабильных версий и пользовательских тегов в разных экосистемах.

Файл dependabot.yml не управляет тегами управления версиями, которые можно использовать, но можно определить в параметрах конфигурации, таких как ignore поддерживаемые теги управления версиями, для которого требуется игнорировать обновления.

Поддерживаемые теги управления версиями

| Диспетчер пакетов | Значение YAML | Поддерживаемые теги | Примеры | |---------------------|----------------|--------------------|--------------| | Maven | maven | alpha, a, beta, b, milestone, m, rc, cr, sp, ga, final, release, snapshot | [email protected], [email protected] | | npm | npm | alpha, beta, canary``dev``experimental``latest``legacy``next``nightly``rc``release``stable | lodash@beta, , react@latest``express@next | | pnpm | npm | alpha, beta, canary``dev``experimental``latest``legacy``next``nightly``rc``release``stable | [email protected], , react@alpha``vue@next | | yarn | npm | alpha, beta, canary``dev``experimental``latest``legacy``next``nightly``rc``release``stable | [email protected], , axios@latest``moment@nightly |

Глоссарий тегов управления версиями

  •         **
            `alpha`:** ранняя версия может быть нестабильной и иметь неполные функции.
    
  •         **
            `beta`:** более стабильным, чем альфа- но может по-прежнему иметь ошибки.
    
  •         **
            `canary`:** регулярно обновляется предварительная версия для тестирования.
    
  •         **
            `dev`:** представляет версии разработки.
    
  •         **
            `experimental`:** версии с экспериментальными функциями.
    
  •         **
            `latest`:** последний стабильный выпуск.
    
  •         **
            `legacy`:** старые или устаревшие версии.
    
  •         **
            `next`:** предстоящая версия выпуска.
    
  •         **
            `nightly`:** версии, созданные ночью; часто включают последние изменения.
    
  •         **
            `rc`:** кандидат выпуска, близкий к стабильному выпуску.
    
  •         **
            `release`:** официальная версия выпуска.
    
  •         **
            `stable`:** самая надежная, готовая к работе версия.
    

Ключ верхнего уровня registries

Укажите данные аутентификации, которые Dependabot можно использовать для доступа к частным реестрам пакетов, включая регистры, размещённые на GitLab или Bitbucket.

Значение ключа registries является ассоциативным массивом, каждый элемент которого состоит из ключа, определяющего конкретный реестр, и значения, являющегося ассоциативным массивом, которое указывает параметры, необходимые для доступа к реестру. dependabot.yml Следующий файл настраивает реестр, определенный как dockerhub в registries разделе файла, а затем ссылается на этот файл в updates разделе файла.

YAML
# Minimal settings to update dependencies stored in one private registry

version: 2
registries:
  dockerhub: # Define access for a private registry
    type: docker-registry
    url: registry.hub.docker.com
    username: octocat
    password: ${{secrets.DOCKERHUB_PASSWORD}}
updates:
  - package-ecosystem: "docker"
    directory: "/docker-registry/dockerhub"
    registries:
      - dockerhub # Allow version updates for dependencies in this registry
    schedule:
      interval: "monthly"

Для указания параметров доступа используются следующие параметры. Параметры реестра должны содержать type и url, а также, как правило, либо сочетание username и password, либо token.

ПараметрыХарактер использования
REGISTRY_NAME**** Обязательный: определяет идентификатор реестра.
type**** Обязательный: определяет тип реестра.
Подробные сведения о проверке подлинности**** Обязательный: параметры, поддерживаемые для предоставления сведений о проверке подлинности, зависят от реестров разных типов.
url**** Обязательный: URL-адрес, используемый для доступа к зависимостям в этом реестре. Протокол указывать необязательно. Если этот параметр не задан, для него предполагается значение https://. Dependabot добавляет или пропускает конечные косые черты по мере необходимости.
replaces-baseЕсли логическое значение равно true, Dependabot разрешает зависимости, используя указанный url , а не базовый URL-адрес этой экосистемы.

Подробные сведения о доступных вариантах, а также рекомендации и советы по настройке частных реестров см. в разделе Руководство по настройке частных реестров для Dependabot.

          `type` и сведения о проверке подлинности

Параметры, используемые для предоставления сведений о проверке подлинности для доступа к частному реестру, зависят от реестра type.

Регистратура typeОбязательные параметры проверки подлинности
cargo-registrytoken
composer-repository
          `username` и `password`.<br>или OIDC с `tenant-id` и `client-id` |

| docker-registry | username и password.
или OIDC с tenant-id и client-id | | git | username и password.
или OIDC с tenant-id и client-id | | hex-organization | organization и key. | | hex-repository | repo и auth-key при необходимости с соответствующими public-key-fingerprint | | maven-repository | username и password.
или OIDC с tenant-id и client-id | | npm-registry | username и password.
или token
или OIDC с tenant-id и client-id | | nuget-feed | username и password.
или token
или OIDC с tenant-id и client-id | | pub-registry | token | | python-index | username и password.
или token
или OIDC с tenant-id и client-id | | rubygems-server | username и password.
или token
или OIDC с tenant-id и client-id | | terraform-registry | token |

Все конфиденциальные данные, используемые для проверки подлинности, должны храниться безопасно и ссылаться на нее из этого безопасного расположения, см. в разделе Настройка доступа к частным реестрам для Dependabot.

Совет

Если учетная запись является учетной записью GitHub, вместо пароля можно использовать GitHub personal access token вместо пароля.

Для получения дополнительной информации о поддержке OIDC см Dependabot. OpenID Connect и Настройка доступа к частным реестрам для Dependabot.

          `url` и `replaces-base`.

Параметр url определяет, где получить доступ к реестру. Когда опциональный replaces-base параметр включён (true), Dependabot разрешает зависимости, используя значение url , а не базовый URL конкретной экосистемы.