2016-12-29 4 views
2

На работе мы используем GitLab и Taiga.Интеграция Taiga + GitLab: включить только ветку master?

Таким образом, мы включили интеграцию между ними, и теперь, когда разработчик нажимает на коммит, который включает в себя текст TG-XYZ #closed, тогда вопрос тайги с номером XYZ закрывается, а комментарий помещается в него автоматически.

Это определенно здорово. Однако это не сработает с MergeRequests (или вообще с ветвями функций): поскольку мы не хотим закрывать таежный вопрос до тех пор, пока MergeRequest не будет объединен с мастером.

Как ограничить эту интеграцию только работой с главной ветвью?

ответ

1

Мы нашли обходное решение, которое достаточно хорошее: создайте MergeRequests только из вилок репозитория, а не из ветвей в репозитории.

Если вы хотите применить эту политику, чтобы ваши разработчики не нарушили ее по ошибке, вы можете использовать функцию «Защитить ветви» в gitlab и использовать подстановочный знак (*), чтобы не допускать создания новых ветвей (таким образом, они смогут проталкивать ветки на вилке каждого разработчика, и поэтому уведомления для Тайги будут поступать только тогда, когда MR будет объединено с мастером).

+0

Хорошее обходное решение, и более точное, чем мой ответ. +1 – VonC

0

Для фиксаций, которые должны пройти через рабочий процесс слияния утверждения запроса, вы можете рассмотреть следующие вопросы:

  • не с использованием #closed (для того, чтобы не закрывать tocket Тайга слишком рано)
  • создана a Merge REquest event webhook, который вызовет собственного слушателя: этот слушатель при обнаружении события закрытия прочитает сообщение фиксации и сам вызовет Taiga REST API, чтобы закрыть соответствующую проблему (issue status edit api).
+0

, но не все коммиты проходят через MR, мы хотим, чтобы коммиты, которые переходили непосредственно к мастер-ветке, все еще использовали крюк – knocte

+0

@knocte, если они нажимаются непосредственно на master, тогда они могут сохранять сообщение об их фиксации и извлекать выгоду из Изменения статуса тайги описаны в https://tree.taiga.io/support/integrations/changing-elements-status-via-commit-message/ – VonC

+0

, но если я включу эту интеграцию, коммиты будут перенесены в ветви (для MergeRequests) тоже закроют проблемы ... или вы рекомендуете это делать только для коммитов, непосредственно переданных мастер-ветке, а затем использовать MergeRequest-event-webhook, чтобы просто захватить номер TG и закрыть его от моего слушателя? – knocte