Como configurar um webhook para disparar deploy automático a cada push no GitHub
Olá, querido(a) desenvolvedor(a)! Seja bem-vindo(a) ao seu primeiro passo rumo ao deploy automático — sim, aquele sonho de atualizar seu site com um simples "push" no GitHub, sem precisar tocar no servidor manualmente. Aqui na GeHost, a gente te ajuda a transformar esse sonho em realidade, com um passo-a-passo claro, paciente e cheio de carinho. Vamos lá?
Pré-requisitos (para não se perder no caminho)
- Seu projeto já está no GitHub (com um repositório público ou privado).
- Seu site já está hospedado na GeHost (com acesso ao cPanel).
- Seu projeto tem um arquivo
index.htmlou outro arquivo de entrada (comoapp.php,index.php, etc.) na raiz do repositório. - Seu site está acessível via URL (ex:
seusite.com.br).
Dica do Sensei: Antes de tudo, certifique-se de que seu repositório no GitHub está atualizado e que o código que você quer publicar está nomainoumaster(dependendo do nome da branch).
Passo 1: Acesse o cPanel da sua conta GeHost
Para começar, faça login no cPanel da sua conta na GeHost. Basta acessar seu-dominio.com.br/cpanel (substitua pelo seu domínio real) e digitar suas credenciais.
Passo 2: Encontre o Gerenciador de Arquivos
Depois de logado, procure na tela inicial do cPanel o grupo de ferramentas chamado Arquivos. Clique em Gerenciador de Arquivos.
Passo 3: Acesse a pasta pública do seu site
No Gerenciador de Arquivos, selecione a pasta public_html (ou www, dependendo da configuração). Essa é a pasta que contém o código do seu site visível na internet.
Passo 4: Crie um arquivo de deploy (chamado `deploy.sh`)
Na pasta public_html, clique no botão Novo Arquivo e crie um arquivo chamado deploy.sh. Esse arquivo será o responsável por atualizar seu site automaticamente.
Abra o arquivo deploy.sh para editar e cole o seguinte conteúdo:
#!/bin/bash
# Script de deploy automático via webhook
cd /home/SEU_USUARIO/public_html
git pull origin main
echo "Deploy realizado com sucesso!"
Dica do Sensei: SubstituaSEU_USUARIOpelo nome do usuário da sua conta no cPanel (ex:joao). Se não souber, veja no cPanel: em Configurações > Informações da Conta.
Passo 5: Torne o script executável
Volte ao Gerenciador de Arquivos, clique com o botão direito no arquivo deploy.sh e escolha Alterar Permissões.
Marque as opções para leitura e execução para Usuário e Grupo. O resultado deve ser algo como 755.
Passo 6: Crie um webhook no GitHub
Volte ao seu repositório no GitHub. Clique em Settings > Webhooks > Add webhook.
Preencha os campos assim:
- Payload URL:
https://seusite.com.br/deploy.sh(substitua pelo seu domínio real) - Content type:
application/json - Which events would you like to trigger this webhook? Selecione Just the push event.
- Clique em Add webhook.
Dica do Sensei: O GitHub só enviará uma requisição ao seu servidor quando você fizer umpushno repositório. Seu scriptdeploy.shserá acionado automaticamente!
Passo 7: Teste o deploy
Faça um pequeno ajuste no seu código (ex: altere o texto de uma página) e faça um git push no GitHub.
Volte ao cPanel e verifique se o script foi executado. Você pode verificar no histórico de logs do cPanel (em Logs > Access Logs) ou, se tiver acesso ao terminal, verifique se o git pull foi executado.
Pronto! Você está no caminho do DevOps mágico
Parabéns, Sensei do Futuro! Agora, cada vez que você fizer um push no GitHub, seu site será atualizado automaticamente. Isso é o poder do deploy contínuo — sem esforço, sem erros humanos, só evolução.
Última dica do Sensei: Se algo não funcionar, verifique se o script tem permissão de execução, se o caminho do diretório está correto, e se o webhook está ativado no GitHub. Às vezes, o GitHub só envia requisições em 30 segundos — paciência, meu jovem!