проверка перед фиксацией или удаленный запуск отсутствуют с настройкой Github и Jenkins

Просто в качестве примера можно отправить удаленный запуск с помощью какого-либо инструмента, такого как TeamCity (аналог Jenkins), где он применит дельту/исправление к тому, что пользователь пытается зафиксировать, и выдаст результат, хороши ли изменения из набора настроенных проверок. для этого проекта.

С помощью Github и Jenkins можно ли добиться такой проверки с помощью каких-либо плагинов? Это позволит избежать поломки сборки?

Я знаю, что с запросом на включение и проверкой статуса можно добиться аналогичного конечного результата. Но без фиксации/передачи в удаленное репо Git - есть ли способ, которым Дженкинс может справиться с этой проверкой и получить первоначальный результат?


person vinWin    schedule 02.04.2020    source источник


Ответы (1)


Невозможно, чтобы GitHub выполнял проверки данных, которых у него нет, поэтому, если вы не отправите данные на удаленный сервер, GitHub ничего об этом не узнает и, следовательно, ничего не сделает.

У Jenkins есть REST API, который вы можете использовать для этого, при условии, что вы предоставили каждому разработчику соответствующие учетные данные. Однако это не является распространенной ситуацией и не является рекомендуемой конфигурацией.

Лучше иметь в репозитории скрипт, который пользователи могут установить как хук или вызвать из хука, который будет выполнять нужное вам тестирование. Если ваши задания CI запускают скрипт в вашем репозитории, то совместное использование кода между ними должно быть легко.

Обратите внимание, что вы не должны назначать перехватчики перед фиксацией, так как они могут мешать опытным пользователям (которые могут намеренно совершать незавершенные временные фиксации) и могут быть отключены пользователями. Любые требуемые проверки должны выполняться как часть CI, где политика может применяться надлежащим образом.

person bk2204    schedule 03.04.2020