Вебхуки (webhooks) в интерфейсе GitVerse
Вебхуки (webhooks) — это механизм автоматической отправки уведомлений о событиях (events) в репозитории на внешний сервис или URL-адрес. Когда в репозитории происходит событие (push коммита, создание pull request (запроса на слияния), выпуск релиза), GitVerse отправляет HTTP-запрос с данными о событии на настроенный URL.
На данной странице вы можете сконфигурировать вебхук-уведомления для репозитория, владельцем или администратором которого вы являетесь (см. Соавторы и совместная разработка), в том числе:
- создавать новые вебхуки;
- редактировать существующие вебхуки и просматривать журнал вебхук-уведомлений.
Warning
Выход в интернет осуществляется через proxy, разрешен выход только на стандартные HTTP и HTTPS порты (80 и 443).
Вы можете настроить вебхук на одном из трех уровней:
- репозиторий — срабатывает только на событиях этого репозитория;
- пользователь — срабатывает на событиях всех репозиториев, принадлежащих этому пользователю;
- организация — срабатывает на событиях всех репозиториев, принадлежащих этой организации.
Наследование вебхуков
При просмотре списка вебхуков репозитория отображаются:
- вебхуки самого репозитория;
- наследованные вебхуки владельца репозитория (пользователя или организации).
Наследованные вебхуки отображаются как только для чтения — их нельзя изменить или удалить через настройки репозитория.
Создание нового вебхук-уведомления
Чтобы создать новое вебхук-уведомление (webhook notification), нажмите кнопку Вебхуки на странице настроек репозитория. Это откроет форму настройки нового вебхука.
Выбор сервиса
На странице создания нового вебхук-уведомления есть возможность настроить отправку сообщений для следующих сервисов:
- Telegram (пример настройки бота);
- MAX (пример настройки бота);
- Discord;
- другого внешнего сервиса через пользовательский URL (custom URL).
Меню выбора сервиса выпадает при нажатии на кнопку Сервис. Выбор сервиса определяет формат отправки данных и параметры конфигурации вебхука.
Выбор события для отправки вебхук-уведомлений
Отправка вебхук-уведомлений (webhook notifications) о событиях репозитория настраивается в следующих режимах:
- отправка — уведомления отправляются только по событиям сохранения изменений в коде (
commit); - все — уведомления отправляются обо всех событиях репозитория (push, pull request, issue, release и другие);
- по выбору — уведомления отправляются только по явно выбранным событиям.
Выбор режима определяет, какие события репозитория будут триггерить отправки вебхука на настроенный URL.
Настройка существующих вебхуков
Для существующих вебхуков (webhooks) отображены следующие элементы управления:
- статус — показывает, активен вебхук или отключен;
- основные настройки — параметры, такие как токен и id чата;
- переключатель вебхука — кнопка быстрого включения/отключения отправки уведомлений;
- кнопка создания и кнопка удаления вебхука — управление жизненным циклом вебхука.
Авторизация вебхука
Для работы вебхука может потребоваться токен авторизации на сервере, куда отправляете событие.
Для этого необходимо указать Заголовок Authorization, передача токена как query-параметр запрещена.
Редактирование вебхука и журнал вебхука
Нажмите кнопку редактирования, чтобы перейти на страницу настройки существующего вебхук-уведомления.
На вкладке Параметры есть возможность внести изменения в конфигурацию вебхука: изменить URL, токен, список событий или другие параметры. Сохраните изменения для применения новой конфигурации.
Вкладка Последние рассылки (delivery log) содержит историю вебхук-уведомлений. Для каждого уведомления в журнале есть возможность:
- ознакомиться с запросом (request payload) — посмотреть HTTP-запрос, отправленный вебхуком;
- ознакомиться с ответом (response) — увидеть ответ сервера, получившего вебхук-уведомление;
- повторить рассылку нужного уведомления (resend) — отправить уведомление повторно. Повторное уведомление добавится в журнал.
Журнал рассылки помогает диагностировать проблемы доставки вебхук-уведомлений и повторить неудачные попытки отправки.