Дженкинс Гит Хук

Я настроил Git Jenkins CI (автономный порт 8081) поверх Ubuntu apt-get и gitblit работает на Tomcat 7.

На моем Сервере дом Git больше не принадлежит пользователю git, он принадлежит tomcat7, и я могу создавать новые Repos с помощью gitblit.

Ich также может толкать и тянуть коммиты. Но я не могу начать сборку Jenkins после коммита.

В каталоге "hooks" из репозитория я добавил новый файл с именем post-receive.

#!/bin/bash
curl http://myserver.de:8081/job/mytestrepo/build?token=aasdfbabfabfibafhbhf

Команда curl работает, если я запускаю ее на оболочке. Но он не запускается, если Git должен его запустить? Я не знаю, что я сделал не так.

2 ответа

Решение

Gitblit не поддерживает выполнение собственных хуков; он поддерживает хуки, написанные на Groovy. Gitblit поставляется с крючком Jenkins Groovy, который можно использовать для запуска сборки.

https://github.com/gitblit/gitblit/blob/master/src/main/distrib/data/groovy/jenkins.groovy

Если вы хотите быть уверены, что команды в скрипте оболочки выполняются правильно, вам нужно указать полный путь. В bash вы можете задать это с помощью "type curl". Для OS X скрипт должен читать (не проверено)

#!/bin/bash
/usr/bin/curl http://myserver.de:8081/job/mytestrepo/build?token=aasdfbabfabfibafhbhf
Другие вопросы по тегам