Added a step to set up JDK 17 using the temurin distribution and updated the Gradle setup to use version 8.14 in the SonarQube GitHub Actions workflow.
84 lines
2.8 KiB
YAML
84 lines
2.8 KiB
YAML
name: Run Sonarqube
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request_target:
|
|
branches:
|
|
- main
|
|
workflow_dispatch:
|
|
|
|
# cancel in-progress jobs if a new job is triggered
|
|
# This is useful to avoid running multiple builds for the same branch if a new commit is pushed
|
|
# or a pull request is updated.
|
|
# It helps to save resources and time by ensuring that only the latest commit is built and tested
|
|
# This is particularly useful for long-running jobs that may take a while to complete.
|
|
# The `group` is set to a combination of the workflow name, event name, and branch name.
|
|
# This ensures that jobs are grouped by the workflow and branch, allowing for cancellation of
|
|
# in-progress jobs when a new commit is pushed to the same branch or a new pull request is opened.
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref_name || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
permissions:
|
|
pull-requests: read
|
|
actions: read
|
|
|
|
jobs:
|
|
sonarqube:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Harden Runner
|
|
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
|
|
with:
|
|
egress-policy: audit
|
|
|
|
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Set up JDK 17
|
|
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
|
with:
|
|
java-version: "17"
|
|
distribution: "temurin"
|
|
|
|
- name: Setup Gradle
|
|
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
|
with:
|
|
gradle-version: 8.14
|
|
|
|
- name: Build and analyze with Gradle
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
|
|
DISABLE_ADDITIONAL_FEATURES: false
|
|
STIRLING_PDF_DESKTOP_UI: true
|
|
run: |
|
|
./gradlew clean build sonar \
|
|
-Dsonar.projectKey=Stirling-Tools_Stirling-PDF \
|
|
-Dsonar.organization=stirling-tools \
|
|
-Dsonar.host.url=https://sonarcloud.io \
|
|
-Dsonar.login=${SONAR_TOKEN} \
|
|
-Dsonar.log.level=DEBUG \
|
|
--info
|
|
|
|
- name: Upload Problems Report on Failure
|
|
if: failure()
|
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
with:
|
|
name: gradle-problems-report
|
|
path: build/reports/problems/problems-report.html
|
|
retention-days: 7
|
|
|
|
- name: Upload Sonar Logs on Failure
|
|
if: failure()
|
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
with:
|
|
name: sonar-logs
|
|
path: |
|
|
.scannerwork/report-task.txt
|
|
build/sonar/
|
|
retention-days: 7
|