Как мы можем обеспечить обязательную проверку в GitHub, но по-прежнему разрешить Maven выпускать сборки из CI?

Мы хотели бы использовать обязательные проверки кода для запросов на вытягивание в GitHub Enterprise 2.10 (с помощью функции «Требовать проверки запросов на вытягивание перед объединением» в настройках защищенной ветви репозитория).

Однако, когда мы включаем эту функцию, сборки выпуска Maven завершаются ошибкой, поскольку плагин выпуска пытается отправить новую версию SNAPSHOT в репозиторий, используя учетные данные пользователя, который запускает сборку выпуска TeamCity.

Кто-нибудь придумал подход, который работает для этого? Наши требования:

  • Требовать проверки кода для обычных коммитов / запросов на вытягивание
  • Разрешить автоматическим сборкам выпуска фиксировать обновленные версии POM
  • Все коммиты выполняются определенными необщими учетными записями пользователей

person Richard Neish    schedule 14.11.2017    source источник
comment
Вы нашли для этого решение? Я столкнулся с той же проблемой. Это довольно стандартный рабочий процесс, который легко возможен с BitBucket от Atlassian, так что я могу представить, что у GitHub для этого тоже должен быть какой-то крючок?   -  person raner    schedule 20.12.2017
comment
Я не уверен, что вы сможете выполнить все требования, учитывая, что плагин выпуска использует стандартные команды git. У нас есть эта проблема, и единственный выход для нас - предоставить учетной записи CI роль администратора GH, чтобы пропустить защиту веток.   -  person ashley    schedule 04.11.2020


Ответы (1)


Я нашел этот ответ на связанный вопрос: https://stackoverflow.com/a/47006088

У меня сложилось впечатление, что если вы оставите флажок «включить администраторов» снятым, то вы сможете использовать владельца репозитория с плагином выпуска. Компромисс заключается в том, что в этом случае вы будете полагаться на дисциплину своих разработчиков, которые являются владельцами репозиториев, чтобы не пропустить процесс проверки.

person suthsc    schedule 22.05.2018