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

[wasm] Run Wasm.Build.Tests against workloads #54451

Merged
merged 25 commits into from
Jul 14, 2021

Commits on Jul 12, 2021

  1. [wasm] Emcc.props -> emcc-props.json

    .. and use that instead of importing the props file. This allows reading
    the file on demand, and can be delayed till we have the runtime pack
    path.
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    880073b View commit details
    Browse the repository at this point in the history
  2. [wasm] Build samples, functional tests, and Wasm.Build.Tests only when

    .. needed.
    
    - Don't build samples, functional tests, and Wasm.Build.Tests on EAT, AOT lanes
    - And build the samples in parallel
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    c8c6cee View commit details
    Browse the repository at this point in the history
  3. [wasm] Use %(ResolvedRuntimePack.PackageDirectory) to get the runtime

    .. pack, instead of constructing it manually from nuget package path.
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    f04daf2 View commit details
    Browse the repository at this point in the history
  4. [wasm] Wasm.Build.Tests cleanup

    .. and add per-test timeout.
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    1e23eba View commit details
    Browse the repository at this point in the history
  5. cross-aot: Allow the project to be built directly for packing

    - Currently, the cross aot packages get built on CI for the various
      configs, but we do get the binary built in artifacts.
    - These changes allow a package to be generated based on that, and it
      will be useful for installing workloads that use such a package.
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    cf11f19 View commit details
    Browse the repository at this point in the history
  6. Add support for building Wasm.Build.Tests with workloads

    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
    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    c87f5cf View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    fa86d41 View commit details
    Browse the repository at this point in the history
  8. cleanup

    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    23c428c View commit details
    Browse the repository at this point in the history
  9. Set PYTHONPATH for emsdk case

    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    d7ad91b View commit details
    Browse the repository at this point in the history
  10. Testing the build

    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    fede431 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    2282814 View commit details
    Browse the repository at this point in the history
  12. Add doc for workloads testing

    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    0f13abc View commit details
    Browse the repository at this point in the history
  13. cleanup

    radical committed Jul 12, 2021
    Configuration menu
    Copy the full SHA
    0a6532a View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    df94014 View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2021

  1. Fix typo

    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    dd92d28 View commit details
    Browse the repository at this point in the history
  2. fix typo

    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    5d897b8 View commit details
    Browse the repository at this point in the history
  3. Fix skipping tests on windows

    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    1dbae80 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cc38268 View commit details
    Browse the repository at this point in the history
  5. re-enable all the jobs

    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    364dc80 View commit details
    Browse the repository at this point in the history
  6. cleanup

    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    d7d8b27 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    7b8a4ae View commit details
    Browse the repository at this point in the history
  8. lock access to the stringbuilder for output, to prevent it from getti…

    …ng corrupted by concurrent access
    radical committed Jul 13, 2021
    Configuration menu
    Copy the full SHA
    236b644 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    31d41b9 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    32fa9c4 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2021

  1. Configuration menu
    Copy the full SHA
    b9f99a8 View commit details
    Browse the repository at this point in the history