Файл dependabot.yml — это опциональный конфигурационный файл, который даёт вам тонкий контроль над тем, как Dependabot отслеживать и обновлять зависимости (в основном обновления версий , а также обновления безопасности) в вашем репозитории.
Без dependabot.yml файла Dependabot можно создавать обновления безопасности для уязвимых зависимостей, если вы включили Dependabot security updates настройки репозитория. Однако вы не получите автоматические обновления версий и не сможете контролировать графики обновлений и другие настройки.
Файл использует синтаксис dependabot.yml YAML. Если вы не знакомы с YAML и хотите узнать больше, см . статью "Сведения о YAML" за пять минут.
Примечание.
Dependabot alerts настроены во вкладке «Настройки» репозитория или организации, а не в dependabot.yml файле, см. Настройка оповещений Dependabot.
Что делает файл dependabot.yml
Файл dependabot.yml управляет, как Dependabot выполняется обновления ваших зависимостей. С помощью этого файла вы можете:
Для обновлений версий
- Включить автоматические обновления версий
- Укажите, какие экосистемы и каталоги пакетов следует отслеживать
- Устанавливайте графики обновлений
- Настраивайте метки pull-request, получателей, рецензентов и коммит-сообщения
- Контролируйте, какие зависимости обновлять или игнорировать
- Настройка аутентификации для частных реестров
Для обновлений безопасности
- Настраивайте pull запросы на обновления безопасности с помощью меток, правоназначенцев и рецензентов
- Определить целевые ветки для обновлений безопасности
- Настройка аутентификации в частном реестре
- Установите лимиты на открытые pull requests
Где хранить dependabot.yml файл
Вы должны хранить этот файл в .github каталоге вашего репозитория в ветке по умолчанию (обычно main), по .github/dependabot.yml координатам или .github/dependabot.yaml.
Как 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