Skip to content

New tests workflow

New tests workflow #5

Workflow file for this run

name: Run Integration Tests
on:
pull_request:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
env:
DOTNET_CONFIGURATION: Release
DAPR_VERSION: "1.14.1"
runs-on: "${{ matrix.os }}"
timeout-minutes: 60
name: ${{ matrix.name }}-${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
name: [
# Hosting integration tests
CommunityToolkit.Aspire.Hosting.ActiveMQ.Tests,
CommunityToolkit.Aspire.Hosting.Azure.DataApiBuilder.Tests,
CommunityToolkit.Aspire.Hosting.Azure.StaticWebApps.Tests,
CommunityToolkit.Aspire.Hosting.Bun.Tests,
CommunityToolkit.Aspire.Hosting.Dapr.AzureExtensions.Tests,
CommunityToolkit.Aspire.Hosting.Dapr.AzureRedis.Tests,
CommunityToolkit.Aspire.Hosting.Dapr.Tests,
CommunityToolkit.Aspire.Hosting.DbGate.Tests,
CommunityToolkit.Aspire.Hosting.Deno.Tests,
CommunityToolkit.Aspire.Hosting.EventStore.Tests,
CommunityToolkit.Aspire.Hosting.GoFeatureFlag.Tests,
CommunityToolkit.Aspire.Hosting.Golang.Tests,
CommunityToolkit.Aspire.Hosting.Java.Tests,
CommunityToolkit.Aspire.Hosting.Meilisearch.Tests,
CommunityToolkit.Aspire.Hosting.MongoDB.Extensions.Tests,
CommunityToolkit.Aspire.Hosting.Ngrok.Tests,
CommunityToolkit.Aspire.Hosting.NodeJS.Extensions.Tests,
CommunityToolkit.Aspire.Hosting.Ollama.Tests,
CommunityToolkit.Aspire.Hosting.PapercutSmtp.Tests,
CommunityToolkit.Aspire.Hosting.PostgreSQL.Extensions.Tests,
CommunityToolkit.Aspire.Hosting.Python.Extensions.Tests,
CommunityToolkit.Aspire.Hosting.RavenDB.Tests,
CommunityToolkit.Aspire.Hosting.Rust.Tests,
CommunityToolkit.Aspire.Hosting.SqlDatabaseProjects.Tests,
CommunityToolkit.Aspire.Hosting.Sqlite.Tests,
# Client integration tests
CommunityToolkit.Aspire.EventStore.Tests,
CommunityToolkit.Aspire.GoFeatureFlag.Tests,
CommunityToolkit.Aspire.MassTransit.RabbitMQ.Tests,
CommunityToolkit.Aspire.Meilisearch.Tests,
CommunityToolkit.Aspire.Microsoft.Data.Sqlite.Tests,
CommunityToolkit.Aspire.Microsoft.EntityFrameworkCore.Sqlite.Tests,
CommunityToolkit.Aspire.OllamaSharp.Tests,
CommunityToolkit.Aspire.RavenDB.Client.Tests,
]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Runtimes, Caching, and Tools
uses: ./.github/actions/setup-runtimes-caching
with:
hash-file: ".github/workflows/dotnet-ci.yml"
- name: Verify Docker is running
run: docker info
- name: Build test project
env:
CI: false
run: |
dotnet build ${{ github.workspace }}/tests/${{ matrix.name }} /bl --configuration ${{ env.DOTNET_CONFIGURATION }}
- name: Run tests
id: run-tests
run: |
dotnet test ${{ github.workspace }}/tests/${{ matrix.name }} \
--no-build \
--configuration ${{ env.DOTNET_CONFIGURATION }} \
--logger "console;verbosity=normal" \
--logger "trx" \
--logger "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true" \
/p:TrxLogFileNameSuffix=${{ matrix.os }} \
--blame \
--blame-hang-timeout 7m \
--blame-crash \
--results-directory testresults \
--no-restore \
--no-build -- RunConfiguration.CollectSourceInformation=true
- name: Dump docker info
if: always()
run: |
docker container ls --all
docker container ls --all --format json
docker volume ls
docker network ls
- name: Upload bin log artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: binlog-${{ matrix.name }}-${{ matrix.os }}
path: "**/*.binlog"
- name: Upload test results artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: testresults-${{ matrix.name }}-${{ matrix.os }}
path: testresults/**