diff options
Diffstat (limited to 'eng/testing/workloads-testing.targets')
-rw-r--r-- | eng/testing/workloads-testing.targets | 90 |
1 files changed, 28 insertions, 62 deletions
diff --git a/eng/testing/workloads-testing.targets b/eng/testing/workloads-testing.targets index 5da047758f8..0c41fc2bb5c 100644 --- a/eng/testing/workloads-testing.targets +++ b/eng/testing/workloads-testing.targets @@ -3,6 +3,10 @@ <PropertyGroup Condition="'$(TestUsingWorkloads)' == 'true'"> <!-- for non-ci builds, we install the sdk when tests are run --> <InstallWorkloadForTesting Condition="'$(ContinuousIntegrationBuild)' == 'true' and '$(ArchiveTests)' == 'true'">true</InstallWorkloadForTesting> + + <_SdkForWorkloadTestingBasePath>$(ArtifactsBinDir)</_SdkForWorkloadTestingBasePath> + <_SdkWithNoWorkloadPath>$([MSBuild]::NormalizeDirectory($(_SdkForWorkloadTestingBasePath), 'dotnet-none'))</_SdkWithNoWorkloadPath> + <_SdkWithNoWorkloadStampPath>$([MSBuild]::NormalizePath($(_SdkWithNoWorkloadPath), '.version-$(SdkVersionForWorkloadTesting).stamp'))</_SdkWithNoWorkloadStampPath> </PropertyGroup> <ItemGroup> @@ -12,43 +16,21 @@ <_DefaultPropsForNuGetBuild Include="ContinuousIntegrationBuild=$(ContinuousIntegrationBuild)" /> </ItemGroup> - <Target Name="ProvisionSdkForWorkloadTesting" - DependsOnTargets="_ProvisionSdkWithNoWorkload" - Condition="!Exists($(SdkWithNoWorkloadStampPath)) or !Exists($(SdkWithWorkloadStampPath))"> - - <Error Text="%24(SdkWithWorkloadForTestingPath) is not set" Condition="'$(SdkWithWorkloadForTestingPath)' == ''" /> + <Target Name="_ProvisionDotNetForWorkloadTesting" Condition="!Exists($(_SdkWithNoWorkloadStampPath))"> + <Error Text="%24(_SdkWithNoWorkloadPath) is not set" Condition="'$(_SdkWithNoWorkloadPath)' == ''" /> - <Message Text="** Installing sdk $(SdkVersionForWorkloadTesting) for workload based tests into $(SdkWithWorkloadForTestingPath)" + <Message Text="** Installing sdk $(SdkVersionForWorkloadTesting) for workload based tests into $(_SdkWithNoWorkloadPath)" Condition="'$(SdkVersionForWorkloadTesting)' != ''" Importance="High" /> - <Message Text="** Installing latest sdk for workload based tests into $(SdkWithWorkloadForTestingPath)" + <Message Text="** Installing latest sdk for workload based tests into $(_SdkWithNoWorkloadPath)" Condition="'$(SdkVersionForWorkloadTesting)' == ''" Importance="High" /> - <RemoveDir Directories="$(SdkWithWorkloadForTestingPath)" /> - <MakeDir Directories="$(SdkWithWorkloadForTestingPath)" /> - <ItemGroup> - <_SourceFiles Include="$(SdkWithNoWorkloadForTestingPath)\**" /> + <_SdkWithNoWorkloadTarget Include="none" InstallPath="$(_SdkWithNoWorkloadPath)" /> </ItemGroup> - - <Copy SourceFiles="@(_SourceFiles)" DestinationFolder="$(SdkWithWorkloadForTestingPath)\%(_SourceFiles.RecursiveDir)" /> - - <WriteLinesToFile File="$(SdkWithWorkloadStampPath)" Lines="" Overwrite="true" /> - </Target> - - <Target Name="_ProvisionSdkWithNoWorkload" Condition="!Exists($(SdkWithNoWorkloadStampPath))"> - <Error Text="%24(SdkWithNoWorkloadForTestingPath) is not set" Condition="'$(SdkWithNoWorkloadForTestingPath)' == ''" /> - - <Message Text="** Installing sdk $(SdkVersionForWorkloadTesting) for workload based tests into $(SdkWithNoWorkloadForTestingPath)" - Condition="'$(SdkVersionForWorkloadTesting)' != ''" - Importance="High" /> - <Message Text="** Installing latest sdk for workload based tests into $(SdkWithNoWorkloadForTestingPath)" - Condition="'$(SdkVersionForWorkloadTesting)' == ''" - Importance="High" /> - - <RemoveDir Directories="$(SdkWithNoWorkloadForTestingPath)" /> - <MakeDir Directories="$(SdkWithNoWorkloadForTestingPath)" /> + <RemoveDir Directories="$(_SdkWithNoWorkloadPath)" /> + <MakeDir Directories="$(_SdkWithNoWorkloadPath)" /> <PropertyGroup> <_DotNetInstallScriptName Condition="!$([MSBuild]::IsOSPlatform('windows'))">dotnet-install.sh</_DotNetInstallScriptName> @@ -59,16 +41,16 @@ <PropertyGroup Condition="'$(SdkVersionForWorkloadTesting)' != ''"> <_DotNetInstallCommand Condition="!$([MSBuild]::IsOSPlatform('windows'))" - >$(_DotNetInstallScriptPath) -i $(SdkWithNoWorkloadForTestingPath) -v $(SdkVersionForWorkloadTesting)</_DotNetInstallCommand> + >$(_DotNetInstallScriptPath) -i $(_SdkWithNoWorkloadPath) -v $(SdkVersionForWorkloadTesting)</_DotNetInstallCommand> <_DotNetInstallCommand Condition="$([MSBuild]::IsOSPlatform('windows'))" - >$(_DotNetInstallScriptPath) -InstallDir $(SdkWithNoWorkloadForTestingPath) -Version $(SdkVersionForWorkloadTesting)</_DotNetInstallCommand> + >$(_DotNetInstallScriptPath) -InstallDir $(_SdkWithNoWorkloadPath) -Version $(SdkVersionForWorkloadTesting)</_DotNetInstallCommand> </PropertyGroup> <PropertyGroup Condition="'$(SdkVersionForWorkloadTesting)' == ''"> <_DotNetInstallCommand Condition="!$([MSBuild]::IsOSPlatform('windows'))" - >$(_DotNetInstallScriptPath) -i $(SdkWithNoWorkloadForTestingPath) -v latest -q daily --channel 7.0</_DotNetInstallCommand> + >$(_DotNetInstallScriptPath) -i $(_SdkWithNoWorkloadPath) -v latest -q daily --channel 7.0</_DotNetInstallCommand> <_DotNetInstallCommand Condition="$([MSBuild]::IsOSPlatform('windows'))" - >$(_DotNetInstallScriptPath) -InstallDir $(SdkWithNoWorkloadForTestingPath) -Quality daily -Channel 7.0</_DotNetInstallCommand> + >$(_DotNetInstallScriptPath) -InstallDir $(_SdkWithNoWorkloadPath) -Quality daily -Channel 7.0</_DotNetInstallCommand> </PropertyGroup> <DownloadFile SourceUrl="https://dot.net/v1/$(_DotNetInstallScriptName)" @@ -82,13 +64,17 @@ <Exec Condition="$([MSBuild]::IsOSPlatform('windows'))" Command='powershell -ExecutionPolicy ByPass -NoProfile -command "& $(_DotNetInstallCommand)"' /> - - <WriteLinesToFile File="$(SdkWithNoWorkloadStampPath)" Lines="" Overwrite="true" /> </Target> <Target Name="GetWorkloadInputs"> <ItemGroup> <AvailableNuGetsInArtifacts Include="$(LibrariesShippingPackagesDir)\*.nupkg" /> + + <!--<_SdkWithWorkloadToInstall Include="none" Version="none" />--> + <_SdkWithWorkloadToInstall Include="@(WorkloadCombinationsToInstall)" /> + <_SdkWithWorkloadToInstall InstallPath="$(_SdkForWorkloadTestingBasePath)\dotnet-%(Identity)" /> + <!--<_SdkWithWorkloadToInstall StampPath="%(InstallPath)\version-%(Version).stamp" Condition="'%(Version)' != ''" />--> + <_SdkWithWorkloadToInstall StampPath="%(InstallPath)\version.stamp" /> </ItemGroup> <Error Text="Cannot find any nupkg files in $(LibrariesShippingPackagesDir), needed for workloads" Condition="@(AvailableNuGetsInArtifacts->Count()) == 0" /> @@ -104,7 +90,7 @@ <Target Name="InstallWorkloadUsingArtifacts" AfterTargets="ArchiveTests" - DependsOnTargets="_GetNuGetsToBuild;_PreparePackagesForWorkloadInstall;ProvisionSdkForWorkloadTesting;GetWorkloadInputs;_InstallWorkload;_UpdateManifestsForSdkWithNoWorkload" + DependsOnTargets="_GetNuGetsToBuild;_PreparePackagesForWorkloadInstall;GetWorkloadInputs;_ProvisionDotNetForWorkloadTesting;_InstallWorkloads" Condition="'$(InstallWorkloadForTesting)' == 'true'" /> <Target Name="_GetNuGetsToBuild" Returns="@(_NuGetsToBuild)" DependsOnTargets="_GetRuntimePackNuGetsToBuild"> @@ -168,7 +154,7 @@ </ItemGroup> <Error Condition="@(_RuntimePackNugetAvailable -> Count()) != 3 and @(_RuntimePackNugetAvailable -> Count()) != 1" - Text="Multiple runtime pack nugets found. Expected to find either one or three in $(LibrariesShippingPackagesDir): @(_RuntimePackNugetAvailable->'%(FileName)%(Extension)')" /> + Text="Expected to find either one or three in $(LibrariesShippingPackagesDir): @(_RuntimePackNugetAvailable->'%(FileName)%(Extension)')" /> <ItemGroup> <_BuildVariants Include="multithread" Condition="'$(_DefaultBuildVariant)' != '.multithread.'" /> @@ -202,42 +188,22 @@ *******************" /> </Target> - <Target Name="_InstallWorkload" + <Target Name="_InstallWorkloads" Inputs="@(AvailableNuGetsInArtifacts)" - Outputs="$(SdkWithWorkload_WorkloadStampPath)"> + Outputs="@(_SdkWithWorkloadToInstall->'%(StampPath)')"> <ItemGroup> <_BuiltNuGets Include="$(LibrariesShippingPackagesDir)\*.nupkg" /> </ItemGroup> - <PropertyGroup> - </PropertyGroup> - - <Error Text="Could not find cross compiler nupkg at $(_AOTCrossNuGetPath). Found packages: @(_BuiltNuGets)" - Condition="!Exists($(_AOTCrossNuGetPath))" /> - <Message Text="Packages found in $(LibrariesShippingPackagesDir): @(_BuiltNuGets)" Importance="Low" /> <InstallWorkloadFromArtifacts WorkloadIds="@(WorkloadIdForTesting)" + InstallTargets="@(_SdkWithWorkloadToInstall)" VersionBand="$(SdkBandVersion)" LocalNuGetsPath="$(LibrariesShippingPackagesDir)" TemplateNuGetConfigPath="$(RepoRoot)NuGet.config" - SdkDir="$(SdkWithWorkloadForTestingPath)" /> - <WriteLinesToFile File="$(SdkWithWorkload_WorkloadStampPath)" Lines="" Overwrite="true" /> - </Target> - - <Target Name="_UpdateManifestsForSdkWithNoWorkload" - Inputs="@(AvailableNuGetsInArtifacts)" - Outputs="$(SdkWithNoWorkload_WorkloadStampPath)"> - - <InstallWorkloadFromArtifacts - WorkloadIds="@(WorkloadIdForTesting)" - VersionBand="$(SdkBandVersion)" - LocalNuGetsPath="$(LibrariesShippingPackagesDir)" - TemplateNuGetConfigPath="$(RepoRoot)NuGet.config" - SdkDir="$(SdkWithNoWorkloadForTestingPath)" - OnlyUpdateManifests="true"/> - - <WriteLinesToFile File="$(SdkWithNoWorkload_WorkloadStampPath)" Lines="" Overwrite="true" /> + SdkWithNoWorkloadInstalledPath="$(_SdkWithNoWorkloadPath)" + /> </Target> </Project> |