Note
Администратор сайта должен настроить Dependabot updates для ваш экземпляр GitHub Enterprise Server, прежде чем использовать эту функцию. Дополнительные сведения см. в разделе Включение Dependabot для предприятия.
Возможно, вы не сможете включить или отключить Dependabot updates , если владелец предприятия установил политику на уровне предприятия. Дополнительные сведения см. в разделе Применение политик безопасности кода и анализа для вашего предприятия.
Сведения о настройке обновлений зависимостей
После включения обновлений версий можно настроить способ хранения зависимостей Dependabot путем добавления дополнительных параметров в dependabot.yml
файл. Например, можно выполнить следующее.
- Указать, в какой день недели следует открывать запросы на вытягивание для обновлений версий:
schedule.day
. - Задайте рецензенты, назначаемые и метки для каждого диспетчера пакетов:
reviewers
,assignees
иlabels
- Определить стратегию управления версиями для изменений в каждом файле манифеста:
versioning-strategy
. - Изменить максимальное количество открытых запросов на вытягивание для обновлений версий со значения по умолчанию (5) на другое значение:
open-pull-requests-limit
. - Открыть запросы на вытягивание для обновлений версий, чтобы выбрать конкретную ветвь вместо ветви по умолчанию:
target-branch
.
Дополнительные сведения о параметрах конфигурации см. в разделе "Параметры конфигурации для файла dependabot.yml".
При обновлении dependabot.yml
файла в репозитории Dependabot выполняет немедленную проверку новой конфигурации. В течение нескольких минут вы увидите обновленный список зависимостей на вкладке Dependabot. Если в репозитории большое число зависимостей, время ожидания может быть увеличено. Вы также можете просмотреть новые запросы на вытягивание для обновлений версий. Дополнительные сведения см. в разделе Перечисление зависимостей, настроенных для обновлений версий.
Влияние изменений конфигурации на обновления системы безопасности
Если вы настраиваете dependabot.yml
файл, вы можете заметить некоторые изменения, внесенные в запросы на вытягивание для обновлений системы безопасности. Эти запросы на вытягивание всегда активируются советом по безопасности для зависимости, а не расписанием Dependabot. Однако они наследуют соответствующие параметры конфигурации из dependabot.yml
файла, если не указать другую целевую ветвь для обновлений версий.
Пример см. в разделе Настройка пользовательских меток ниже.
Изменение расписания
При установке расписания обновления daily
Dependabot по умолчанию проверяет наличие новых версий в 05:00 (UTC). С помощью schedule.time
можно указать альтернативное время суток для проверки наличия обновлений (формат: hh:mm
).
Приведенный ниже пример dependabot.yml
файла расширяет конфигурацию npm, чтобы указать, когда Dependabot должен проверять наличие обновлений версий для зависимостей.
# `dependabot.yml` file with
# customized schedule for version updates
version: 2
updates:
# Keep npm dependencies up to date
- package-ecosystem: "npm"
directory: "/"
# Check the npm registry for updates at 2am UTC
schedule:
interval: "daily"
time: "02:00"
Настройка рецензентов и уполномоченных
По умолчанию Dependabot создает запросы на вытягивание без рецензентов и уполномоченных.
Вы можете использовать reviewers
и assignees
, чтобы указать рецензентов и уполномоченных для всех запросов на вытягивание, созданных для диспетчера пакетов. При указании команды необходимо использовать полное имя команды, как для команды @mentioning (включая организацию).
Приведенный ниже пример dependabot.yml
файла изменяет конфигурацию npm, чтобы все запросы на вытягивание, открытые с помощью обновлений версии и системы безопасности для npm, имели два рецензента и одного назначаемого.
# `dependabot.yml` file with
# reviews and an assignee for all npm pull requests
version: 2
updates:
# Keep npm dependencies up to date
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
# Raise all npm pull requests with reviewers
reviewers:
- "my-org/team-name"
- "octocat"
# Raise all npm pull requests with an assignee
assignees:
- "user-name"
Настройка пользовательских меток
По умолчанию Dependabot вызывает все запросы на вытягивание с меткой dependencies
. Если определено несколько диспетчеров пакетов, Dependabot включает дополнительную метку для каждого запроса на вытягивание. Это указывает, какой язык или экосистема будет обновлять запрос на вытягивание, например: java
для обновлений Gradle и submodules
для обновлений подмодуля Git. Dependabot автоматически создает эти метки по умолчанию, как это требуется в репозитории.
Чтобы переопределить метки по умолчанию и указать альтернативные метки для всех запросов на вытягивание, созданных для диспетчера пакетов, можно использовать labels
. В файле нельзя создавать новые метки, поэтому альтернативные метки dependabot.yml
уже должны существовать в репозитории.
Приведенный ниже пример dependabot.yml
файла изменяет конфигурацию npm, чтобы все запросы на вытягивание, открытые с помощью обновлений версии и системы безопасности для npm, имели пользовательские метки. Он также изменяет конфигурацию Docker, чтобы проверить наличие обновлений версий в пользовательской ветви и создать запросы на вытягивание с пользовательскими метками для этой пользовательской ветви. Изменения в Docker не повлияют на запросы на вытягивание для обновлений системы безопасности, так как обновления системы безопасности всегда выполняются в ветви по умолчанию.
Note
Новый target-branch
файл должен содержать Dockerfile для обновления, в противном случае это изменение приведет к отключению обновлений версий для Docker.
# `dependabot.yml` file with
# customized npm configuration
version: 2
updates:
# Keep npm dependencies up to date
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
# Raise all npm pull requests with custom labels
labels:
- "npm dependencies"
- "triage-board"
# Keep Docker dependencies up to date
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "weekly"
# Raise pull requests for Docker version updates
# against the "develop" branch. The Docker configuration
# no longer affects security update pull requests.
target-branch: "develop"
# Use custom labels on pull requests for Docker version updates
labels:
- "Docker dependencies"
- "triage-board"
Игнорируя определенные зависимости для Dependabot version updates
Если вы не готовы принять изменения из зависимостей в проекте, можно настроить Dependabot для пропуска этих зависимостей при открытии запросов на вытягивание обновлений версий. Это можно сделать с помощью одного из следующих методов.
ignore
Настройте параметр зависимости вdependabot.yml
файле. Это можно использовать для пропуска обновлений для определенных зависимостей, версий и типов обновлений. Дополнительные сведения см. в разделе Параметры конфигурации для файла dependabot.yml.- Используйте
@dependabot ignore
команды комментариев для запроса на вытягивание Dependabot для обновлений версий. Команды комментариев можно использовать для пропуска обновлений для определенных зависимостей и версий. Дополнительные сведения см. в разделе Управление запросами на вытягивание для обновлений зависимостей.
Если вы хотите отменить зависимость или игнорировать условие, можно удалить условия пропуска из dependabot.yml
файла или повторно открыть запрос на вытягивание.
Дополнительные примеры
Дополнительные примеры см. в разделе "Параметры конфигурации для файла dependabot.yml".