Implantando com confiança: uma lista de verificação prática

Quando você está lidando com produção, quão importante é não se esquecer de fazer as coisas certas? Uma lista exaustiva de itens da lista de verificação é muito útil para maximizar minha confiança na implantação de um aplicativo. Talvez você nunca tenha 100% de certeza de que uma implantação funcionará bem, mas pode estar 100% de confiança, mesmo que não seja realmente a mesma coisa.

Então pergunte a si mesmo:

  • Você está trabalhando em uma seção do código na qual outra pessoa é mais especialista e, se sim, você fez uma verificação de sanidade com ela em relação às suas alterações?

  • Você testou seu branch de código completamente? Teste suas alterações localmente.

  • Você executou o conjunto de testes localmente?

  • Você retirou a última versão do master, verificar se a integração com as outras alterações deve funcionar?

  • Alguém se comprometeu com o branch de desenvolvimento antes que seu recurso seja concluído? Você testou outras alterações recentes para se certificar de que não quebrou nada para mais ninguém?

  • Você provou que o escopo de suas alterações é preciso e que não haverá efeitos em cascata imprevistos?

  • Há algum teste que você não escreveu que deveria ser escrito? Em caso afirmativo, escreva-os!

  • Você fundiu seu branch LOCALMENTE em sua cópia LOCAL do master e refez todos os seus testes?

  • O log do git parece correto como você espera? Se algo for inesperado, entenda o que aconteceu e volte, se necessário

  • Você fez uma verificação de sanidade para ter certeza de que está operando na realidade, em vez de alguma versão da realidade que você mesmo criou?

  • A integração contínua está passando?

  • SOMENTE QUANDO PRONTO, mesclar para mestre REMOTO

  • Você implantou e testou suas alterações em um ambiente de preparação?

  • Você perguntou sobre quaisquer problemas recentes com a implantação que outros desenvolvedores possam ter tido, e se há alguma etapa especial que você precisa realizar durante a implantação?

  • Você revisou seu plano de reversão? Você tem certeza? Sua implantação envolve alterações de modelos de dados e, como consequência, quaisquer MIGRAÇÕES de banco de dados?

  • Você tem sua implantação agendada em um momento apropriado?

  • Você notificou quaisquer partes potencialmente afetadas que dependem de seu aplicativo e que podem ser afetadas se houver tempo de inatividade?

  • Algo deu errado com a implantação anterior e, em caso afirmativo, você atualizou esta lista de verificação para refletir as lições aprendidas?

Tem certeza de que está pronto para implantar? Agora está tudo bem 🙂