Skip to content
Roger Souza edited this page Sep 9, 2019 · 1 revision

Docker

O Dockerfile define dois estágios:

  • build
  • app

O primeiro, é utilizado em casos de desenvolvimento e testes. Caso o MIX_ENV do container seja definido como prod, ao final desse stage também é gerado um release. Já o app, é o ambiente que roda o release gerado no estágio anterior.

O projeto utiliza docker para o processo de desenvolvimento, testes e produção. Isso garante que o ambiente seja similar em todos os casos.

CI/CD

Atualmente o projeto usa o travis e roda todo o processo de testes e deploy de forma conteinerizada (Docker). Ao final de um processo de testes bem sucedidos, um deploy é feito ao heroku.

Heroku

A estratégia de deploy utilizada é a de container registry do Heroku e tem como único pré-requisito um merge com a master que não quebre nenhum teste.

Clone this wiki locally