-
Notifications
You must be signed in to change notification settings - Fork 54
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
New tests workflow #468
New tests workflow #468
Conversation
f4d16ca
to
be8d402
Compare
@ErikEJ @jmezach I'm trying to do some tweaks to the CI pipeline and it looks like there's an assumption on the You can see that in this test failure: https://github.com/CommunityToolkit/Aspire/actions/runs/13384342116/job/37378295078?pr=468#step:7:46 I'm unfamiliar with how it does the resolution for the dacpack, but I'd have thought it would use the configuration that is being used to run the tests/app. Can you have a look at what might be wrong here? |
@aaronpowell Maybe the project here https://github.com/CommunityToolkit/Aspire/blob/main/examples/sql-database-projects/SdkProject/SdkProject.csproj must be built in order to produce a .dacpac? (still odd why it is looking in the debug folder) |
We are essentially loading the referenced project file using the MSBuild API's. We aren't explicitly passing a configuration or anything, so I guess it defaults to Debug. Not sure if there's much we can do about that. Perhaps we should pass the same configuration at the one used to build the AppHost? Not sure if we can get to that though. |
Looking at the build log we can see the dacpack is being generated, so there's obviously something that the MSBuild API isn't doing that we need. I'll debug and see if I can find how it generates that path |
Figured it out - 8889523 |
@aaronpowell Nice! |
8a4ba57
to
7cb7dd8
Compare
@CommunityToolkit/aspire-contributors anyone want to have a review of this? Here's an example of a failing test run if you want to see what that looks like: https://github.com/CommunityToolkit/Aspire/actions/runs/13403676338 |
faf217a
to
19c6217
Compare
Minimum allowed line rate is |
This is an overhaul of the runners and makes it more like the Aspire repo approach - https://github.com/dotnet/aspire/blob/5e270847fda789982de623bd5486f777989bc7cd/.github/workflows/tests.yml
The basic idea is that we use a matrix to run each of the test projects (across each OS), so that rather than having a single long test run, we have multiple shorter runs (it's taking <10 minutes consistently vs the ~20minutes currently).
This improves the visibility of the test runs, especially if there are fails, since we don't need to scroll through the whole test list, we can see exactly which workflow the failure was on.
main
andrelease
workflows.Here's what we see now in the summary of the job:

There is a summary of each individual test run (for each OS), which means that we get more fine grain details on the test runs.
It also gives us better insights into test failures. Here's an artificial failure I have added: