diff --git a/eng/Subsets.props b/eng/Subsets.props index 898741f170e185..73efd1ddb9d1a6 100644 --- a/eng/Subsets.props +++ b/eng/Subsets.props @@ -752,10 +752,10 @@ - + diff --git a/eng/pipelines/performance/templates/perf-wasm-build-jobs.yml b/eng/pipelines/performance/templates/perf-wasm-build-jobs.yml index aaf2a2375cfa77..5e70a42c991ad4 100644 --- a/eng/pipelines/performance/templates/perf-wasm-build-jobs.yml +++ b/eng/pipelines/performance/templates/perf-wasm-build-jobs.yml @@ -31,7 +31,7 @@ jobs: platforms: - browser_wasm jobParameters: - buildArgs: -s clr+libs+host+packs -c $(_BuildConfig) /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) + buildArgs: -s clr+libs+host+packs -c $(_BuildConfig) /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) /p:BuildHostTools=true nameSuffix: wasm_coreclr isOfficialBuild: false postBuildSteps: @@ -41,4 +41,5 @@ jobs: artifactName: BrowserWasmCoreCLR sdkDirName: dotnet-none includeRefPack: false + includeCrossgen2Pack: true publishCoreClrRuntimePack: true diff --git a/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml b/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml index a6452608f1b349..c5a1e399123f4b 100644 --- a/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml +++ b/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml @@ -4,6 +4,7 @@ parameters: runtimeFlavor: 'mono' sdkDirName: 'dotnet-latest' includeRefPack: true + includeCrossgen2Pack: false # The Mono (default) build installs the wasm-tools workload, whose manifest now includes the # CoreCLR browser-wasm runtime pack (Microsoft.NETCore.App.Runtime.browser-wasm). A Mono-only # build doesn't produce that pack, so download it from the CoreCLR build job and stage it into @@ -51,6 +52,15 @@ steps: - script: cp -r $(Build.SourcesDirectory)/artifacts/bin/microsoft.netcore.app.ref $(Build.SourcesDirectory)/artifacts/staging displayName: "Stage ref pack directory" + - ${{ if eq(parameters.includeCrossgen2Pack, true) }}: + - script: >- + find $(Build.SourcesDirectory)/artifacts/packages/${{ parameters.configForBuild }}/Shipping -maxdepth 1 + -name 'Microsoft.NETCore.App.Crossgen2.*.nupkg' -not -name '*.symbols.nupkg' + -exec cp {} $(Build.SourcesDirectory)/artifacts/staging/built-nugets \; && + test -n "$(find $(Build.SourcesDirectory)/artifacts/staging/built-nugets -maxdepth 1 + -name 'Microsoft.NETCore.App.Crossgen2.*.nupkg' -not -name '*.symbols.nupkg' -print -quit)" + displayName: "Stage Crossgen2 pack" + # Publish the CoreCLR browser-wasm runtime pack nuget on its own so the Mono build job can stage # it into its local feed for the wasm-tools workload install. - ${{ if eq(parameters.publishCoreClrRuntimePack, true) }}: