Содержание
Уведомления о сбоях CI по email и в Slack легко пропустить. Echobell Notification Action отправляет оповещения по вебхуку прямо на телефон — push-уведомления для обычных сборок, телефонные звонки для сбоев на проде, — чтобы сломанные пайплайны не оставались незамеченными.
Настройка
1. Создайте канал в Echobell
- Скачайте Echobell / Google Play и войдите в аккаунт
- Создайте канал с названием вроде «GitHub CI/CD Alerts»
- Скопируйте URL вебхука из настроек канала
- В репозитории GitHub: Settings → Secrets and variables → Actions → New repository secret
- Назовите секрет
ECHOBELL_WEBHOOK_URLи вставьте URL
2. Добавьте в свой workflow
Базовая настройка (workflow с одним job):
name: Build and Test
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
run: npm run build
- name: Test
run: npm test
- name: Notify on Failure
if: failure()
uses: weelone/echobell-action@v1
with:
webhook-url: ${{ secrets.ECHOBELL_WEBHOOK_URL }}
Пайплайны с несколькими job — используйте отдельный job для уведомлений, зависящий от всех критичных job:
name: Deploy Pipeline
on:
push:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Tests
run: npm test
build:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build
run: npm run build
deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: Deploy
run: npm run deploy
notify_on_failure:
runs-on: ubuntu-latest
needs: [test, build, deploy]
if: failure()
steps:
- name: Send Failure Notification
uses: weelone/echobell-action@v1
with:
webhook-url: ${{ secrets.ECHOBELL_WEBHOOK_URL }}
Отдельный job для уведомлений даёт одно сводное оповещение при каскадных сбоях вместо нескольких отдельных уведомлений.
Советы
Заголовки уведомлений должны отвечать на вопросы: что упало, где и когда. Используйте шаблоны вроде ❌ Main Branch CI Failed или 🚨 Deploy Pipeline Down - Production.
Заводите отдельные каналы по уровню критичности. Обычный канал — для рядовых оповещений CI, второй канал с типом Звонок — для сбоев на проде. Направляйте разные workflow на разные URL вебхуков. Подробности — в статье про звонковые уведомления.
Делитесь каналами с командой. Создайте канал для сбоев CI/CD, которые должна видеть вся команда, и отдельный — для проблем, касающихся только инфраструктуры. Общие каналы в Echobell позволяют коллегам подписываться со своими настройками уведомлений — каждому не нужно настраивать вебхуки отдельно.
Связанные материалы
- Документация по вебхукам — полный справочник по API вебхуков
- Шаблоны и Условия — настройка содержимого уведомлений и фильтрации
- Звонковые уведомления в Grafana — оповещения телефонным звонком для систем мониторинга
- Уведомления WebhookMCP — оповещения о завершении задач ИИ
- Документация по возможностям: Каналы, Вебхуки, Email-триггеры, Звонковые уведомления