С небольшой помощью от Ремонт и мощный Действия GitHub , становится очень легко поддерживать в курсе ваших зависимостей автоматически. Давайте посмотрим, как мы можем легко настроить автоматический рабочий процесс, чтобы справиться с этим для нас бесплатно!
В нескольких словах: ремонт автоматически поддерживает ваши зависимости актуально, регулярно проверяя доступные обновления и открывая PR в вашем репозитории, используя все ваши уже доступные механизмы CI.
Кажется, здорово, верно? Посмотрим, как это работает:
В первый раз, когда вы запустите его, он попытается обнаружить, какой язык вы используете, или если у вас есть Dockerfile, и так далее. Затем он создаст PR с начальной конфигурацией (в renovate.json
), так что вы можете начать быстро.
Затем он откроет PRS с обновленными зависимостями. Если у вас есть какая -то система CI, которая тестирует ваши PRS, вы быстро увидите, проходят ли предложенные изменения в тестах или нет. Если все зеленое, вы можете безопасно объединить PR! Вы даже можете сказать Renovate, чтобы автоматически объединить PR, если все тесты пройдут в следующий раз, когда он сканирует ваш репозиторий.
Конечно, вы можете точно настроить поведение Renovate, например, только для обновлений Auto-Merge Patch или полностью игнорировать основные обновления и т. Д. Но сейчас мы не будем покрывать:).
Действия GitHub — отличный инструмент для автоматизации повторяющихся задач в вашем репозитории, таких как PR -сортировка или небольшие задачи обзора — он также может действовать как полное решение CI (это то, что мы делаем в Dior.com !). Плюс, он поставляется с щедрым бесплатным планом!
Во -первых, нам нужно дать отремонтировать некоторые разрешения на «сканирование» вашего репозитория.
Перейти к Настройки > Настройки разработчика > Токены личного доступа и создать личные результаты Токен (pat) с Репо
объем.
Теперь добавьте его в секреты вашего хранилища.
Теперь просто создайте файл в .github/Workflows
:
on: schedule: - cron: "0 8 * * *" name: Daily Jobs jobs: renovate: name: Renovate runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@master - name: Run Renovate uses: docker://renovate/renovate:19.133-slim env: RENOVATE_REPOSITORIES:RENOVATE_TOKEN: ${{ secrets.RENOVATE_TOKEN }} RENOVATE_AUTOMERGE: true # optional, see below
Здесь мы периодически определяем простой рабочий процесс, запускаемым действиями GitHub. Он содержит одну работу, которая выполняет следующие действия:
- Клонировать свой репозиторий
- Запустить ремонт
Просто, верно? Мы просто передаем ваш недавно созданный PAT и имя вашего репозитория. Не забудьте всегда прикрепить версии (теги, на самом деле) изображений Docker, которые вы используете, особенно если это публичное. Вы действительно хотите избежать плохих сюрпризов, если однажды что -то сломается.
Вы можете добавить столько переменных среды, сколько захотите; Проверьте Ремонт самостоятельно конфигурационные документы Для полного списка переменных.
Теперь действия GitHub будут позаботиться о выполнении этой работы каждый день в 08 утра (не стесняйтесь настроить вариант расписания по желанию).
Это было быстро, верно? Что вы думаете ?
Оригинал: «https://dev.to/djiit/keep-your-dependencies-up-to-date-with-renovate-and-github-actions-3b2m»