scieloorg / scielo.org

Website institucional da Rede SciELO
MIT License
1 stars 7 forks source link

Adiciona etapas para gerar os arquivos estáticos de produção #103

Closed joffilyfe closed 5 years ago

joffilyfe commented 5 years ago

O que esse PR faz?

Este pull request visa solucionar o problema do versionamento dos arquivos estáticos finais que são utilizados no ambiente de produção. Para tanto foi criado o arquivo package.json que determina as dependências necessárias para transpilar e minificar os arquivos sass e javascript e que também contém os comandos necessários para produzir os arquivos .css e .js.

Também foi modificado do arquivo Dockerfile para suportar o build de tais arquivos durante a produção da imagem docker.

Este PR leva em consideração o PR #96 onde os arquivos .scss foram disponibilizados.

Onde a revisão poderia começar?

Como este poderia ser testado manualmente?

Para testar manualmente este PR deve-se:

Algum cenário de contexto que queira dar?

N/A

Screenshots

N/A

Quais são tickets relevantes?

N/A

Referências

[1] - Docker multistage build

joffilyfe commented 5 years ago

@paratiuid Este pull request adiciona a capacidade de gerar os arquivos estáticos (bundle) na hora que estamos gerando a imagem docker. Como nós não possuímos os scripts para gerar os bundles da mesma maneira que vocês resolvi utilizar o npm como ferramenta para isso. É possível gerar os arquivos minificados da seguinte maneira:

npm run css-compile
npm run js-minify

Vocês poderiam por favor verificar se os arquivos gerados são compatíveis com os que vocês geram atualmente?

paratiuid commented 5 years ago

@joffilyfe vou verificar e já lhe envio um retorno.

joffilyfe commented 5 years ago

@joffilyfe vou verificar e já lhe envio um retorno.

Olá @paratiuid vocês conseguiram investigar o PR?

paratiuid commented 5 years ago

@joffilyfe vou verificar e já lhe envio um retorno.

Olá @paratiuid vocês conseguiram investigar o PR?

@joffilyfe estou verificando neste momento. Fazendo alguns testes.

paratiuid commented 5 years ago

@joffilyfe vou verificar e já lhe envio um retorno.

Olá @paratiuid vocês conseguiram investigar o PR?

@joffilyfe estou verificando neste momento. Fazendo alguns testes.

@joffilyfe

estou rodando a aplicação localmente utilizando o arquivo docker-compose-dev.yml Este arquivo foi criado hoje, pelo @jamilatta e commitado diretamente na master.

Peço que você inclua suas configurações de processamento de css e js nesse arquivo também em sua branch. Pois senão, fico sem css ao subir via ambiente de dev.

Aguardo.

joffilyfe commented 5 years ago

@joffilyfe vou verificar e já lhe envio um retorno.

Olá @paratiuid vocês conseguiram investigar o PR?

@joffilyfe estou verificando neste momento. Fazendo alguns testes.

@joffilyfe

estou rodando a aplicação localmente utilizando o arquivo docker-compose-dev.yml Este arquivo foi criado hoje, pelo @jamilatta e commitado diretamente na master.

Peço que você inclua suas configurações de processamento de css e js nesse arquivo também em sua branch. Pois senão, fico sem css ao subir via ambiente de dev.

Aguardo.

@paratiuid não é necessário que vocês rodem o build do docker para observar as modificações. Eu sugiro que a etapa de build utilizada por vocês (gulp) seja trocada para a execução dos scripts do npm afim de observar SE os bundles gerados satisfazem e se não há regressão de funcionalidades.

De toda forma já incluí os dois arquivos nesta branch, em caso de dúvida pode me contactar direto pelo e-mail joffily.ferreira [@] scielo.org.

joffilyfe commented 5 years ago

@joffilyfe fiz os testes aqui. Me parece tudo ok. Não peguei problema nenhum nem de css nem de js. Executei o comando para compilar o css e depois rodou tudo normalmente.

Apenas fiquei com uma dúvida quanto ao processo daqui para frente: Com essa mudança, sempre que realizarmos qualquer ajuste tanto em css quanto em js não devemos commitar os css nem os js minificados, é isso?

Que ótimo @paratiuid, sim exatamente, os arquivos finais de produção serão gerados quando as imagens docker foram geradas. Pretendemos com isso facilitar o processo de integração de código nos repositórios (aqui e futuramente no opac) já que não mais existiram conflitos em arquivos .css minificados. Parece uma abordagem razoável para vocês?

paratiuid commented 5 years ago

@joffilyfe fiz os testes aqui. Me parece tudo ok. Não peguei problema nenhum nem de css nem de js. Executei o comando para compilar o css e depois rodou tudo normalmente. Apenas fiquei com uma dúvida quanto ao processo daqui para frente: Com essa mudança, sempre que realizarmos qualquer ajuste tanto em css quanto em js não devemos commitar os css nem os js minificados, é isso?

Que ótimo @paratiuid, sim exatamente, os arquivos finais de produção serão gerados quando as imagens docker foram geradas. Pretendemos com isso facilitar o processo de integração de código nos repositórios (aqui e futuramente no opac) já que não mais existiram conflitos em arquivos .css minificados. Parece uma abordagem razoável para vocês?

@joffilyfe sim, funcionou bem.

Acredito que seja uma boa solução para o problema de conflitos nos minificados.

joffilyfe commented 5 years ago

Ótimo então @paratiuid, vou integrar o código agora e vocês podem fazer rebase nos outros PRs que estão com a tag bloqueado para que possamos zerar esta fila, obrigado!

paratiuid commented 5 years ago

@joffilyfe ok.