diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index d5b2c55..821ba3d 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -1,71 +1,55 @@ -name: .NET +name: SonarQube on: - workflow_dispatch: push: - branches: [ "main" ] + branches: + - main pull_request: - branches: [ "main" ] + types: [ opened, synchronize, reopened ] jobs: build: name: Build and analyze runs-on: windows-latest - env: - ProjectName: 'AStar.Dev.Functional.Extensions' - RepositoryName: 'astar-dev-functional-extensions' + steps: - - name: Set up JDK - uses: actions/setup-java@v4.4.0 + - name: Set up JDK 17 + uses: actions/setup-java@v4 with: java-version: 17 distribution: 'zulu' - - name: Checkout - uses: actions/checkout@v4.2.1 + - uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis - - name: Cache SonarCloud packages - uses: actions/cache@v4.2.3 + - name: Cache SonarQube Cloud packages + uses: actions/cache@v4 with: path: ~\sonar\cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - - name: Cache SonarCloud scanner + - name: Cache SonarQube Cloud scanner id: cache-sonar-scanner - uses: actions/cache@v4.2.3 + uses: actions/cache@v4 with: path: .\.sonar\scanner key: ${{ runner.os }}-sonar-scanner restore-keys: ${{ runner.os }}-sonar-scanner - - name: Install SonarCloud scanner + - name: Install SonarQube Cloud scanner if: steps.cache-sonar-scanner.outputs.cache-hit != 'true' shell: powershell 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.GITHUB_TOKEN }} -# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} -# shell: powershell -# run: | -# dotnet tool install --global dotnet-coverage -# .\.sonar\scanner\dotnet-sonarscanner begin /k:"astar-development_${{ env.RepositoryName }}" /o:"astar-development" /d:sonar.token="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https:#sonarcloud.io" /d:sonar.cs.vscoveragexml.reportsPaths=coverage.xml /d:sonar.scanner.scanAll=false -# dotnet-coverage collect 'dotnet test --filter "FullyQualifiedName!~Acceptance.Tests"' -f xml -o 'coverage.xml' -# dotnet build --configuration Release -# dotnet-coverage collect 'dotnet test --filter "FullyQualifiedName!~Acceptance.Tests"' -f xml -o 'coverage.xml' -# .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="${{ secrets.SONAR_TOKEN }}" - - - name: Pack NuGet package - if: github.ref == 'refs/heads/main-not' - run: dotnet pack .\src\${{ env.ProjectName }}\${{ env.ProjectName }}.csproj - - - name: Push to NuGet - if: github.ref == 'refs/heads/main-not' - run: dotnet nuget push "**\${{ env.ProjectName }}.*.nupkg" --api-key ${{secrets.nuget_api_key}} --skip-duplicate --source https://api.nuget.org/v3/index.json - + - name: Build and analyze + env: + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + shell: powershell + run: | + .\.sonar\scanner\dotnet-sonarscanner begin /k:"astar-development_astar-dev-functional-extensions" /o:"astar-development" /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 }}" diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c97e50d..8b1c908 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -2,9 +2,9 @@ name: 🚀 Publish NuGet Package on: workflow_dispatch: - push: - branches: - - main +# push: +# branches: +# - main jobs: build: @@ -34,5 +34,5 @@ jobs: run: dotnet pack ./src/${{ env.ProjectName }}/${{ env.ProjectName }}.csproj --configuration Release --output ./nupkg - name: 🚀 Publish to NuGet.org - run: dotnet nuget push ./nupkg/*.nupkg --skip-duplicate --source https://int.nugettest.org/v3/index.json # https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_API_KEY }} + run: dotnet nuget push ./nupkg/*.nupkg --skip-duplicate --source https://apiint.nugettest.org/v3/index.json # https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_API_KEY }} diff --git a/src/AStar.Dev.Functional.Extensions/AStar.Dev.Functional.Extensions.csproj b/src/AStar.Dev.Functional.Extensions/AStar.Dev.Functional.Extensions.csproj index 26ba9f3..354cf8d 100644 --- a/src/AStar.Dev.Functional.Extensions/AStar.Dev.Functional.Extensions.csproj +++ b/src/AStar.Dev.Functional.Extensions/AStar.Dev.Functional.Extensions.csproj @@ -9,7 +9,8 @@ true snupkg AStar.Dev.Functional.Extensions - 0.1.4-alpha + 0.2.1-alpha + Readme.md Jason AStar Development F#-inspired Result type with functional combinators, async support, and LINQ integration. @@ -22,10 +23,16 @@ latest enable true + AStar.Dev.Functional.Extensions + AStar Development 2025 + + + +