Comments 4
А зачем в этой цепочке нужен яндекс? Насколько усложнилась бы задача если бы не было яндекса?
Yandex Cloud используется в качестве инфраструктуры, которая связывает между собой Gitlab и Telegram бота.
При мердж реквесте Gitlab отправляет чётко определённый запрос, который нельзя кастомизировать, а у Telegram бота есть определённый API, который нужно вызвать и который тоже не кастомизируется.
Не получится реализовать процесс так, чтобы Gitlab отправил нужный запрос сразу Telegram боту. Для этого и нужно связующее звено, иначе не будет работать.
Есть альтернативные варианты, которые позволяют не использовать Yandex Cloud, в данной статье описана лишь одна из множества реализаций.
Вся кастомизация идет через get запрос, который вы указываете в url адресе хука
Но так не получится кастомизировать уведомления под нужды, которые описаны в статье. Нужны уведомления от Telegram бота только тогда, когда ветку feature вливают в develop.
В документации Gitlab описаны все вариации, когда будут приходить уведомления, если сделать так как предлагаете Вы: "The available values for object_attributes.action in the payload are: open close reopen update approved unapproved approval unapproval merge". И в этом случае даже не будет понятно, какое именно действие только что произошло с мердж реквестом.
Уведомления о деплое Gitlab через Telegram-бота при помощи Yandex Cloud Functions