Files
wdipl-actions/actions/sonar/action.yml

49 lines
1.4 KiB
YAML

name: "SonarQube Scan"
description: "Run SonarQube scan with Quality Gate enforcement"
inputs:
sonar_host_url:
required: true
sonar_token:
required: true
wait_for_quality_gate:
required: false
default: "true"
runs:
using: "composite"
steps:
- name: Set Project Key (from repo name)
shell: bash
run: |
echo "PROJECT_KEY=${{ gitea.event.repository.name }}" >> $GITHUB_ENV
- name: Debug Info
shell: bash
run: |
echo "Project Key: $PROJECT_KEY"
echo "Wait for Quality Gate: ${{ inputs.wait_for_quality_gate }}"
- name: Run Sonar Scanner
shell: bash
run: |
if [ "${{ inputs.wait_for_quality_gate }}" = "true" ]; then
sonar-scanner \
-Dsonar.projectKey=$PROJECT_KEY \
-Dsonar.projectName=$PROJECT_KEY \
-Dsonar.sources=. \
-Dsonar.host.url=${{ inputs.sonar_host_url }} \
-Dsonar.token=${{ inputs.sonar_token }} \
-Dsonar.exclusions=node_modules/**,dist/**,coverage/** \
-Dsonar.qualitygate.wait=true
else
sonar-scanner \
-Dsonar.projectKey=$PROJECT_KEY \
-Dsonar.projectName=$PROJECT_KEY \
-Dsonar.sources=. \
-Dsonar.host.url=${{ inputs.sonar_host_url }} \
-Dsonar.token=${{ inputs.sonar_token }} \
-Dsonar.exclusions=node_modules/**,dist/**,coverage/**
fi