-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[wasm] Update Wasm.Build.Tests to build with net6.0 #54936
Conversation
- This also refactors to tests to be usable for testing with workloads in an upcoming PR. - And skips workload-only tests
Tagging subscribers to this area: @directhex Issue Details
|
- Console (AOT/interp) - Browser (AOT/interp) - TopLevel (nterp) All of these are covered in Wasm.Build.Tests . This saves on unncessary build time too ;)
Tagging subscribers to 'arch-wasm': @lewing Issue Details
|
.. so they can be added with the PR that adds support for workloads, and can be reviewed there.
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good, some thoughts
Co-authored-by: Larry Ewing <[email protected]>
Co-authored-by: Larry Ewing <[email protected]>
are the runtime pack resolution bits needed in this pr? |
where? the changes in |
Currently we run `Wasm.Build.Tests` on helix, by setting various paths to reference files from `artifacts`. This PR adds another mode, we *try* to test against workload packs. For this: 1. we need the nugets for the various workload packs, and the manifests 2. manifest id, path to those nugets 3. and a SDK version to use for testing Steps: 1. The specified SDK is installed in `artifacts/bin/dotnet-workload` 2. the specified manifest is installed from the built nugets, and any `depends-on` manifests in the json. 3. `dotnet workload install` is used to install the packs, with the built nugets path being used as one the nuget sources Once this setup is done, the tests are run in an environment such that they use `dotnet` from above, and try to resolve packs from there. Known issues: 1. `Pack` target is explicitly invoked for the aotcross projects We still want to test without packs, the case of using `EMSDK_PATH` directly, for example, in the library tests. So, we now run `Wasm.Build.Tests` for Workloads, *and* the regular `EMSDK_PATH`. Two workload specific tests were added in a recent PR (dotnet#54936) - simple test for building blazorwasm template project with AOT - a test to validate that the files in `UnixFilePermissions.xml` for the packs actually exist on disk .. and these are enabled here. Notes: - This also fixes using the correct runtime pack based on the version in the manifest json. - The sdk version is specified with `<SdkVersionForWorkloadTesting>6.0.100-preview.7.21326.4</SdkVersionForWorkloadTesting>` in `eng/Versions.props` TODO: - Run the blazorwasm test with playwright - Add sdk-with-no-packs case also
in an upcoming PR.