Boa tarde, estou fazendo os testes de integração da minha empresa, usando o gitlab estou com algumas duvidas de como realizar a tarefa, preciso realizar o build da branch que foi comitada e subir a aplicação, após isto preciso fazer outra aplicação que esta no gitlab testar o job anterior.
A minha aplicação de test é uma aplicação java com restAssured que faz requisições na aplicação que foi buildada.
build >> run/app >> test
sobre como usar o gitlab e trigger e docker estou seguro mas sobre como arquitetar essas etapas estou com duvida pois preciso subir a app antes de testar e não encontro maneira de finalizar o job após a app estiver online, para poder usar o job de test que ira realizar requisições http nela.
segue meu gitlab-ci.yml
aceito sugestões de testes de integração com gitlab-ci.
#image: maven:3.6.3-jdk-8
services:
- docker:dind
variables: MAVEN_CLI_OPTS: "-s home/m2/settings.xml" BASE_PATH_CLIQQ: "builds/mercantil/cliqq/cliqq" stages:
- pre-build
- build
- test
build-cliqq: tags:
- run-net
stage: build script:
- cd
- ls
- cd ..
- pwd
- ls
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/vc-jdbc/pom.xml
- ls
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/vc-json/pom.xml
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/qq-arch-parent/pom.xml
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/qq-calculo-financeiro-api/pom.xml
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/qq-vendaassistida-legado-parent/pom.xml
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/qq-vendaassistida-concentrador-parent/pom.xml
- mvn $MAVEN_CLI_OPTS clean install -f builds/mercantil/cliqq/cliqq/qq-vendaassistida-parent/pom.xml
- cd builds/mercantil/cliqq/cliqq/qq-vendaassistida-parent/qq-vendaassistida-web/target
- ls
- nohup java -jar cliqq-web.war &
trigger_build: stage: deploy script:
- "curl -X POST -F token=dc83cb983cfbb3908123469c45d250 -F ref=dev http://gitlab.queroquero.com.br/api/v4/projects/33/trigger/pipeline"