SocialSoftwareLivingLab / zerobito

Projeto ZerÓbito
2 stars 1 forks source link

Adiciona build e deploy condicionais #48

Open Antonio214 opened 6 months ago

Antonio214 commented 6 months ago

Sugestão de melhoria para a pipeline:

lhleonardo commented 6 months ago

Olá, @Antonio214. Uma ótima ideia!

Tenho apenas algumas sugestões/considerações:

  1. Vi que você sugeriu o deploy das mesmas branches em diferentes pastas com a estratégia de matriz. Como ficariam as branches "review" temporárias (ex: feature/** que usamos)? A pipeline quebraria para esses casos. Planeja fazer algum tipo de deploy para essas reviews?
  2. Agora, com duas pastas de deploy, acredito que a estratégia de backup foi impactada, pois a pasta frontend seria copiada com todo seu conteúdo, sem levar em consideração a branch atual (que deveria sofrer backup). A sua limpeza de backups antigos também afetaria, pois não estaria deletando artefatos relacionados ao ambiente/branch em questão.
  3. Ainda sobre os dois ambientes (main e develop), acredito que seja interessante a pipeline mostrar um output (bots do github, console do CI etc) com o endereço para acesso, no formato de IP+Porta, já que não usaremos apenas a porta 3000.
  4. Estou supondo que você está criando novas portas para acesso (de acordo com a branch/ambiente). Precisa pedir liberação com o Breno para habilitar a abertura das portas na infraestrutura das VMs.

👍🏻

Antonio214 commented 5 months ago

@lhleonardo, obrigado pelos feedbacks. Responde seus pontos:

1 - Excelente catch, passou despercebido pra mim as demais branchs. Minha ideia era rodar esse script de deploy somente para os ambientes de homologação e main num primeiro momento, principalmente devido ao fato de que cada ambiente a mais representa mais um setup de portas e uma pasta no servidor, no modelo que estamos fazendo. Mas se vocês sentirem necessidade de visualizar essas branches posso buscar uma solução também. Nota: Acredito que a pipeline não vai quebrar por conta desse trecho. Mas me corrija se eu tiver enganado, pq não tenho tanta experiência com github actions. if: github.ref == 'refs/heads/${{ matrix.branch }}'.

2 - Não sei se entendi esse ponto, vou te chamar pra alinhar melhor. Mas minha ideia para o backup seria fazer o backup somente de Produção (assumi que não seria necessário fazer o de homologação). Revisando aqui, acredito que está faltando uma condicional para ele só rodar na branch de produção, vou alterar isso.

3 - Essa é uma excelente ideia e vou providenciar também.

4 - Já providenciei isso e pelo feedback do Breno elas já estão abertas.

Antonio214 commented 5 months ago