diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 28fe31a..38a0325 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -49,20 +49,65 @@ jobs: AnalysisSonar: name: Analyze with SonarCloud - runs-on: ubuntu-latest + runs-on: windows-latest permissions: pull-requests: write # allows SonarCloud to decorate PRs with analysis results - steps: - - name: Analyze with SonarCloud + # steps: # DOES NOT SCAN FOR SOME REASON ? + # - name: Analyze with SonarCloud + + # # You can pin the exact commit or the version. + # uses: SonarSource/sonarcloud-github-action@v3 + # env: + # SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + # with: + # # Additional arguments for the SonarScanner CLI + # args: + # -Dsonar.projectKey=Foxlider_FASTER + # -Dsonar.organization=foxlicorp + # projectBaseDir: . + - # You can pin the exact commit or the version. - uses: SonarSource/sonarcloud-github-action@v3 + steps: + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: 17 + distribution: 'zulu' # Alternative distribution options are available. + + - uses: actions/checkout@v4 + with: + fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis + + - name: Cache SonarCloud packages + uses: actions/cache@v4 + with: + path: ~\sonar\cache + key: ${{ runner.os }}-sonar + restore-keys: ${{ runner.os }}-sonar + + - name: Cache SonarCloud scanner + id: cache-sonar-scanner + uses: actions/cache@v4 + with: + path: .\.sonar\scanner + key: ${{ runner.os }}-sonar-scanner + restore-keys: ${{ runner.os }}-sonar-scanner + + - name: Install SonarCloud scanner + if: steps.cache-sonar-scanner.outputs.cache-hit != 'true' + shell: pwsh + run: | + New-Item -Path .\.sonar\scanner -ItemType Directory + dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner + + - name: Build and analyze env: + GITHUB_TOKEN: ${{ secrets.PR_DECORATION }} # Needed to get PR information, if any SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - with: - # Additional arguments for the SonarScanner CLI - args: - -Dsonar.projectKey=Foxlider_FASTER - -Dsonar.organization=foxlicorp - projectBaseDir: . \ No newline at end of file + shell: pwsh + run: | + .\.sonar\scanner\dotnet-sonarscanner begin /k:"Foxlider_FASTER" /o:"foxlicorp" /d:sonar.token="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io" + dotnet build + .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="${{ secrets.SONAR_TOKEN }}" + \ No newline at end of file