From d5ef7a015d5889038fcab23a7d6f36420f7c36cd Mon Sep 17 00:00:00 2001 From: Alexis POYEN <apoyen@grandlyon.com> Date: Wed, 2 Sep 2020 09:07:53 +0200 Subject: [PATCH] Refactor : run CI in concurrency with coverage --- .gitlab-ci.yml | 72 ++++++++++++++++++++++++++------------------------ 1 file changed, 37 insertions(+), 35 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1ab484d..f206828 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,38 +17,40 @@ variables: GIT_STRATEGY: clone GIT_DEPTH: 0 -stages: - - sonar-analysis - - build - -sonarqube: - stage: sonar-analysis - image: skilldlabs/sonar-scanner:3.4.0 - script: - - > - sonar-scanner - -Dsonar.projectName=${CI_PROJECT_NAME} - -Dsonar.projectVersion=1.0 - -Dsonar.sourceEncoding=UTF-8 - -Dsonar.projectBaseDir=. - -Dsonar.host.url=${SONAR_URL} - -Dsonar.projectKey=${SONAR_PROJECT_KEY} - -Dsonar.login=${SONAR_TOKEN} - -build-master: - stage: build - script: - - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - - DOCKER_BUILDKIT=1 docker build --pull -t "$CI_REGISTRY_IMAGE" . - - docker push "$CI_REGISTRY_IMAGE" - only: - - master - -build: - stage: build - script: - - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - - DOCKER_BUILDKIT=1 docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" - except: - - master + stages: + - build-and-test-with-sonar-concurrently + + build-master: + stage: build-and-test-with-sonar-concurrently + script: + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - DOCKER_BUILDKIT=1 docker build --pull -t "$CI_REGISTRY_IMAGE" . + - docker push "$CI_REGISTRY_IMAGE" + only: + - master + + build: + stage: build-and-test-with-sonar-concurrently + script: + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - DOCKER_BUILDKIT=1 docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" . + - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" + except: + - master + + sonarqube: + stage: build-and-test-with-sonar-concurrently + image: registry.forge.grandlyon.com/apoyen/sonnar-scanner-gl:master + script: + - go test ./... -coverprofile=coverage.out + - > + sonar-scanner + -Dsonar.projectName=${CI_PROJECT_NAME} + -Dsonar.projectVersion=1.0 + -Dsonar.sourceEncoding=UTF-8 + -Dsonar.projectBaseDir=. + -Dsonar.host.url=${SONAR_URL} + -Dsonar.projectKey=${SONAR_PROJECT_KEY} + -Dsonar.login=${SONAR_TOKEN} + -Dsonar.go.coverage.reportPaths=./coverage.out + -Dsonar.exclusions=**/*_test.go -- GitLab