Merge pull request #37 from leancodepl/publisher/remove-mt-rabbitmq-dep #135
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publisher Build & Test | |
on: | |
push: | |
paths: | |
- publisher/** | |
jobs: | |
ci: | |
name: Build & Test | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./publisher | |
env: | |
DOTNET_VERSION: 8.0.100-rc.1.23463.5 | |
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup .NET SDK | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: ${{ env.DOTNET_VERSION }} | |
- name: Tool Restore | |
run: dotnet tool restore | |
- name: Restore | |
run: dotnet restore | |
- name: Check formatting | |
run: dotnet csharpier . --check | |
- name: Build | |
run: dotnet build --no-restore | |
- name: Test Publisher | |
run: > | |
dotnet test ./test/LeanCode.Pipe.Tests/LeanCode.Pipe.Tests.csproj | |
--no-build | |
--collect "XPlat Code Coverage" | |
--settings test/coverlet.runsettings | |
--logger trx | |
--results-directory TestResults | |
- name: Test test client | |
run: > | |
dotnet test ./test/LeanCode.Pipe.TestClient.Tests/LeanCode.Pipe.TestClient.Tests.csproj | |
--no-build | |
--collect "XPlat Code Coverage" | |
--settings test/coverlet.runsettings | |
--logger trx | |
--results-directory TestResults | |
- name: Integration test | |
run: > | |
dotnet test ./test/LeanCode.Pipe.IntegrationTests/LeanCode.Pipe.IntegrationTests.csproj | |
--no-build | |
--collect "XPlat Code Coverage" | |
--settings test/coverlet.runsettings | |
--logger trx | |
--results-directory TestResults | |
- name: Upload coverage to Codecov | |
if: always() | |
uses: codecov/codecov-action@v3 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
- name: Upload Test Results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: publisher_test_results.zip | |
path: publisher/TestResults/*.trx | |
publish-test-results: | |
name: Publish Tests Results | |
needs: ci | |
runs-on: ubuntu-latest | |
permissions: | |
contents: read | |
checks: write | |
pull-requests: write | |
if: always() | |
steps: | |
- name: Download Artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
path: artifacts | |
- name: Extract Artifacts | |
run: | | |
for file in artifacts/*.zip; do | |
if [[ -f "$file" ]]; then | |
dir="${file%.zip}" | |
mkdir -p "$dir" | |
unzip -d "$dir" "$file" | |
fi | |
done | |
- name: Publish Test Results | |
uses: EnricoMi/publish-unit-test-result-action@v2 | |
with: | |
trx_files: "artifacts/*/**/*.trx" |