Уведомление о задании Дженкинса терпит неудачу с "Нет git потребителей для URI..."
Я хочу настроить крючок post-receive
git
, который уведомляет jenkins
об изменении, но в jenkins
не запускается задание.
Мой крюк post-receive
выглядит следующим образом:
curl http://localhost/jenkins/git/notifyCommit?url=<git_repository_url>
Если я выдаю команду в терминале, я получаю следующее сообщение:
"No git consumers for URI..."
У меня есть задание jenkins, связанное с Git Управление исходным кодом, адрес репозитория, а также ветки: */master
Я искал эту проблему, но я не нашел ничего полезного в связи с: "Нет Git потребителей для URI"
Я использую:
- LinuxMint
- Apache 2.4.6
- git 1.8.3.2
- curl 7.32.0
- Jenkins 1.532.2
У меня есть прокси-установка в apache:
<Proxy *>
Order deny,allow
deny from all
allow from 127.0.0.1
</Proxy>
Репозиторий Git bare
.
Ответы
Ответ 1
Включить опрос SCM для каждого проекта, который вы хотите уведомить:
- Перейдите в Личный кабинет.
- Нажмите проект.
- Нажмите Настроить.
- В разделе "Построить триггеры" установите флажок опроса SCM.
- Повторите для любых других проектов.
Отправляемое вами уведомление говорит Дженкинсу опросить репозиторий, поэтому проекты будут реагировать только в том случае, если включен опрос SCM.
Ответ 2
Сообщение No git consumers for URI
всегда появляется, вы должны быть обеспокоены, если видите No git jobs using repository
. Ответ будет содержать список заданий, запланированных для опроса, поэтому пока вы их видите, был запущен опрос.
Это означает, что вы можете проверить, что опрос действительно что-то делает. Если вы входите в задание, настроенное с помощью Git, вы можете увидеть ссылку на журнал регистрации Git слева. Там вы сможете увидеть, действительно ли триггер сделал что-либо и, что более важно, если была ошибка.
У меня была проблема, подобная этому, и мне потребовалось некоторое время, чтобы понять, что мой Git был неправильно сконфигурирован. Моя работа будет строиться отлично при ручном запуске, но триггер опроса будет использовать другой путь к двоичному файлу Git и сбой. Мне пришлось определить путь Git, чтобы исправить мою проблему.
Ответ 3
Мне нужно было сделать следующие шаги:
- Включить опрос SCM, на который ответил @angstadt530
- project- > configure → "Build Triggers" → "Включить опрос SCM"... проверьте его
- Проверьте журнал Git Опрос, на который отвечает @monitorjbl
- project → "Git Журнал опроса"... для идентификации # 3
- Принудительный опрос с использованием рабочей области
- project- > configure → "Управление исходными кодами" → "Дополнительные действия" → add → "Принудительный опрос с использованием рабочего пространства"... выберите его из раскрывающегося списка.
После завершения # 1 в дополнение к "Нет git потребителям для URI gitRepoURI" я также получил "Запланированный опрос имени проекта".
Однако, глядя на журнал опроса git, я обнаружил сообщение об ошибке: Невозможно запустить программу "C:\Program Files (x86)\Git\bin\git.exe": ошибка = 2, Нет такого файла или каталога
Чтобы исправить эту ошибку, мне пришлось настроить управление исходным кодом для принудительного опроса с использованием рабочей области (# 3). Я не знаю, почему, потому что вручную созданные сборки работают нормально. Возможно, ошибка - возможно, смешение Linux-сервера и ведомого Windows. Но в любом случае это окончательно устранило это для меня. Надеюсь, что это поможет.