Web-сервисы JIRA - это пользовательские HTTP-запросы POST. Они обеспечивают легкий механизм, позволяющий удаленным приложениям получать push-уведомления от JIRA, не требуя опроса. Например, вы можете захотеть, чтобы любые изменения в ошибках (bugs) JIRA были перенесены в систему управления тестированием, чтобы их можно было повторно протестировать.
JIRA поддерживает Web-сервисы JIRA для всех стандартных событий, связанных с событиями (то есть не пользовательских событий), например. issue_created, issue_assigned и т. д. События выпуска помещаются на указанный URL в формате JSON. Вы можете ограничить область действия web-сервисов JIRA, указав необходимые события и / или JQL-события.
Прочтите страницу обзора JIRA Web-сервисов JIRA, содержащую подробную информацию о веб-узлах JIRA. На этой странице содержатся инструкции по использованию пользовательского интерфейса web-сервисы JIRA в консоли администрирования JIRA.
Просмотр Web-сервисов JIRA
Чтобы просмотреть Web-сервисы JIRA, выполните следующие шаги:
- Войдите в систему как пользователь с глобальным разрешением администраторов JIRA.
- Выберите > «Система» (System). Выберите «Дополнительно» (Advanced)> «Web-сервисы JIRA» (Webhooks), чтобы открыть страницу «web-сервисы JIRA», в которой отображается список всех существующих web-сервисов JIRA.
Комбинация клавиш: g + g + начало ввода Webhooks.
- Нажмите сводку Web-сервисов JIRA в левом столбце «web-сервисы JIRA» (Webhooks), чтобы отобразить сведения о веб-сервисе JIRA.
Скриншот: Web-сервисы JIRA, отображаемые в консоли администрирования JIRA
Управление Web-сервисами JIRA через консоль администрирования JIRA
Web-сервисы JIRA могут быть зарегистрированы (созданы), отредактированы и удалены через консоль администрирования JIRA, вызовы REST или установку «Удаленного приложения» (Remote App). Инструкции на этой странице описывают, как управлять Web-сервисами JIRA через консоль администрирования JIRA. Информацию о других методах см. на странице "Обзор Web-сервисов JIRA".
Чтобы управлять web-сервисами JIRA, выполните следующие шаги:
- Войдите в систему как пользователь с глобальным разрешением администраторов JIRA.
- Выберите шестеренка> «Система» (System). Выберите «Дополнительно» (Advanced )> «Web-сервисы JIRA» (Webhooks), чтобы открыть страницу «Web-сервисы JIRA» (Webhooks), в которой отображается список всех существующих web-сервисов JIRA.
Комбинация клавиш: g + g + начало ввода Web-сервисов JIRA
- Создавайте / регистрируйте, редактируйте или удаляйте Web-сервисы JIRA по желанию.
- Создать (Create) — Нажмите «Добавить Web-сервисы JIRA» (Add a Webhook), введите данные web-сервисов JIRA и нажмите «Создать» (Create).
- Изменить (Edit) — Выберите нужный Web-сервис JIRA в сводном списке слева, нажмите «Изменить» (Create), обновите данные Web-сервис JIRA и нажмите «Сохранить» (Save).
- Удалить (Delete) — Выберите нужный Web-сервис JIRA в сводном списке слева и нажмите «Удалить» (Delete) в деталях Web-сервиса JIRA.
- Отключить (Disable) — Выберите нужный Web-сервис JIRA в сводном списке слева и нажмите «Отключить» (Disable) в настройках веб-хоста. Отключение Webhook предотвращает запуск Web-сервиса JIRA.
- Включить (Enable) (отключить только Web-сервисы JIRA) — выберите нужный отключенный Web-сервис JIRA в сводном списке слева и нажмите «Включить» (Enable) в в деталях Web-сервиса JIRA.
Советы по управлению Web-сервиса JIRA
- Ограничение Web-сервиса JIRA до набора задач / событий задач (Constraining the Webhook to a set of issues/issue events) — По умолчанию для всех событий, связанных с установкой JIRA, запускается Web-сервис JIRA. Вы можете ограничить это набором задач и набором событий задач (или никакими событиями задач). Для этого задайте необходимый набор задач (через инструкцию JQL) и набор событий задач, когда вы создаете или редактируете Web-сервис JIRA . Например, Web-сервис JIRA на скриншоте выше будет срабатывать только тогда, когда будут обновлены ошибки (bugs) с затронутой версией «1.0».
- Опущение JSON из POST (Omitting the JSON from the POST) —Если вы интегрируетесь с системой, в которой для запуска действия требуется только URL-адрес POST, а с телом с данными разбивается интеграция, вы можете настроить Web-сервис JIRA так, чтобы он не отправлял JSON с POST. Для этого установите флажок «Исключить данные» (Exclude details) при редактировании вашего Web-сервиса JIRA.
- Определение изменений в событии «Обновление задачи» (Determining the changes in an 'Issue Updated' event) — журнал изменений отправляется с событием «Обновление задачи» (Issue Updated) (за исключением объекта issue_generic_event). Вы можете прослушать это событие и проверить журнал изменений для изменений.
Расширение вашего web-сервиса JIRA
Запуск вашего Web-сервиса JIRA из функции postflow рабочего процесса
См. Настройка рабочих процессов.
Обратите внимание, что если web-сервис JIRA связан с пост-функцией, вы не можете удалить web-сервис JIRA. Вы должны сначала отключить его от постфункции.
Добавьте переменную ключа задачи в свой Web-сервис JIRA
Вы можете добавить переменную ключа задачи к своему Web-сервис JIRA, вставив $ {issue.key} в URL-адрес вашего Web-сервиса JIRA. Когда Web-сервис JIRA запускает задачу, ключ задачи будет заменен переменной в URL-адресе.
Например, скажем, у вас есть URL-адрес Web-сервиса JIRA с переменной $ {issue.key}:
http://example.com/bamboo/rest/api/latest/queue/BAMBOO/${issue.key}
Если Web-сервис JIRA запущен для JIRA-задачи с ключом JRA-1234, URL-адрес, на который был отправлен Web-сервис JIRA , будет:
http://example.com/bamboo/rest/api/latest/queue/BAMBOO/JRA-1234
Известные проблемы
- Почтовые функции Web-сервиса JIRA не будут срабатывать, если они добавлены в переход рабочего процесса создания задачи (Create Issue). Мы рекомендуем вам настроить Web-сервис JIRA, чтобы активировать его вместо события issue_created.
-
Если вы используете Web-сервисы JIRA в облаке JIRA, существует известная проблема, которая ограничивает номера портов, которые могут быть указаны в URL-адресе Web-сервиса JIRA. Если вы не следуете приведенным ниже рекомендациям, Web-сервис JIRA не будет запускаться.
- Если вы используете HTTP и указали номер порта в URL-адресе Web-сервиса JIRA, номер порта должен быть 80. Примечание. Если вы не укажете номер порта, Web-сервис JIRA будет работать.
- Если вы используете HTTPS и укажите номер порта в URL-адресе Web-сервиса JIRA, номер порта должен быть 443. Примечание. Если вы не укажете номер порта, Web-сервис JIRA будет работать.
По материалам Atlassian JIRA Administrator's Guide: Managing Webhooks