Skip to content

Renovate

Инструмент по автоматическому обновлению зависимостей в репозитории

Зачем нужен этот инструмент?

  1. Поддерживаем проект в актуальном состоянии Не приведем его к состоянию, когда обновление какой-либо зависимости станет невозможным из-за того, что это обновление потребует обновления других зависимостей, сломается обратная совместимость и проект перестанет работать.
  2. Безопасность. Менее вероятно что актуальные зависимости содержат известные уязвимости

Почему именно этот инструмент?

  1. Работает на многих платформах (gitlab, github, ...)
  2. Много звезд на github, хорошая поддержка
  3. Этот инструмент используется во многих известных проектах. Например vuejs

Renovate локально для проверки конфига

  1. npm install -g renovate
  2. Перейти в репозиторий, запустить команду RENOVATE_CONFIG_FILE=renovate.json renovate-config-validator

Renovate на github

  1. Устанавливаем https://github.com/apps/renovate
  2. Даем доступ приложению к нужным репозиториям
  3. Заходим в эти репозитории, там должны были создаться мр, которые конфигурируют renovate. Мерджим ее
  4. Дополнительно настраиваем конфиг. "rangeStrategy": "bump" (для того чтобы package.json обновлялся) и assignees.
  5. После установки приложения также есть ui, в котором можно посмотреть репозитории и джобы. https://developer.mend.io/github/upikoth
  6. Создана issue, которая показывает какие зависимости нужно обновить
  7. Запустить сканирование можно из issue или из ui. Также можно настроить периодический запуск из конфига renovate
  8. По умолчанию запускается при изменении в основной ветке