Перейти к основному содержимому

Интеграции

Интеграции позволяют организовать взаимодействие между Semaphore и внешними сервисами, такими как GitHub и GitLab.

С помощью интеграции вы можете запускать определённый шаблон, обращаясь к специальному эндпоинту (алиасу), для которого можно настроить один из следующих методов аутентификации:

  • Вебхуки GitHub
  • Токен
  • HMAC
  • Без аутентификации

Алиас представляет собой URL следующего формата: /api/integrations/<random_string>. Поддерживаются запросы GET и POST.

Условия совпадения (matchers)

С помощью условий совпадения (matchers) вы можете задать параметры входящего запроса. Если эти параметры совпадают, будет вызван шаблон.

Извлечение значений (extractors)

С помощью экстрактора вы можете извлечь необходимые данные из входящего запроса и передать их в задачу в виде переменных окружения. Чтобы извлечённые переменные были переданы в задачу, необходимо создать окружение с соответствующими ключами. Убедитесь, что ключи окружения совпадают с переменными, определёнными в экстракторе, — это позволит задаче получить и использовать правильные переменные окружения.

Параметры задачи

Интеграции могут запускать задачи с параметрами. Используйте экстракторы значений, чтобы сформировать JSON-нагрузку для параметров задачи, и настройте шаблон так, чтобы он принимал запрашиваемые значения.

Примечания об алиасах и условиях совпадения

Для интеграций, настроенных с эндпоинтом-алиасом, условия совпадения не используются. При необходимости используйте аутентификацию по токену/HMAC и передавайте параметры через экстракторы.