Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.

Commit

Permalink
Test current packages in CoreCLR official builds
Browse files Browse the repository at this point in the history
  • Loading branch information
wtgodbe committed Jun 6, 2017
1 parent c59f400 commit 959daa7
Show file tree
Hide file tree
Showing 18 changed files with 140 additions and 20 deletions.
2 changes: 1 addition & 1 deletion BuildToolsVersion.txt
@@ -1 +1 @@
2.0.0-prerelease-01528-03
2.0.0-prerelease-01702-02
2 changes: 1 addition & 1 deletion buildpipeline/DotNet-CoreClr-Trusted-Linux-Crossbuild.json
Expand Up @@ -157,7 +157,7 @@
},
"inputs": {
"filename": "docker",
"arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture)",
"arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
2 changes: 1 addition & 1 deletion buildpipeline/DotNet-CoreClr-Trusted-Linux.json
Expand Up @@ -139,7 +139,7 @@
},
"inputs": {
"filename": "docker",
"arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture)",
"arguments": "run --rm $(DockerCommonRunArgs) ./build-packages.sh -BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
2 changes: 1 addition & 1 deletion buildpipeline/DotNet-CoreClr-Trusted-Mac.json
Expand Up @@ -67,7 +67,7 @@
},
"inputs": {
"filename": "$(Agent.BuildDirectory)/s/build-packages.sh",
"arguments": "-BuildType=$(PB_BuildType) -BuildArch=$(Architecture)",
"arguments": "-BuildType=$(PB_BuildType) -BuildArch=$(Architecture) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
2 changes: 1 addition & 1 deletion buildpipeline/DotNet-CoreClr-Trusted-Windows-x86.json
Expand Up @@ -131,7 +131,7 @@
},
"inputs": {
"filename": "build-packages.cmd",
"arguments": "-BuildArch=$(Architecture) -BuildType=$(PB_BuildType)",
"arguments": "-BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
2 changes: 1 addition & 1 deletion buildpipeline/DotNet-CoreClr-Trusted-Windows.json
Expand Up @@ -131,7 +131,7 @@
},
"inputs": {
"filename": "build-packages.cmd",
"arguments": "-BuildArch=$(Architecture) -BuildType=$(PB_BuildType)",
"arguments": "-BuildArch=$(Architecture) -BuildType=$(PB_BuildType) -- /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
58 changes: 56 additions & 2 deletions buildpipeline/Dotnet-CoreClr-Trusted-BuildTests.json
Expand Up @@ -41,7 +41,7 @@
"enabled": true,
"continueOnError": true,
"alwaysRun": false,
"displayName": "Run sync.cmd",
"displayName": "Sync test native binaries",
"timeoutInMinutes": 0,
"task": {
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
Expand All @@ -55,6 +55,60 @@
"failOnStandardError": "false"
}
},
{
"enabled": true,
"continueOnError": false,
"alwaysRun": false,
"displayName": "Sync packages",
"timeoutInMinutes": 0,
"task": {
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
"versionSpec": "1.*",
"definitionType": "task"
},
"inputs": {
"filename": "sync.cmd",
"arguments": "-ab -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -Container=$(Label) -BlobNamePrefix=$(PB_BuildType)/pkg/Microsoft",
"workingFolder": "",
"failOnStandardError": "false"
}
},
{
"enabled": true,
"continueOnError": false,
"alwaysRun": false,
"displayName": "Sync runtime packages",
"timeoutInMinutes": 0,
"task": {
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
"versionSpec": "1.*",
"definitionType": "task"
},
"inputs": {
"filename": "sync.cmd",
"arguments": "-ab -AzureAccount=$(CloudDropAccountName) -AzureToken=$(CloudDropAccessToken) -Container=$(Label) -BlobNamePrefix=$(PB_BuildType)/pkg/runtime",
"workingFolder": "",
"failOnStandardError": "false"
}
},
{
"enabled": true,
"continueOnError": false,
"alwaysRun": false,
"displayName": "Generate version props file",
"timeoutInMinutes": 0,
"task": {
"id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9",
"versionSpec": "1.*",
"definitionType": "task"
},
"inputs": {
"filename": "msbuild",
"arguments": "createVersionFile.proj /p:OfficialBuildId=$(OfficialBuildId)",
"workingFolder": "src",
"failOnStandardError": "false"
}
},
{
"enabled": true,
"continueOnError": false,
Expand All @@ -68,7 +122,7 @@
},
"inputs": {
"filename": "build-test.cmd",
"arguments": "$(PB_BuildType) $(Architecture) buildagainstpackages runtimeid $(Rid) $(TargetsNonWindowsArg)$(CrossgenArg)-OfficialBuildId=$(OfficialBuildId) -Priority=$(Priority)",
"arguments": "$(PB_BuildType) $(Architecture) buildagainstpackages runtimeid $(Rid) $(TargetsNonWindowsArg)$(CrossgenArg)-OfficialBuildId=$(OfficialBuildId) -OverwriteCoreClrPackageVersion -Priority=$(Priority)",
"workingFolder": "",
"failOnStandardError": "false"
}
Expand Down
18 changes: 18 additions & 0 deletions config.json
Expand Up @@ -30,6 +30,12 @@
"values": [],
"defaultValue": ""
},
"__BlobNamePrefix": {
"description": "Blob Prefix for Azure download.",
"valueType": "property",
"values": [],
"defaultValue": ""
},
"MsBuildFileLogging": {
"description": "MsBuild logging options.",
"valueType": "passThrough",
Expand Down Expand Up @@ -174,6 +180,12 @@
"values": [],
"defaultValue": ""
},
"OverwriteCoreClrPackageVersion": {
"description": "Sets the property specifying to overwrite CoreClr Package version using OfficialBuildId",
"valueType": "property",
"values": [ true, false ],
"defaultValue": true
},
"OfficialBuildId": {
"description": "Official Build Id.",
"valueType": "property",
Expand Down Expand Up @@ -531,6 +543,12 @@
"__Container": "default"
}
},
"blobNamePrefix": {
"description": "Blob Prefix to download from in Azure container.",
"settings": {
"__BlobNamePrefix": "default"
}
},
"runtimeId": {
"description": "Runtime ID of the binaries in the specified container.",
"settings": {
Expand Down
12 changes: 12 additions & 0 deletions dependencies.props
@@ -1,4 +1,16 @@
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<PropertyGroup>
<!-- Central place to set the versions of all nuget packages produced in the repo -->
<PackageVersion Condition="'$(PackageVersion)' == ''">2.0.0</PackageVersion>

<!-- Set the boolean below to true to generate packages with stabilized versions -->
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>
<StableVersion Condition="'$(StabilizePackageVersion)' == 'true' and '$(StableVersion)' == ''">$(PackageVersion)</StableVersion>

<PreReleaseLabel>preview2</PreReleaseLabel>
</PropertyGroup>

<!-- Source of truth for dependency tooling: the commit hash of the dotnet/versions master branch as of the last auto-upgrade. -->
<PropertyGroup>
<CoreFxCurrentRef>d4040dc6f74933eec9827d44e288c9cd15996a15</CoreFxCurrentRef>
Expand Down
12 changes: 4 additions & 8 deletions dir.props
Expand Up @@ -120,7 +120,6 @@
<!-- Packaging properties -->
<PropertyGroup>
<LicenseUrl>https://github.com/dotnet/coreclr/blob/master/LICENSE.TXT</LicenseUrl>
<PreReleaseLabel>preview2</PreReleaseLabel>
<PackageDescriptionFile>$(SourceDir).nuget/descriptions.json</PackageDescriptionFile>
<PackageLicenseFile>$(ProjectDir)LICENSE.TXT</PackageLicenseFile>
<PackageThirdPartyNoticesFile>$(ProjectDir)THIRD-PARTY-NOTICES.TXT</PackageThirdPartyNoticesFile>
Expand All @@ -134,13 +133,6 @@
<ReleaseNotes>https://go.microsoft.com/fwlink/?LinkID=799421</ReleaseNotes>

<ProjectUrl>https://dot.net</ProjectUrl>

<!-- Central place to set the versions of all nuget packages produced in the repo -->
<PackageVersion Condition="'$(PackageVersion)' == ''">2.0.0</PackageVersion>

<!-- Set the boolean below to true to generate packages with stabilized versions -->
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>
<StableVersion Condition="'$(StabilizePackageVersion)' == 'true' and '$(StableVersion)' == ''">$(PackageVersion)</StableVersion>

<!-- On Windows, MSbuild still runs against Desktop FX while it runs on .NET Core on non-Windows. this requires
pulling in different packaging dependencies.
Expand Down Expand Up @@ -182,6 +174,10 @@
<PackageIndex Include="$(PackageIndexFile)" />
</ItemGroup>

<PropertyGroup>
<BuildVersionFile>$(BaseIntermediateOutputPath)BuildVersion-$(OfficialBuildId).props</BuildVersionFile>
</PropertyGroup>

<!-- Use Roslyn Compilers to build -->
<Import Project="$(RoslynPropsFile)" Condition="'$(RunningOnUnix)'!='true' and Exists('$(RoslynPropsFile)') and '$(UseRoslynCompilers)'!='false'" />
<Import Project="$(RoslynPropsFile)" Condition="'$(RunningOnUnix)'=='true' and Exists('$(RoslynPropsFile)')" />
Expand Down
13 changes: 13 additions & 0 deletions src/createVersionFile.proj
@@ -0,0 +1,13 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<Import Project="..\dir.props" />
<Import Project="$(ToolsDir)versioning.targets" Condition="Exists('$(ToolsDir)versioning.targets')"/>

<PropertyGroup>
<VersionPropsImported>false</VersionPropsImported>
</PropertyGroup>

<Target Name="Build"
DependsOnTargets="CreateOrUpdateCurrentVersionFile">
</Target>
</Project>
1 change: 1 addition & 0 deletions src/syncAzure.proj
Expand Up @@ -7,6 +7,7 @@
<ContainerName Condition="'$(__Container)' == '' and '$(ContainerNamePrefix)' != '' and '$(BuildNumberMajor)' != '' and '$(BuildNumberMinor)' != ''">$(ContainerNamePrefix)-$(BuildNumberMajor)-$(BuildNumberMinor)</ContainerName>
<ContainerName Condition="'$(__Container)' != ''">$(__Container)</ContainerName>
<ContainerName>$(ContainerName.Replace(".","-"))</ContainerName>
<BlobNamePrefix>$(__BlobNamePrefix)</BlobNamePrefix>
<DownloadDirectory Condition="'$(PublishTestNativeBins)' != 'true'">$(PackagesDir)AzureTransfer</DownloadDirectory>
<DownloadDirectory Condition="'$(PublishTestNativeBins)' == 'true'">$(PackagesDir)TestNativeBins\$(RuntimeId)</DownloadDirectory>
</PropertyGroup>
Expand Down
2 changes: 2 additions & 0 deletions sync.cmd
Expand Up @@ -26,6 +26,8 @@ echo -BuildMajor
echo -BuildMinor
echo To download from a specific container, specify:
echo -Container="container name"
echo To download blobs starting with a specific prefix, specify:
echo -BlobNamePrefix="Blob name prefix"
echo -n - Downloads test native binaries from the specified container
echo The following properties are required:
echo -AzureAccount="Account name"
Expand Down
2 changes: 1 addition & 1 deletion tests/build.proj
Expand Up @@ -50,7 +50,7 @@
</Target>

<Target Name="RestorePackage">
<Exec Command="$(DotnetRestoreCommand) $(RestoreProj)"
<Exec Command="$(DotnetRestoreCommand) $(RestoreProj) $(PackageVersionArg)"
StandardOutputImportance="Low" />
</Target>

Expand Down
15 changes: 14 additions & 1 deletion tests/dir.props
@@ -1,5 +1,4 @@
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<!--
$(OS) is set to Unix/Windows_NT. This comes from an environment variable on Windows and MSBuild on Unix.
-->
Expand Down Expand Up @@ -67,6 +66,7 @@

<ItemGroup>
<!-- Need to escape double forward slash (%2F) or MSBuild will normalize to one slash on Unix. -->
<DotnetSourceList Include="$(PackagesDir)AzureTransfer\$(__BuildType)\pkg\" Condition="'$(OverwriteCoreClrPackageVersion)' == 'true'" />
<DotnetSourceList Include="https:%2F%2Fdotnet.myget.org/F/dotnet-corefxlab/api/v3/index.json" />
<DotnetSourceList Include="https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v3/index.json" />
<DotnetSourceList Include="https:%2F%2Fapi.nuget.org/v3/index.json" />
Expand All @@ -77,6 +77,19 @@
<RestorePackages>false</RestorePackages>
</PropertyGroup>

<PropertyGroup>
<BuildVersionFile>$(BaseIntermediateOutputPath)BuildVersion-$(OfficialBuildId).props</BuildVersionFile>
</PropertyGroup>

<!-- If we want to overwrite the desired CoreCLR package version, we need to get the new version from the generated props file in bin/obj -->
<Import Condition="'$(OverwriteCoreClrPackageVersion)' == 'true'" Project="$(BuildVersionFile)" />

<PropertyGroup Condition="'$(OverwriteCoreClrPackageVersion)' == 'true'">
<VersionToRestore Condition="'$(StableVersion)' != ''">$(StableVersion)</VersionToRestore>
<VersionToRestore Condition="'$(VersionToRestore)' == ''">$(PackageVersion)-$(PreReleaseLabel)-$(BuildNumberMajor)-$(BuildNumberMinor)</VersionToRestore>
<PackageVersionArg>/p:CoreClrPackageVersion=$(VersionToRestore)</PackageVersionArg>
</PropertyGroup>

<!-- Which tests shall we build? Default: Priority 0 tests.
At the command-line, the user can specify /p:CLRTestPriorityToBuild=666 (for example), and
all tests with CLRTestPriority 666,..., 1 AND 0 will build.
Expand Down
2 changes: 1 addition & 1 deletion tests/publishdependency.targets
Expand Up @@ -31,7 +31,7 @@
</ItemGroup>

<ItemGroup>
<CrossGenFiles Include="..\packages\runtime.$(TargetRid).Microsoft.NETCore.Runtime.CoreCLR\$(CoreClrPackageVersion)\tools\crossgen*"/>
<CrossGenFiles Include="..\packages\runtime.$(TargetRid).Microsoft.NETCore.Runtime.CoreCLR\$(DesiredPackageVersionArg)\tools\crossgen*"/>
</ItemGroup>

<PropertyGroup>
Expand Down
12 changes: 11 additions & 1 deletion tests/runtest.proj
Expand Up @@ -318,14 +318,24 @@ namespace $([System.String]::Copy($(Category)).Replace(".","_").Replace("\","").
<ItemGroup>
<AllRunnableTestPaths Include="$(XunitTestBinBase)\**\*.cmd" />
</ItemGroup>
</Target>
</Target>

<!-- If we want to overwrite the desired CoreCLR package version, we need to get the new version from the generated props file in bin/obj -->
<Import Condition="'$(OverwriteCoreClrPackageVersion)' == 'true'" Project="$(BuildVersionFile)" />

<PropertyGroup Condition="'$(OverwriteCoreClrPackageVersion)' == 'true'">
<VersionToRestore Condition="'$(StableVersion)' != ''">$(StableVersion)</VersionToRestore>
<VersionToRestore Condition="'$(VersionToRestore)' == ''">$(PackageVersion)-$(PreReleaseLabel)-$(BuildNumberMajor)-$(BuildNumberMinor)</VersionToRestore>
<DesiredPackageVersionArg>$(VersionToRestore)</DesiredPackageVersionArg>
</PropertyGroup>

<Import Project="tests.targets" />
<Import Project="publishdependency.targets" />

<PropertyGroup>
<TargetRid Condition="'$(RuntimeId)' != ''">$(RuntimeId)</TargetRid>
<TargetRid Condition="'$(RuntimeId)' == ''">$(TestNugetRuntimeId)</TargetRid>
<DesiredPackageVersionArg Condition="'$(DesiredPackageVersionArg)' == ''">$(CoreClrPackageVersion)</DesiredPackageVersionArg>
</PropertyGroup>

<Target Name="CreateTestOverlay">
Expand Down
1 change: 1 addition & 0 deletions tests/src/dir.props
Expand Up @@ -94,4 +94,5 @@
<NuGetTargetMonikerShort>netcoreapp2.0</NuGetTargetMonikerShort>
<PrereleaseResolveNuGetPackages>true</PrereleaseResolveNuGetPackages>
</PropertyGroup>

</Project>

0 comments on commit 959daa7

Please sign in to comment.