Estou fazendo deploy da forma correta?

Boa noite pessoal, tenho uma dúvida:

Tenho uma API em Node hospedada na umbler, porém não sei se da forma correta.

Atualmente, está hospedada juntamente com a pasta do build, então quando eu modifico algo, preciso dar um build e depois subir (com toda a pasta build junto) isso está correto?

Tem alguma forma de atualizar sem subir a pasta build junto, e sem precisar sempre buildar a aplicação antes?

Desde já agradeço

Olá @LucasFMachado,

Boa pergunta. No caso do node o pipeline de build “automático” aconteceu quando você escolhe fazer o deploy por git, ele vai executor os scripts de preinstall, install, postinstall e start do seu package.json. Geralmente nessa estratégia só é preciso definir os comando de build no postinstall e tudo vai acontecer magicamente ao fazer o deploy(Vai ser feita a instalação dos pacotes e a build da tua aplicação e por fim executar o start). Esse geralmente é o caminho normal.

Outra opção é você fazer o “deploy” manual enviando sua pasta build, node_modules e os arquivos necessários do start para sua aplicação funcionar. Essa opção dá mais trabalho por ter que fazer isso manualmente toda vez que você gera uma nova build e quer por no ar.

3 curtidas

Então só precisaria colocar o comando de build em um script chamado “postinstall”? Para não precisar sempre rodar o build manualmente quando for subir a aplicação?

Exato! Nas páginas de ajuda fala sobre o script de starthttps://help.umbler.com/hc/pt-br/articles/115001793863-Node-JS-na-Umbler. E além desse script você deve configurar o post install para fazer o build da sua aplicação.

Numa aplicação angular por exemplo, ficaria:

   "scripts": {
    "start": "node server.jsr"
    "postinstall": "ng build --prod --aot"
  },

Para o angular também tem um passos a mais que trato em detalhes aqui: Solução para problemas de deploy de aplicação Angular

1 curtida

Muito obrigado pela ajuda :grinning:

1 curtida