Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated tests to multi-target different frameworks #172

Merged
merged 6 commits into from
Dec 10, 2020

Conversation

danjagnow
Copy link
Collaborator

Updated all test projects to multitarget netcoreapp2.1 (LTS), netcoreapp3.1 (LTS), and net5.0 (current). Updated CircleCI to use mcr.microsoft.com/dotnet/sdk:5.0 as the Docker image for building. Also fixed ResilientMessageBus so it never resets the CanRetry property after it has encountered a potentially recoverable error. Resolves #169.

@danjagnow danjagnow added this to the 5.0 milestone Dec 5, 2020
@danjagnow danjagnow self-assigned this Dec 5, 2020
@danjagnow
Copy link
Collaborator Author

I was afraid of that. mcr.microsoft.com/dotnet/sdk:5.0 doesn't include the other SDKs. I'll have to see if there is a good base image that has all three or adopt a different approach to matrix testing.

@danjagnow
Copy link
Collaborator Author

This thread has some interesting discussion about the availability of .NET 5 and other SDKs on the Docker images associated with GitHub actions. There is also a setup-dotnet action that could be useful, though that could lead to longer builds. I don't think a switch from CircleCI to GitHub Actions would be too hard. This is definitely a solvable problem; I'm just not sure about the easiest way to solve it.

Update all test projects to multitarget netcoreapp2.1 (LTS), netcoreapp3.1 (LTS), and net5.0 (current).
Fixed ResilientMessageBus so it never resets the CanRetry property after it has encountered a potentially recoverable error.
Updated CircleCI to use mcr.microsoft.com/dotnet/sdk:5.0 as the Docker image for building.
Revised the test projects to only target only net5.0, removing the netcoreapp2.1 and netcoreapp3.1 targets.  It's easier to get this working in a lightweight Docker image.
Updated trx2junit from 1.3.1 to 1.4.0.  This release adds .NET 5 support.
Added a global.json file to specify .NET 5 for the build.  This seems to be necessary for CodeQL at present based on github/codeql-action#244.
@danjagnow
Copy link
Collaborator Author

I haven't found a great approach, so I ended up simply targeting .NET 5. We can revisit this in the future if there is a good way to handle this without undue effort.

@danjagnow danjagnow merged commit 0928d59 into master Dec 10, 2020
@danjagnow danjagnow deleted the multi-target-tests branch December 10, 2020 04:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Multi-target tests for all LTS .NET Core versions
1 participant