Configurando Notificacoes

O Runner pode enviar notificacoes de deploy via Telegram ou Discord.

Telegram

1. Criar Bot

  1. Abra o Telegram e busque @BotFather
  2. Envie /newbot
  3. Siga as instrucoes para criar o bot
  4. Copie o token gerado (formato: 123456789:ABCdefGHIjklMNOpqrsTUVwxyz)

2. Obter Chat ID

Para enviar para um grupo:

  1. Adicione o bot ao grupo
  2. Envie uma mensagem no grupo
  3. Acesse: https://api.telegram.org/bot{TOKEN}/getUpdates
  4. Encontre o chat.id (numero negativo para grupos)

Para enviar para voce mesmo:

  1. Envie qualquer mensagem para o bot
  2. Acesse a URL acima
  3. Encontre seu chat.id

3. Configurar Runner

Edite /opt/runner/config.yml:

telegram_bot_token: "123456789:ABCdefGHIjklMNOpqrsTUVwxyz"
telegram_chat_id: "-1001234567890"

4. Configurar por App (Opcional)

No .deploy.yml de cada app:

notify:
  channel: telegram

Discord

1. Criar Webhook

  1. Abra as configuracoes do canal Discord
  2. Va em Integracoes → Webhooks
  3. Clique em "Criar Webhook"
  4. Copie a URL do webhook

2. Configurar Runner

Edite /opt/runner/config.yml:

discord_webhook: "https://discord.com/api/webhooks/..."

3. Configurar por App

No .deploy.yml:

notify:
  channel: discord

Mensagens Enviadas

Deploy Iniciado

🚀 Deploy iniciado
Projeto: meu-app
Versao: v1.2.0
Instancia: production

Deploy Concluido

✅ Deploy concluido
Projeto: meu-app
Versao: v1.2.0
Instancia: production
Duracao: 45s

Deploy Falhou

❌ Deploy falhou
Projeto: meu-app
Versao: v1.2.0
Instancia: production
Erro: Health check timeout

Rollback Executado

⚠️ Rollback executado
Projeto: meu-app
De: v1.2.0
Para: v1.1.0
Motivo: Health check falhou

Variaveis em Templates

O Runner suporta variaveis nas mensagens:

Variavel Descricao
${PROJECT} Nome do projeto
${VERSION} Versao deployada
${INSTANCE} Nome da instancia
${PREVIOUS_VERSION} Versao anterior
${DURATION} Tempo de deploy
${ERROR} Mensagem de erro
${DOMAIN} Dominio da instancia

Desabilitar Notificacoes

Globalmente

Deixe os campos vazios no config.yml:

telegram_bot_token: ""
telegram_chat_id: ""
discord_webhook: ""

Por App

Omita a secao notify no .deploy.yml.

Por Deploy

runner deploy meu-app --no-notify

Testando

Telegram

curl -X POST "https://api.telegram.org/bot{TOKEN}/sendMessage" \
  -d "chat_id={CHAT_ID}" \
  -d "text=Teste de notificacao do Runner"

Discord

curl -X POST "{WEBHOOK_URL}" \
  -H "Content-Type: application/json" \
  -d '{"content": "Teste de notificacao do Runner"}'

Troubleshooting

Telegram nao envia

  1. Verifique se o token esta correto
  2. Verifique se o chat_id esta correto (negativo para grupos)
  3. Verifique se o bot foi adicionado ao grupo

Discord nao envia

  1. Verifique se a URL do webhook esta completa
  2. Verifique se o webhook nao foi deletado
  3. Teste a URL manualmente

Notificacoes atrasadas

  • Verifique conexao de rede do servidor
  • APIs podem ter rate limiting
By Borlot.com.br on 12/02/2026