git серверная сторона 'update' хук в битбакете

Я ищу способ создать push-крючок на стороне сервера git (будет использоваться для принудительной ссылки на номер билета JIRA в каждом сообщении фиксации).

Согласно pro git - git hooks, крючок git для на стороне сервера используется «обновление», которое существует в каталоге .git / hooks. Поскольку я использую BitBucket для хостинга git, мне нужно каким-то образом отправить этот файл в каталог .git / hooks на сайте.

Использование сервисов BitBucket не подходит, поскольку они являются «пост- get 'хуки, поэтому нет смысла использовать существующий или писать мой собственный брокер, поэтому этот вопрос не дает мне правильного решения.


person Bennyn    schedule 18.04.2013    source источник


Ответы (3)


судя по всему, это невозможно, согласно ответу, который я получил на answers.atlassian.com.

person Bennyn    schedule 06.05.2013

К сожалению, Bitbucket Server не предоставляет API или пользовательский интерфейс для установки ловушки update. Он поддерживает только pre-receive и post-receive хуки на этом уровне. Однако, поскольку Bitbucket Server использует общий git на бэкэнде, действительно можно установить любой из стандартных хуков git.

Этот подход требует доступа к файловой системе с правами администратора / root на хосте, на котором установлен Bitbucket Server.

Перехватчики расположены в shared/config/git/template/hooks и автоматически копируются в каталог перехватчиков для каждого репозитория, когда вы создаете новый репозиторий. Чтобы установить настраиваемую ловушку для существующего репозитория, сделайте это в shared/data/repositories/<repo_number>/hooks.

Я создал готовое решение для проверки журнала фиксации на настраиваемом хосте JIRA с использованием настраиваемого имени пользователя и пароля. Решение проверяет следующее:

  • Соответствие форматированию журнала в стиле ядра Linux (правило 50/72)
  • Наличие ключа задачи JIRA в сводке
  • Адрес электронной почты уполномоченного по выпуску JIRA совпадает с адресом электронной почты коммиттера
  • Статус задачи JIRA: "Выполняется"

Вы можете скачать файлы здесь: https://github.com/AlexanderAmelkin/bitbucket-git-hooks-for-jira

Для переносимости основной сценарий проверки написан на Javascript для node.js, который доступен как для Windows, так и для Linux.

person Alexander Amelkin    schedule 07.07.2017

Я знаю, что JIRA теперь интегрируется с Bitbucket. Все, что вам нужно, это плагин JIRA Bitbucket

person Eugene Ryzhikov    schedule 20.04.2013
comment
спасибо за ответ, но предлагаемый плагин не поддерживает сообщения фиксации. Он только связывает сообщения фиксации, которые содержат номер билета JIRA, с соответствующим билетом JIRA. - person Bennyn; 24.04.2013