From a0950b64abe7ac0cc45203d09a36c6c4732b4f9f Mon Sep 17 00:00:00 2001 From: Alex Flom Date: Fri, 3 Nov 2023 08:52:42 -0600 Subject: [PATCH] task(ci): add sonar --- .github/workflows/ci.yml | 1 - .github/workflows/codecov.yml | 36 ++++++++++++++++++++++++++++++++--- sonar-project.properties | 13 +++++++++++++ 3 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 sonar-project.properties diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5cb9afd5..8a7df86c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,4 +67,3 @@ jobs: - name: Run tests run: make test - diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml index 2fbed897..28204901 100644 --- a/.github/workflows/codecov.yml +++ b/.github/workflows/codecov.yml @@ -2,9 +2,12 @@ name: Code Coverage Check on: + push: + branches: + - PSCE-262 pull_request: - branches: - - main + types: [opened, synchronize, reopened] + jobs: test: @@ -26,4 +29,31 @@ jobs: with: name: coverage path: coverage.xml - \ No newline at end of file + sonarcloud: + name: SonarCloud + runs-on: ubuntu-latest + steps: + - name: Get coverage + needs: [test] + uses: actions/download-artifact@v2 + with: + name: coverage + - name: SonarCloud Scan + uses: SonarSource/sonarcloud-github-action@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + with: + args: > + -Dsonar.python.coverage.reportPaths=coverage.xml + -Dsonar.tests=tests/ + -Dsonar.sources=trestlebot/ + -Dsonar.python.version=3.10 + -Dsonar.projectKey=rh-psce_trestle-bot + -Dsonar.organization=rh-psce + - name: SonarQube Quality Gate check + uses: sonarsource/sonarqube-quality-gate-action@master + # Force to fail step after specific time + timeout-minutes: 5 + env: + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} \ No newline at end of file diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 00000000..3fe7f0eb --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,13 @@ +sonar.projectKey=rh-psce_trestle-bot +sonar.organization=rh-psce + +# This is the name and version displayed in the SonarCloud UI. +#sonar.projectName=trestle-bot +#sonar.projectVersion=1.0 + + +# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows. +#sonar.sources=. + +# Encoding of the source code. Default is default system encoding +#sonar.sourceEncoding=UTF-8 \ No newline at end of file