Как запустить сборку в Jenkins с помощью Git push для SCM-менеджера, когда Jenkins не разрешает анонимного пользователя?

Наш сборочный сервер на работе - Windows Server 2012 r2. У нас установлен Jenkins в качестве службы Windows на localhost:8081. У нас есть Scm-Manager, установленный как сервис на localhost: 8082. ( https://www.scm-manager.org/) Мы используем Git в качестве контроля версий.

Теперь мы не хотим, чтобы анонимный пользователь имел общее чтение (из-за конфиденциальной информации).

Прежде чем мы удалили анонимный доступ, мы настроили проект Jenkins для удаленного запуска сборки с помощью токена "build". В SCM-Manager мы использовали плагин Jenkins для отправки токена "build" и только мастер-ветки.

Это больше не работает.

Я смотрю на плагин под названием Webhooks в Scm-менеджере. Чтобы сделать http POST. Это решение? Если так, то как? Я делаю что-то не так. Другие решения?

2 ответа

Решение

Я заставил это работать, но не как предложено. Я настроил свои локальные репозитории git в scm-manager с помощью: Jenkins-URL: например, http://localhost:8082/, имя проекта Jenkins: например, "testProj", токен, например, "build", имя пользователя Jenkins и пользователь Jenkins API-маркер. В моей конфигурации проекта Jenkins: Имя проекта: "testProj", "Проверено": удаленная сборка триггера, с токеном "build" и необходимыми учетными данными, именем пользователя с паролем, с пользователем scm-manager, у которого было разрешение на чтение из любого репозитория.

Вы можете использовать глобальную конфигурацию плагина scm-jenkins-plugin. Метод глобальной конфигурации использует push-уведомления от git-плагина jenkins. SCM-Manager будет отправлять URL-адрес измененного репозитория после каждого успешного нажатия, jenkins будет создавать каждый репозиторий, для которого этот scm-URL и включен опрос. Пожалуйста, ознакомьтесь с разделом "Глобальная конфигурация" этой вики-страницы. Этот метод будет работать с включенной аутентификацией и без нее.

Другие вопросы по тегам