Skip to content
Snippets Groups Projects
Commit 69a89acb authored by mvrp21's avatar mvrp21
Browse files

Deve funfar


Signed-off-by: default avatarmvrp21 <mvrp21@inf.ufpr.br>
parent 690a1489
No related branches found
No related tags found
No related merge requests found
Pipeline #36303 failed
# Eventualmente vou criar um template com tudo bem documentado.
# Isso eh um "rascunho" para eu ver o que funciona melhor e o que nao funciona"
# Isso define os estagios do pipeline.
# Eles serao executados na ordem que voce definir.
stages:
# TODO: revisar, nao gostei desses nomes nessa ordem
# - builds de teste e deploy deveriam ser diferentes
# - idealmente a homologacao em si deve fazer parte do pipeline
- build
- test
- deploy
# Eu particularmente prefiro agrupar tudo de um estagio em um lugar. Eh mais facil de ver.
Build Job1:
stage: build
script:
- echo "Aqui voce roda seu 'npm install' ou seja la qual for sua ferramenta de build."
# Esses nomes "Build Job1", "Test Job X", e etc. sao arbitrarios. Escolha nomes que fazem sentido pra voce.
Build Job2:
stage: build
script:
- echo "Isso deve rodar deboa TAMBEM"
- echo "npm install"
# TODO: Aqui faria mais sentido rodar os testes de integracao, ja que
# cosas como linter rodam antes faz sentido os testes UNITARIOS rodarem antes tambem
Test Job:
stage: test
script:
- echo "Coisas como test coverage rodam aqui."
- echo "No geral, test coverage deveria ser 90%+. Podemos discutir isso eventualmente."
- echo "Se qualquer comando retornar um exit-code diferente de zero o pipeline cancela"
# --------------------------------------------------------------------------- #
- echo "Tome MUUUITO cuidado com esses exit-codes."
- echo "Se o teste falhar mas seu comando retornar zero o pipeline continua."
# --------------------------------------------------------------------------- #
- echo "npm run test"
# Essa parte depende bastante dos roots.
# Estou ainda pesquisando como facilitar isso, queria deixar bem clean.
# Os fatores que dificultam sao os seguintes:
# - Versionamento (se o repositorio fizer direito da pra dockarizar bonito e isso fica resolvido)
# - Janelas de atualizacao (somente permitir deploy em horarios em que alguem possa verificar que funcionou)
# - Deploy parcial (nao sei explicar isso com poucas palavras ainda)
# - Rollbacks (deu caca no deploy da producao, tem que voltar pra versao anterior com um click)
# - Qualquer coisa que se relacione ao BD, pois ele esta completamente separado da aplicacao.
Deploy Job:
stage: deploy
only:
- main # Da pra ajustar a branch como necessario, pegar um deploy separado para outra maquina por exemplo
script:
- echo "Aqui rodaria a parte de deploy. E eh a parte mais chatinha de fazer."
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment