Файл — это опциональный конфигурационный файл, который даёт вам тонкий контроль над тем, как Dependabot отслеживает и обновляет зависимости (в основном обновления dependabot.ymlверсий , а также обновления безопасности) в вашем репозитории.
Без dependabot.yml файла Dependabot всё равно может создавать обновления безопасности для уязвимых зависимостей, если вы включили Dependabot security updates в настройках репозитория. Однако вы не получите автоматические обновления версий и не сможете контролировать графики обновлений и другие настройки.
Файл использует синтаксис dependabot.yml YAML. Если вы не знакомы с YAML и хотите узнать больше, см . статью "Сведения о YAML" за пять минут.
Примечание.
Dependabot alerts настраиваются на вкладке репозитория или организации "Параметры", а не в dependabot.yml файле, см . раздел AUTOTITLE.
Что делает файл dependabot.yml
Файл dependabot.yml управляет, как Dependabot выполняет обновления ваших зависимостей. С помощью этого файла вы можете:
Для обновлений версий
- Включить автоматические обновления версий
- Укажите, какие экосистемы и каталоги пакетов следует отслеживать
- Устанавливайте графики обновлений
- Настраивайте метки pull-request, получателей, рецензентов и коммит-сообщения
- Контролируйте, какие зависимости обновлять или игнорировать
- Настройка аутентификации для частных реестров
Для обновлений безопасности
- Настраивайте pull запросы на обновления безопасности с помощью меток, правоназначенцев и рецензентов
- Определить целевые ветки для обновлений безопасности
- Настройка аутентификации в частном реестре
- Установите лимиты на открытые pull requests
Где хранить dependabot.yml файл
Вы должны хранить этот файл в .github каталоге вашего репозитория в ветке по умолчанию (обычно main). Путь выглядит так: .github/dependabot.yml.
Как dependabot.yml работает файл
Когда вы добавляете или обновляете файл dependabot.yml в своём репозитории, Dependabot считывает конфигурацию и начинает мониторинг указанных экосистем пакетов согласно вашим заранее установленным расписаниям. Когда Dependabot находит доступные обновления, он создаёт pull requests с изменениями зависимостей, следуя любым правилам настройки, которые вы указали в конфигурации.
Конфигурационный файл требует следующих ключей для каждой экосистемы пакетов для мониторинга.
-
** `version` **: Верхнее поле, указывающее синтаксисную версию конфигурации Dependabot. -
** `updates` **: Раздел верхнего уровня, где вы определяете экосистему каждого пакета для мониторинга обновлений. -
** `package-ecosystem` **: Определено в `updates`, указывает, какой менеджер пакетов обновлять (например, npm, pip или Docker). -
** `directories` или `directory`**: Определено под каждой `package-ecosystem` записью, указывает расположение файлов определений манифеста или зависимостей. -
** `schedule.interval` **: Определяется под каждой `package-ecosystem` записью, устанавливает, как часто проверять обновления версии (`daily`, `weekly`, или `monthly`).
Базовый пример
Вот минимальный dependabot.yml файл, который ежедневно отслеживает зависимости от NPM:
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
Следующий шаг
- Настройте репозиторий так, чтобы Dependabot автоматически обновлял используемые вами пакеты, см. Настройка обновлений версий Dependabot