variables:
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
+ GIT_DEPTH: "0"
stages:
- lint
before_script:
- npm install
+cache:
+ key: ${CI_COMMIT_REF_SLUG}
+ paths:
+ - node_modules/
+ - .nyc_output/
+ - .sonar/cache
+
lint:
<<: *only-default
stage: lint
test:
<<: *only-default
stage: test
- cache:
- paths:
- - .nyc_output/
script:
- npm test
quality:
+ <<: *only-default
stage: quality
needs:
- -test
+ - test
image:
name: sonarsource/sonar-scanner-cli:latest
entrypoint: [""]
- cache:
- key: "${CI_JOB_NAME}"
- paths:
- - .sonar/cache
script:
- npm run coverage
- sonar-scanner
- only:
- - merge_requests
- - master