Files
CloudflareDNS-java/.gitlab-ci.yml
T
thischwa f056ad2f47 Enable SonarQube analysis on main Java source directory.
Added the `-Dsonar.sources` property to specify the `src/main/java` directory for SonarQube analysis. This ensures the main Java source files are included in the scan, improving code quality assessment accuracy.
2025-04-21 15:19:59 +02:00

77 lines
1.8 KiB
YAML

default:
image: maven:3-amazoncorretto-17-alpine
stages:
- build
- on_commit
- sonarcloud_scan
variables:
GITLAB_CLONE_DIR: "/builds/ths6435116/CloudflareDNS-java"
# GITLAB_CLONE_DIR: "cloudflaredns-java"
SONAR_HOST_URL: $SONAR_HOST_URL
SONAR_PROJECT_KEY: "ths6435116_CloudflareDNS-java"
SONAR_ORGANIZATION: "ths6435116"
SONAR_TOKEN: $SONAR_TOKEN
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
API_EMAIL: $API_EMAIL
API_KEY: $API_KEY
API_TOKEN: $API_TOKEN
build:
stage: build
script:
- echo "Running package..."
# - mkdir -p ${GITLAB_CLONE_DIR}
- cd ${GITLAB_CLONE_DIR}
- mvn clean package
artifacts:
paths:
- target/
on_commits:
stage: on_commit
dependencies:
- build
script:
- echo "on_commit DONE"
only:
- /^feature.*$/
- merge_request
- develop
sonarcloud_scan:
stage: sonarcloud_scan
dependencies:
- build
image:
name: sonarsource/sonar-scanner-cli:latest
entrypoint: [ "" ]
script:
- |
sonar-scanner \
-Dsonar.projectKey=${SONAR_PROJECT_KEY} \
-Dsonar.organization=${SONAR_ORGANIZATION} \
-Dsonar.token=${SONAR_TOKEN} \
-Dsonar.branch.name=develop \
-Dsonar.projectBaseDir=${CI_PROJECT_DIR} \
-Dsonar.sources=src/main/java \
-Dsonar.tests=src/test/java \
-Dsonar.exclusions=docs/** \
-Dsonar.java.binaries=target/classes
only:
- merge_requests
- develop
pages:
stage: on_commit
script:
- echo "Deploying GitLab Pages from docs/"
- mkdir public
- cp -r docs/* public/
artifacts:
paths:
- public
only:
- develop