Skip to content

Issue 915/windows build test#1005

Closed
MartinHock wants to merge 35 commits intoardalis:mainfrom
MartinHock:issue-915/windows-build-test
Closed

Issue 915/windows build test#1005
MartinHock wants to merge 35 commits intoardalis:mainfrom
MartinHock:issue-915/windows-build-test

Conversation

@MartinHock
Copy link
Copy Markdown

No description provided.

MartinHock added 2 commits March 27, 2026 18:19
@MartinHock MartinHock marked this pull request as draft March 27, 2026 18:30
MartinHock added 27 commits March 28, 2026 10:14
…NET 10 SDK

- Added windows-build-test.yml: Windows-specific build & test workflow
  - Builds in Debug and Release configurations
  - Runs all tests with code coverage
  - Uploads test results and coverage artifacts
  - Uses .NET 10 preview SDK

- Added cross-platform-build-test.yml: Multi-OS compatibility testing
  - Tests on Windows, Ubuntu, and macOS
  - Matrix build: 3 OS × 2 configurations = 6 jobs
  - Ensures cross-platform compatibility

- Added CI-specific NuGet.Config (.github/NuGet.Config)
  - Uses only nuget.org (no local Nexus dependency)
  - Automatically used by workflows during builds

- Added comprehensive workflow documentation
  - Setup instructions
  - Troubleshooting guide
  - Best practices

Addresses issue ardalis#915 - Windows build automation
- Separate Unit, Integration, and Functional test runs
- Filter out DockerAvailabilityTests (requires Docker Desktop)
- Add CI-specific NuGet.Config setup for cross-platform builds
- Use continue-on-error for tests that may fail without Docker
- Functional tests use SQLite fallback when Docker unavailable

The DockerAvailabilityTests test explicitly checks for Docker
availability and fails with a helpful message when Docker is not
running. In GitHub Actions, Docker is not always available,
so we skip this specific test while still running other functional
tests with SQLite fallback.
Removed:
- windows-build.yml (duplicate, replaced by windows-build-test.yml)
- publish.yml (empty file, 0 bytes)

Fixed:
- dotnetcore.yml: Changed dotnet-quality from 'ga' to 'preview' (.NET 10 is preview)
- dotnetcore.yml: Added CI NuGet.Config setup
- dotnetcore.yml: Skip DockerAvailabilityTests
- build-ramdisk.yml: Changed dotnet-quality from 'ga' to 'preview'
- build-ramdisk.yml: Added CI NuGet.Config setup
- build-ramdisk.yml: Skip DockerAvailabilityTests

All workflows now consistently use:
- .NET 10 SDK with 'preview' quality
- CI-specific NuGet.Config (nuget.org only)
- Docker-independent test filtering
Updated all workflows to use dotnet-quality: 'ga' instead of 'preview':
- windows-build-test.yml
- cross-platform-build-test.yml
- dotnetcore.yml
- build-ramdisk.yml
@ardalis ardalis closed this Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants