Описывается процесс настройки синхронизации репозитория исходного кода на GitHub с хранилищем в проекте Redmine с использованием плагина Redmine GitHub Hook на примере репозитория темы Greenmine.




Создание зеркала

Создаем зеркало публичного репозитория GitHub:

sudo -u redmine /bin/bash
cd /var/opt/redmine/repos
git clone --mirror https://github.com/volgau/redmine-theme-greenmine.git

Добавляем в проект новое хранилище, связанное с зеркалом репозитория, через меню Настройки проекта > Хранилища.

Создание нового хранилища в Redmine

Настройка синхронизации

В настройках проекта на GitHub (меню Settings > Webhooks) добавляем новый webhook.

Внимание! Параметр project_id в Payload URL устанавливаем равным идентификатору проекта, а не хранилища!

Если в проекте несколько хранилищ, то добавляем к URL параметр repository_id. Возможные форматы URL см. в readme плагина

Добавляем webhook в GitHub

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

Если что-то пошло не так (статус отправки изменений можно посмотреть в разделе Recent Deliveries), то лучше всего выполнить настройку сначала - проверить настройки на стороне Redmine, удалить и заново добавить webhook на GitHub.



blog comments powered by Disqus