summaryrefslogtreecommitdiff
path: root/src/publishwitharcade.proj
diff options
context:
space:
mode:
authorSven Boemer <sbomer@gmail.com>2018-11-08 08:50:37 -0800
committerGitHub <noreply@github.com>2018-11-08 08:50:37 -0800
commit8bc5616def9074d8457f85d22b1280493ad731ad (patch)
tree059d9a50f34f73924a3d168853d9ce10c39a313a /src/publishwitharcade.proj
parentf6e7568cc6d4901abb5e11ebc05267743a1c5205 (diff)
downloadcoreclr-8bc5616def9074d8457f85d22b1280493ad731ad.tar.gz
coreclr-8bc5616def9074d8457f85d22b1280493ad731ad.tar.bz2
coreclr-8bc5616def9074d8457f85d22b1280493ad731ad.zip
Add azure-pipelines build and test definitions (#20840)
This adds an azure pipeline definition with a matrix of product and test builds, using helix to run tests. The intention is that this definition will eventually be used for both our official build and CI testing. There is one build job for each OS/platform/arch, and one test job for each OS/platform/arch/priority/R2Rflag. The test job builds tests and then submits them to helix, passing along a number of test run modes. One helix test job will be created for each OS/platform/arch/priority/R2Rflag/helixtargetqueue/testscenario. There is a lot of work left to be done to get this up to parity with our official builds and CI, which I've tried to call out in comments.
Diffstat (limited to 'src/publishwitharcade.proj')
-rw-r--r--src/publishwitharcade.proj37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/publishwitharcade.proj b/src/publishwitharcade.proj
new file mode 100644
index 0000000000..01bc997288
--- /dev/null
+++ b/src/publishwitharcade.proj
@@ -0,0 +1,37 @@
+<Project DefaultTargets="PublishProductPackages" Sdk="Microsoft.DotNet.Arcade.Sdk">
+
+ <!-- TODO: move properties imported from here into a common props file -->
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
+
+ <Import Project="$(NuGetPackageRoot)microsoft.dotnet.build.tasks.feed\$(MicrosoftDotNetBuildTasksFeedVersion)\build\Microsoft.DotNet.Build.Tasks.Feed.targets" />
+
+ <Target Name="PublishPackages">
+
+ <ItemGroup>
+ <ItemsToPush Remove="*.nupkg" />
+ <ItemsToPush Include="$(PackagesBinDir)pkg\*.nupkg">
+ <ManifestArtifactData>NonShipping=true</ManifestArtifactData> <!-- TODO: how is this metadata used? -->
+ </ItemsToPush>
+ </ItemGroup>
+
+ <Error Condition=" '$(AzureFeedUrl)' == '' " Text="AzureFeedUrl must be set" />
+ <Error Condition=" '$(AccountKey)' == '' " Text="AccountKey must be set" />
+ <Error Condition=" '$(BUILD_REPOSITORY_URI)' == '' " Text="BUILD_REPOSITORY_URI must be set" />
+ <Error Condition=" '$(BUILD_SOURCEBRANCH)' == '' " Text="BUILD_SOURCEBRANCH must be set" />
+ <Error Condition=" '$(BUILD_BUILDNUMBER)' == '' " Text="BUILD_BUILDNUMBER must be set" />
+ <Error Condition=" '$(BUILD_SOURCEVERSION)' == '' " Text="BUILD_SOURCEVERSION must be set" />
+
+ <PushToBlobFeed ExpectedFeedUrl="$(AzureFeedUrl)"
+ AccountKey="$(AccountKey)"
+ ItemsToPush="@(ItemsToPush)"
+ ManifestBuildData="Location=$(AzureFeedUrl)"
+ ManifestRepoUri="$(BUILD_REPOSITORY_URI)"
+ ManifestBranch="$(BUILD_SOURCEBRANCH)"
+ ManifestBuildId="$(BUILD_BUILDNUMBER)"
+ ManifestCommit="$(BUILD_SOURCEVERSION)" />
+ <!-- TODO: The arcade sample publishes an asset manifest. Do we want this?
+ AssetManifestPath="" />
+ -->
+ </Target>
+
+</Project>