Como configurar um webhook para disparar o deploy automático após um push no Git
Olá, dev! Seja bem-vindo ao seu novo Sensei da GeHost — aqui, vamos te guiar com calma, paciência e um toque de carinho para que você consiga automatizar seu deploy com segurança e tranquilidade. 🌟
Imagine isso: você faz um push no seu repositório Git (no GitHub, GitLab ou outro serviço), e, em segundos, seu site já está atualizado no servidor. Sem precisar clicar em nada. Isso é possível com um webhook. E hoje, vamos montar isso juntos, passo a passo, como se fosse um ritual de aprendizado. Vamos lá?
Antes de começar: o que você precisa ter
- Seu site já hospedado na GeHost (com acesso ao cPanel).
- Um repositório Git (GitHub, GitLab, Bitbucket, etc.) com seu projeto.
- Permissão para configurar webhooks no seu repositório.
- Seu domínio já apontando para a GeHost (DNS configurado).
Dica do Sensei: Se você não tem certeza se está tudo certo, entre no painel do cliente e verifique se seu domínio está listado e ativo.
Passo 1: Acesse o cPanel da sua conta
Para começar, faça login no cPanel da sua hospedagem:
Insira seu usuário (geralmente é o nome da sua conta) e a senha (a mesma do painel do cliente). Depois, clique em Log in.
Passo 2: Acesse o Gerenciador de Arquivos
Após entrar no cPanel, procure pela ferramenta chamada Gerenciador de Arquivos. Ela está na seção Arquivos.
Clique nela. No topo, selecione a pasta public_html (é onde seu site vive).
Passo 3: Crie um script de deploy (um "mini-robô")
Para que o webhook funcione, precisamos de um pequeno script que será acionado quando o Git enviar um push. Vamos criar um arquivo chamado deploy.php dentro da pasta public_html.
- No Gerenciador de Arquivos, clique em Novo Arquivo.
- Digite deploy.php como nome.
- Clique em Salvar.
Depois, clique duas vezes no arquivo para editá-lo. Cole o seguinte código:
<?php
// Script de deploy automático via webhook
// Sensei da GeHost - seu amigo no mundo da automação
// Verifica se o acesso é do webhook (opcional, mas recomendado)
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
http_response_code(405);
echo 'Método não permitido.';
exit;
}
// Caminho para o diretório do seu projeto (ajuste se necessário)
$project_dir = __DIR__;
// Comando para atualizar o código via Git
$command = 'cd ' . escapeshellarg($project_dir) . ' && git pull origin main';
// Executa o comando
$output = shell_exec($command);
// Responde com sucesso
http_response_code(200);
echo 'Deploy realizado com sucesso!';
Dica do Sensei: Se o seu branch principal for master ou outro nome, troque main pelo nome correto. Você pode verificar isso no seu repositório Git.
Passo 4: Configure o webhook no seu repositório
Agora, vamos para o seu repositório (GitHub, GitLab, etc.). Aqui está o passo geral:
- Entre no seu repositório.
- Procure por Settings → Webhooks (ou "Hooks", dependendo da plataforma).
- Clique em Add webhook.
- Na URL, coloque:
https://seudominio.com.br/deploy.php(substituaseudominio.com.brpelo seu domínio real). - Selecione o evento: Push (para disparar no push).
- Salve o webhook.
Dica do Sensei: Se você não tem certeza do domínio, verifique no painel do cliente ou no arquivo public_html/index.html — ele mostra o domínio do site.
Passo 5: Teste o webhook
Para garantir que tudo está funcionando:
- Faça um pequeno commit e push no seu repositório.
- Volte para o Gerenciador de Arquivos e verifique se o arquivo
deploy.phpainda está lá. - Abra o arquivo no navegador:
https://seudominio.com.br/deploy.php - Se aparecer "Deploy realizado com sucesso!", parabéns! O webhook está funcionando. 🎉
Atenção: Se não aparecer nada, verifique se o PHP está habilitado (geralmente é por padrão na GeHost). Se precisar, entre em contato com o suporte.
Passo 6: Segurança (não pule isso!)
Por segurança, o webhook não deve ser acessível por qualquer pessoa. Vamos proteger o script:
- No Gerenciador de Arquivos, clique com o botão direito em
deploy.php. - Escolha Editar (ou "Propriedades").
- Em Permissões, defina como 644 (leitura para todos, escrita só para o dono).
Dica do Sensei: Evite deixar o script com permissão 777. Isso é como deixar a porta aberta para todos — não é seguro.
Conclusão: você está no controle!
Parabéns, dev! Você acabou de automatizar o deploy do seu site com um webhook. Agora, toda vez que você fizer um git push, seu site será atualizado automaticamente — sem precisar se lembrar de nada.
É assim que a tecnologia nos ajuda a focar no que realmente importa: criar coisas incríveis.
Se tiver dúvidas, não hesite em entrar em contato com o suporte da GeHost. Estamos aqui para te ajudar — e com um sorriso no coração. 😊
Nota: Todos os dados fiscais e contratuais estão disponíveis na sua fatura. Para informações sobre CNPJ, consulte a fatura ou entre em contato com o suporte. O CNPJ oficial da empresa é 46.647.904/0001-04.