Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Diferença entre build e deploy

Olá, assisti aos vídeos de DevOps e fiquei em dúvida sobre a diferença entre build e deploy. Talvez seja uma diferença melhor entendido para quem trabalha com java, mas, no meu caso, eu trabalho com Drupal/PHP e gostaria de saber como entender o que é build e o que é deploy de um projeto em PHP.

1 resposta
solução!

Olá Edson, tudo bem? Então é mais fácil entender essas duas palavras quando estamos trabalhando com um projeto Java ou outra linguagem, tipo no java poderiamos dizer que o build é quando geramos um arquivo com a extensão .war (um arquivo compactado com todas as dependências do projeto), digamos que geramos o arquivo com o nome sistema.war que futuramente será executado em um servidor. Já o deploy poderíamos dizer que é o momento em que colocamos esse arquivo sistema.war no servidor Tomcat que vai disponibilizar essa aplicação para os clientes.

Porém isso também se aplica a outras linguagens, ou ferramentas, um bom exemplo disso é um projeto ReactJS, o servidor geralmente não compreende as coisas que são feitas no mundo ReactJS e é necessário transpilar o código para o javascript puro que o servidor entenda, e nesse caso é feito build gerando assim um pasta com todos os arquivos já em javascript puro e pronto para serem enviados para o servidor executar, no caso, prontos para o deploy no servidor.

Um processo semelhante também acontece com aplicações móveis, onde geralmente é feito uma compactação, uma junção dos arquivos para ficarem pronto para serem enviados para as lojas e depois dispositivos, por exemplo, um projeto de um aplicativo android sempre precisamos gerar o APK para ser enviado para a Play Store ou para o dispositivo em si.

Já em um projeto PHP, o build e o deploy geralmente fica difícil de diferenciar, mas o build podemos considerar como momento em que fazemos o download de todas as dependências do projeto, já que o PHP é um linguagem interpretada, e o deploy é quando você coloca todos os arquivos do projeto no servidor para serem executados e os clientes consigam acessar.

Espero ter esclarecido sua dúvida!