From 883cbecd8db2c7f09be81f1d68cae001a25e7739 Mon Sep 17 00:00:00 2001 From: Brandon Clayton <bclayton@usgs.gov> Date: Wed, 23 Jun 2021 12:19:17 -0600 Subject: [PATCH] update pipeline --- .gitlab-ci.yml | 115 ++++++++++++++++++------------------------------- 1 file changed, 43 insertions(+), 72 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ceb1869a..a563e580 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,14 +1,11 @@ -#### -# GitLab ci-cd pipline for nshmp-lib -#### - -variables: - JACOCO_HTML_DIR: ${REPORTS_DIR}/jacoco/test/html - JUNIT_FILES: build/test-results/test/TEST-*.xml - REPORTS_DIR: build/reports +include: + - project: 'ghsc/nshmp/nshmp-pipeline-templates' + ref: 'main' + file: 'templates/library.yml' stages: - - test + - init + - build - publish # Do not run for merge requests @@ -17,21 +14,37 @@ workflow: - if: $CI_COMMIT_TAG - if: $CI_COMMIT_BRANCH -.tags: +.gradle: + image: ${DEVOPS_REGISTRY}usgs/java:11-jdk tags: - development -.gradle: - image: ${DEVOPS_REGISTRY}usgs/java:11-jdk +#### +# Stage: init +#### + +Init: + extends: + - .gradle-init #### # Stage: test #### +Build Image: + extends: + - .docker-build + variables: + DOCKER_BUILD_ARGS: | + BUILD_IMAGE=${DEVOPS_REGISTRY}usgs/java:11-jdk + FROM_IMAGE=${DEVOPS_REGISTRY}usgs/nginx:latest + UPSTREAM_PATH: ghsc/nshmp/nshmp-lib + Build Project: extends: - .gradle - - .tags + needs: + - Init rules: - changes: @@ -43,12 +56,13 @@ Build Project: when: manual script: - ./gradlew assemble; - stage: test + stage: build Markdown Lint: extends: - .gradle - - .tags + needs: + - Init rules: - changes: @@ -59,58 +73,7 @@ Markdown Lint: when: manual script: - ./gradlew markdownlint; - stage: test - -Spotless Check: - extends: - - .gradle - - .tags - rules: - - - changes: - - 'src/**' - - '*gradle*' - when: on_success - - - allow_failure: true - when: manual - script: - - ./gradlew spotlessCheck; - stage: test - -Spotbugs Main: - extends: - - .gradle - - .tags - rules: - - - changes: - - 'src/**' - - '*gradle*' - when: on_success - - - allow_failure: true - when: manual - script: - - ./gradlew spotbugsMain; - stage: test - -Spotbugs Test: - extends: - - .gradle - - .tags - rules: - - - changes: - - 'src/**' - - '*gradle*' - when: on_success - - - allow_failure: true - when: manual - script: - - ./gradlew spotbugsTest; - stage: test + stage: build Unit Tests: artifacts: @@ -121,7 +84,8 @@ Unit Tests: coverage: '/Total.*?([0-9]{1,3})%/' extends: - .gradle - - .tags + needs: + - Init rules: - changes: @@ -134,12 +98,13 @@ Unit Tests: script: - ./gradlew check; - cat ${JACOCO_HTML_DIR}/index.html; - stage: test + stage: build YAML Lint: extends: - .gradle - - .tags + needs: + - Init rules: - changes: @@ -150,7 +115,7 @@ YAML Lint: when: manual script: - ./gradlew yamllint; - stage: test + stage: build #### # Stage: publish @@ -158,8 +123,14 @@ YAML Lint: Publish: extends: - - .tags - .gradle + needs: + - Init + - Build Image + - Build Project + - Markdown Lint + - Unit Tests + - YAML Lint only: - tags@ghsc/nshmp/nshmp-lib script: -- GitLab