Servidor & DevOps 41 visualizações

Como configurar testes automatizados de fumaça (smoke tests) logo após o deploy

Ver no WHMCS

Como configurar testes automatizados de fumaça (smoke tests) logo após o deploy

Olá, querido(a) cliente da GeHost! 🌟

Você já teve aquela sensação de "tudo parece funcionar, mas será que está mesmo?" logo após um novo deploy no seu site? Pois é, isso é comum — e a boa notícia é que testes de fumaça automatizados podem te salvar de surpresas desagradáveis!

Imagine um pequeno "teste de acendimento" do seu site: você faz o deploy, e em segundos, um sistema verifica se a página principal carrega, se o banco de dados está acessível e se o e-mail está funcionando. É como acender uma vela — se acende, tudo bem; se não acende, você já sabe que algo está errado. 🕯️ Neste guia, vou te ensinar, passo a passo, como configurar esses testes de forma simples, segura e eficaz — mesmo que você não seja técnico. Vamos juntos, como um verdadeiro Sensei da GeHost! ---

📌 O que são testes de fumaça (smoke tests)?

Testes de fumaça são pequenos, rápidos e cruciais. Eles verificam se os componentes essenciais do seu site estão funcionando logo após um novo deploy.

Exemplos:

  • A página principal carrega?
  • O banco de dados responde?
  • O e-mail profissional está ativo?
  • O certificado SSL está instalado?

Se algum desses falhar, o deploy pode ser interrompido automaticamente — evitando que seu site fique com erros visíveis para os usuários.

---

🛠️ Passo a passo: como configurar smoke tests na GeHost

Como você já tem seu site hospedado com a GeHost, vamos aproveitar o que já temos: o cPanel, o FTP e o acesso via SSH (se seu plano permitir). Vamos usar apenas o que está disponível — sem precisar de ferramentas externas complicadas.

  1. Escolha uma ferramenta de automação simples
    Recomendamos usar GitHub Actions ou GitLab CI — ambos são gratuitos e muito fáceis de configurar. Eles rodam automaticamente após cada push no seu repositório.
  2. Configure o deploy no seu repositório
    No seu .github/workflows/deploy.yml (ou equivalente), adicione uma etapa que copie os arquivos do seu site para o servidor via FTP ou SSH. Exemplo:
  3. Use o scp ou rsync para enviar os arquivos para o diretório public_html do seu domínio. Lembre-se de usar as credenciais do cPanel (usuário e senha).

  4. Adicione o teste de fumaça após o deploy
    Após o upload dos arquivos, adicione um novo passo que execute um script simples. Esse script pode fazer requisições HTTP para verificar se o site está online.
  5. Escreva o script de teste (exemplo básico em Bash)
    Crie um arquivo chamado smoke-test.sh com conteúdo como este:
  6. #!/bin/bash
    echo "Executando teste de fumaça..."
    
    # Verifica se a página principal carrega
    if curl -f -s http://seudominio.com.br > /dev/null; then
      echo "✅ Página principal está acessível."
    else
      echo "❌ Página principal não responde. Falha no deploy."
      exit 1
    fi
    
    # Verifica se o banco de dados está acessível (exemplo com MySQL)
    if mysql -h localhost -u seu_usuario -p'sua_senha' -e "SHOW DATABASES;" > /dev/null 2>&1; then
      echo "✅ Banco de dados está funcionando."
    else
      echo "❌ Banco de dados não responde. Falha no deploy."
      exit 1
    fi
    
    echo "✅ Todos os testes de fumaça passaram!"
    exit 0
  7. Salve o script no servidor
    Após o deploy, o sistema pode copiar o smoke-test.sh para o servidor (via FTP/SSH) e executá-lo com chmod +x smoke-test.sh && ./smoke-test.sh.
  8. Integre com o cPanel (opcional, mas útil)
    Você pode usar o CRON no cPanel para rodar esse teste periodicamente — por exemplo, a cada 10 minutos. Isso ajuda a detectar falhas antes que o usuário perceba.
---

📸 Veja como acessar o cPanel para gerenciar o cron

Para configurar o cron (agendamento automático), acesse o cPanel:

Tela de login do cPanel com campos Usuário e Senha e botão Log in

Depois de logado, clique em “Cron Jobs” no grupo “Advanced”:

Painel inicial do cPanel com os grupos de ferramentas, incluindo 'Advanced' com 'Cron Jobs'

Lá, você pode agendar o script de teste para rodar a cada 10 minutos, por exemplo.

---

💡 Dicas do Sensei

  • Teste em ambiente de staging primeiro
    Antes de rodar em produção, teste seu script em um domínio de teste. Assim, você evita surpresas.
  • Não use senhas em texto claro no repositório
    Use variáveis de ambiente (como DB_PASSWORD) no GitHub Actions, não coloque senhas no código.
  • Reaja rápido
    Se o teste falhar, configure alertas por e-mail ou Telegram. Um simples echo "FALHA NO DEPLOY!" | mail -s "Alerta" seu@email.com.br pode salvar seu dia.
---

🔐 Segurança e boas práticas

Lembre-se: seu domínio, banco de dados e e-mail são parte de sua identidade digital. Por isso:

  • Nunca compartilhe credenciais de cPanel com terceiros.
  • Use senhas fortes e únicas.
  • Ative o SSL/TLS no cPanel (em SSL/TLS Certificates) para proteger todas as conexões.

Se precisar de ajuda, entre em contato com o Suporte da GeHost — estamos aqui para você. E lembre-se: 30 dias de suporte grátis estão incluídos na sua hospedagem.

---

📚 Conclusão

Testes de fumaça não são só para grandes empresas. Qualquer site, mesmo pequeno, se beneficia de um “check-in” automático após cada deploy.

Com um pouco de organização e um script simples, você pode ter um site que sempre está “aceso” — e sem surpresas para seus visitantes.

Seu site é como uma planta: precisa de cuidado, mas com um pouco de atenção, floresce com tranquilidade. 🌱

Até a próxima, com carinho,
O Sensei da GeHost
G e Soluções e Eventos LTDA — CNPJ: 46.647.904/0001-04

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.