Add: Sonarqube automation template
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
name: SonarQube Analysis
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
sonar:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Define project key
|
||||
run: |
|
||||
echo "PROJECT_KEY=${GITHUB_REPOSITORY##*/}" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Create SonarQube project if needed
|
||||
run: |
|
||||
curl -s -u "${{ secrets.SONAR_ADMIN_TOKEN }}:" \
|
||||
-X POST \
|
||||
"http://sonarqube:9000/api/projects/create" \
|
||||
--data-urlencode "name=${PROJECT_KEY}" \
|
||||
--data-urlencode "project=${PROJECT_KEY}" \
|
||||
|| true
|
||||
|
||||
- name: Run SonarScanner
|
||||
run: |
|
||||
docker run --rm \
|
||||
--network dev-platform_default \
|
||||
-e SONAR_HOST_URL="http://sonarqube:9000" \
|
||||
-e SONAR_TOKEN="${{ secrets.SONAR_ADMIN_TOKEN }}" \
|
||||
-v "$PWD:/usr/src" \
|
||||
sonarsource/sonar-scanner-cli \
|
||||
-Dsonar.projectKey="${PROJECT_KEY}" \
|
||||
-Dsonar.projectName="${PROJECT_KEY}" \
|
||||
-Dsonar.sources=. \
|
||||
-Dsonar.sourceEncoding=UTF-8
|
||||
Reference in New Issue
Block a user