Entrega Contínua

Diversos princípios de Entrega Contínua são utilizados no projeto do Portal de Serviços. Nesta seção, descreveremos brevemente como eles estão implementados.

Integração Contínua

Utilizamos o Snap CI para realizar a execução de todos os testes e implantações necessários a cada push nos repositórios Git do projeto.

Os seguintes passos estão configurados no pipelines, com alguma variação dependendo do projeto:

TESTES

Roda todos os testes unitários, de integração, e as checagens estáticas (FindBugs, Checkstyle, etc.). Finalmente, publica os resultados do relatório de cobertura de testes no Coveralls. Todos os relatórios de execução também são publicados como artefatos, que podem ser baixados em formato HTML e XML.

PACOTES

Cria um arquivo JAR contendo todas as dependências do projeto (uberjar) necessárias para a execução da apliação, e embute este JAR em um arquivo RPM específico para nossa plataforma-alvo (CentOS 7 x64). Este RPM é então publicado em um repositório Yum, e fica disponível para instalação e atualização.

DEV

(Re)instala o pacote RPM gerado no passo anterior em uma imagem Docker baseada no CentOS 7 x64, e reinicia a aplicação rodando no ambiente de teste, bem como outros serviços necessários. Após alguns segundos, a nova versão da aplicação está pronta para receber requisições.

DOCS

Atualiza a branch gh-pages, utilizada pelo Github Pages com o resultado da compilação da documentação (localizada no diretório docs) pelo Gitbook. Esta fica disponível em servicosgovbr.github.io.

AVISO

Anuncia o fim do processo na sala de bate-papo do Gitter.

results matching ""

    No results matching ""