2018-12-19 20:53:08 +00:00
|
|
|
<Project>
|
2024-01-23 22:47:28 +00:00
|
|
|
|
2018-12-19 20:53:08 +00:00
|
|
|
<PropertyGroup>
|
|
|
|
<Product>Sdk</Product>
|
|
|
|
<BlobStoragePartialRelativePath>$(Product)</BlobStoragePartialRelativePath>
|
2018-12-26 19:42:24 +00:00
|
|
|
<PublishBinariesAndBadge Condition=" '$(PublishBinariesAndBadge)' == '' ">true</PublishBinariesAndBadge>
|
2023-08-08 21:00:15 +00:00
|
|
|
<!-- Installer doesn't produce any interesting binaries that need a symbol package generated in
|
|
|
|
parallel to the regular package. This avoids creating VS.*.symbols.nupkg packages that
|
|
|
|
are identical to the original package. -->
|
|
|
|
<AutoGenerateSymbolPackages>false</AutoGenerateSymbolPackages>
|
2018-12-19 20:53:08 +00:00
|
|
|
</PropertyGroup>
|
|
|
|
|
2020-07-15 20:32:28 +00:00
|
|
|
<!-- Pulled from arcade's publish.proj see https://github.com/dotnet/arcade/issues/5790 for
|
|
|
|
issue on making this common in arcade so it doesn't have to be duplicated here -->
|
|
|
|
<PropertyGroup>
|
|
|
|
<CollectionUri>$(SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)</CollectionUri>
|
|
|
|
|
|
|
|
<!-- When we have dev.azure.com/<account>/ -->
|
|
|
|
<AzureDevOpsAccount Condition="$(CollectionUri.IndexOf('dev.azure.com')) >= 0">$(CollectionUri.Split('/')[3])</AzureDevOpsAccount>
|
|
|
|
|
|
|
|
<!-- When we have <account>.visualstudio.com -->
|
|
|
|
<AzureDevOpsAccount Condition="$(CollectionUri.IndexOf('visualstudio.com')) >= 0">$(CollectionUri.Split('.')[0].Split('/')[2])</AzureDevOpsAccount>
|
|
|
|
</PropertyGroup>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
The new Maestro/BAR build model keeps separate Azure DevOps and GitHub build information.
|
|
|
|
The GitHub information will be extracted based on the Azure DevOps repository.
|
|
|
|
-->
|
|
|
|
<ItemGroup>
|
|
|
|
<ManifestBuildData Include="InitialAssetsLocation=$(SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)$(SYSTEM_TEAMPROJECT)/_apis/build/builds/$(BUILD_BUILDID)/artifacts" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsBuildId=$(BUILD_BUILDID)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsBuildDefinitionId=$(SYSTEM_DEFINITIONID)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsAccount=$(AzureDevOpsAccount)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsProject=$(SYSTEM_TEAMPROJECT)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsBuildNumber=$(BUILD_BUILDNUMBER)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsRepository=$(BUILD_REPOSITORY_URI)" />
|
|
|
|
<ManifestBuildData Include="AzureDevOpsBranch=$(BUILD_SOURCEBRANCH)" />
|
|
|
|
</ItemGroup>
|
|
|
|
|
2019-01-24 21:12:57 +00:00
|
|
|
<PropertyGroup>
|
|
|
|
<!-- Because we may be building in a container, we should use an asset manifest file path
|
2020-08-03 19:18:09 +00:00
|
|
|
that exists in the container. Disambiguate the manifests via available properties.
|
|
|
|
AGENT_OS and AGENT_JOBNAME are present on Azure DevOps agents. AssetManifestOS will also
|
|
|
|
be used by arcade to generate the name of the manifest file name for the built in publishing. -->
|
|
|
|
<AssetManifestOS Condition="'$(AGENT_OS)' != ''">$(AGENT_OS)</AssetManifestOS>
|
|
|
|
<AssetManifestOS Condition="'$(AGENT_OS)' == ''">$(OS)</AssetManifestOS>
|
|
|
|
<AssetManifestOS Condition="'$(AGENT_JOBNAME)' != ''">$(AssetManifestOS)-$(AGENT_JOBNAME)</AssetManifestOS>
|
|
|
|
<BaseAssetManifestFileName>$(AssetManifestOS)</BaseAssetManifestFileName>
|
|
|
|
<BaseAssetManifestFileName Condition="'$(AGENT_JOBNAME)' == '' and '$(Architecture)' != ''">$(AssetManifestOS)-$(Architecture)</BaseAssetManifestFileName>
|
|
|
|
<InstallersAssetManifestFileName>$(BaseAssetManifestFileName)-installers</InstallersAssetManifestFileName>
|
|
|
|
<!-- Property AssetManifestFilePath would be reassigned by the Arcade SDK, so use a different name (InstallersAssetManifestFilePath) -->
|
|
|
|
<InstallersAssetManifestFilePath>$(ArtifactsLogDir)AssetManifest\$(InstallersAssetManifestFileName).xml</InstallersAssetManifestFilePath>
|
2019-09-10 19:33:20 +00:00
|
|
|
|
|
|
|
<DotnetTempWorkingDirectory>$(ArtifactsDir)..\DotnetAssetsTmpDir\$([System.Guid]::NewGuid())</DotnetTempWorkingDirectory>
|
|
|
|
<ChecksumTempWorkingDirectory>$(ArtifactsDir)..\ChecksumAssetsTmpDir\$([System.Guid]::NewGuid())</ChecksumTempWorkingDirectory>
|
2019-01-24 21:12:57 +00:00
|
|
|
</PropertyGroup>
|
2018-12-24 18:12:23 +00:00
|
|
|
|
2018-12-19 20:53:08 +00:00
|
|
|
<ItemGroup>
|
2018-12-26 19:42:24 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.zip" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.tar.gz" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
2018-12-19 20:53:08 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.pkg" />
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.exe" />
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.deb" />
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.rpm" />
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.msi" />
|
2019-05-16 23:33:29 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.cab" />
|
2019-09-10 19:33:20 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)*.svg" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
2020-04-24 21:02:27 +00:00
|
|
|
<!-- Only publish this file from windows x64 so that we don't end up with duplicates -->
|
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)productVersion.txt"
|
2021-03-25 05:49:28 +00:00
|
|
|
Condition=" '$(PublishBinariesAndBadge)' == 'true' and '$(OS)' == 'Windows_NT' and '$(Architecture)' == 'x64' and '$(PgoInstrument)' != 'true'" />
|
Duplicate productVersion.txt with repo-specific name (#9666)
In our efforts to unify the build access story using aka.ms links, we have found that there are certain files that share the same name in multiple different repositories, most importantly, productVersion.txt. As part of the work to move to aka.ms links, we will be flattening the short link paths, so rather than having a runtime-specific, aspnetcore-specific, etc. full path to the files generated by each of the repos, they will all go to the same short link location. This means that the path to productVersion.txt will collide in the aka.ms links (the backing locations are not changing and will be unaffected). To combat this, we will add a duplicate of each of the product repos productVersion.txt, renamed to indicate which product repo it came from, in this case installer-productVersion.txt. The original will remane so that we do not break existing scenarios that do not use the aka.ms links.
2021-02-10 01:13:36 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)sdk-productVersion.txt"
|
2021-03-25 05:49:28 +00:00
|
|
|
Condition=" '$(PublishBinariesAndBadge)' == 'true' and '$(OS)' == 'Windows_NT' and '$(Architecture)' == 'x64' and '$(PgoInstrument)' != 'true'" />
|
2023-07-19 07:50:20 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)productCommit-*.json" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
2020-03-27 12:49:29 +00:00
|
|
|
<SdkAssetsToPublish Include="$(ArtifactsShippingPackagesDir)productCommit-*.txt" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
2019-07-24 20:17:25 +00:00
|
|
|
<SdkNonShippingAssetsToPublish Include="$(ArtifactsNonShippingPackagesDir)*.swr" />
|
2020-06-25 18:36:38 +00:00
|
|
|
<SdkNonShippingAssetsToPublish Include="$(ArtifactsNonShippingPackagesDir)*.msi" />
|
2020-06-30 16:13:04 +00:00
|
|
|
<SdkNonShippingAssetsToPublish Condition="'$(PublishBinariesAndBadge)' != 'false'" Include="$(ArtifactsNonShippingPackagesDir)*.tar.gz" />
|
2023-06-13 16:24:08 +00:00
|
|
|
<WixPacksToPublish Include="$(ArtifactsNonShippingPackagesDir)*.wixpack.zip" />
|
2020-06-30 16:13:04 +00:00
|
|
|
<SdkNonShippingAssetsToPublish Condition="'$(PublishBinariesAndBadge)' != 'false'" Include="$(ArtifactsNonShippingPackagesDir)*.zip" />
|
2023-06-13 16:24:08 +00:00
|
|
|
<!-- Remove wixpacks if not doing post-build signing, since they are not needed -->
|
|
|
|
<SdkNonShippingAssetsToPublish Remove="@(WixPacksToPublish)" Condition="'$(PostBuildSign)' != 'true'" />
|
2020-06-25 18:36:38 +00:00
|
|
|
<SdkNonShippingAssetsToPublish Include="$(ArtifactsNonShippingPackagesDir)*.pkg" />
|
2023-03-20 21:07:20 +00:00
|
|
|
<CheckSumsToPublish Include="$(ArtifactsShippingPackagesDir)*.sha512" />
|
2023-07-19 07:50:20 +00:00
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)productCommit-*.json.sha512" Condition=" '$(PublishBinariesAndBadge)' == 'false'" />
|
2023-03-20 21:07:20 +00:00
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)productCommit-*.txt.sha512" Condition=" '$(PublishBinariesAndBadge)' == 'false'" />
|
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)productVersion.txt.sha512" Condition=" '$(OS)' != 'Windows_NT' or '$(Architecture)' != 'x64'" />
|
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)sdk-productVersion.txt.sha512" Condition=" '$(OS)' != 'Windows_NT' or '$(Architecture)' != 'x64'" />
|
2024-01-23 22:47:28 +00:00
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)*.zip.sha512" Condition=" '$(PublishBinariesAndBadge)' == 'false' " />
|
|
|
|
<CheckSumsToPublish Remove="$(ArtifactsShippingPackagesDir)*.tar.gz.sha512" Condition=" '$(PublishBinariesAndBadge)' == 'false' " />
|
2018-12-19 20:53:08 +00:00
|
|
|
</ItemGroup>
|
|
|
|
|
2018-12-21 22:58:11 +00:00
|
|
|
<Target Name="PublishSdkAssetsAndChecksums"
|
2021-07-20 19:33:43 +00:00
|
|
|
BeforeTargets="Publish"
|
|
|
|
Condition="$(DotNetPublishUsingPipelines)">
|
2020-01-10 05:13:46 +00:00
|
|
|
<ReadLinesFromFile File="$(ArtifactsTmpDir)FullNugetVersion.version">
|
2024-01-23 22:47:28 +00:00
|
|
|
<Output TaskParameter="Lines" PropertyName="FullNugetVersion" />
|
2020-01-10 05:13:46 +00:00
|
|
|
</ReadLinesFromFile>
|
|
|
|
|
2018-12-20 00:08:49 +00:00
|
|
|
<ItemGroup>
|
2019-10-07 20:11:06 +00:00
|
|
|
<!-- Always publish blobs to a suffixed directory. -->
|
2019-06-26 20:55:25 +00:00
|
|
|
<SdkAssetsToPushToBlobFeed Include="@(SdkAssetsToPublish)">
|
2019-10-07 20:11:06 +00:00
|
|
|
<RelativeBlobPath>$(BlobStoragePartialRelativePath)/$(FullNugetVersion)/$([System.String]::Copy('%(Filename)%(Extension)'))</RelativeBlobPath>
|
2018-12-21 22:58:11 +00:00
|
|
|
</SdkAssetsToPushToBlobFeed>
|
|
|
|
|
2019-06-26 20:55:25 +00:00
|
|
|
<SdkAssetsToPushToBlobFeed Include="@(SdkNonShippingAssetsToPublish)">
|
2019-10-07 20:11:06 +00:00
|
|
|
<RelativeBlobPath>$(BlobStoragePartialRelativePath)/$(FullNugetVersion)/$([System.String]::Copy('%(Filename)%(Extension)'))</RelativeBlobPath>
|
2019-06-26 20:55:25 +00:00
|
|
|
<ManifestArtifactData>NonShipping=true</ManifestArtifactData>
|
2018-12-21 22:58:11 +00:00
|
|
|
</SdkAssetsToPushToBlobFeed>
|
|
|
|
|
2019-06-26 20:55:25 +00:00
|
|
|
<ChecksumsToPushToBlobFeed Include="@(CheckSumsToPublish)">
|
2019-10-07 20:11:06 +00:00
|
|
|
<RelativeBlobPath>$(BlobStoragePartialRelativePath)/$(FullNugetVersion)/$([System.String]::Copy('%(Filename)%(Extension)'))</RelativeBlobPath>
|
2018-12-21 22:58:11 +00:00
|
|
|
</ChecksumsToPushToBlobFeed>
|
2018-12-20 00:08:49 +00:00
|
|
|
</ItemGroup>
|
2021-03-25 05:49:28 +00:00
|
|
|
|
2020-12-01 14:56:48 +00:00
|
|
|
<ItemGroup Condition="'$(PostBuildSign)' == 'true'">
|
|
|
|
<ItemsToSignPostBuildWithPaths Include="$(ArtifactsShippingPackagesDir)*.zip" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
|
|
|
<ItemsToSignPostBuildWithPaths Include="$(ArtifactsShippingPackagesDir)*.exe" />
|
|
|
|
<ItemsToSignPostBuildWithPaths Include="$(ArtifactsShippingPackagesDir)*.msi" />
|
|
|
|
<ItemsToSignPostBuildWithPaths Include="$(ArtifactsNonShippingPackagesDir)*.msi" />
|
|
|
|
<ItemsToSignPostBuildWithPaths Include="$(ArtifactsNonShippingPackagesDir)*.zip" Condition=" '$(PublishBinariesAndBadge)' == 'true' " />
|
|
|
|
<ItemsToSignPostBuild Remove="@(ItemsToSignPostBuild)" />
|
|
|
|
<ItemsToSignPostBuild Include="@(ItemsToSignPostBuildWithPaths->'%(Filename)%(Extension)')" />
|
|
|
|
</ItemGroup>
|
2018-12-20 00:08:49 +00:00
|
|
|
|
2020-10-14 21:55:38 +00:00
|
|
|
<PropertyGroup>
|
|
|
|
<IsStableBuild>false</IsStableBuild>
|
|
|
|
<IsStableBuild Condition="'$(DotNetFinalVersionKind)' == 'release'">true</IsStableBuild>
|
|
|
|
</PropertyGroup>
|
|
|
|
|
2024-03-15 14:48:15 +00:00
|
|
|
<PushToBuildStorage
|
2020-10-14 21:55:38 +00:00
|
|
|
AzureDevOpsCollectionUri="$(SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)"
|
|
|
|
AzureDevOpsProject="$(SYSTEM_TEAMPROJECT)"
|
|
|
|
AzureDevOpsBuildId="$(BUILD_BUILDID)"
|
|
|
|
ItemsToPush="@(SdkAssetsToPushToBlobFeed);@(ChecksumsToPushToBlobFeed)"
|
|
|
|
ItemsToSign="@(ItemsToSignPostBuild)"
|
|
|
|
CertificatesSignInfo="@(CertificatesSignInfo)"
|
|
|
|
StrongNameSignInfo="@(StrongNameSignInfo)"
|
|
|
|
FileSignInfo="@(FileSignInfo)"
|
|
|
|
FileExtensionSignInfo="@(FileExtensionSignInfo)"
|
2020-07-15 20:32:28 +00:00
|
|
|
ManifestBuildData="@(ManifestBuildData)"
|
2020-10-14 21:55:38 +00:00
|
|
|
ManifestRepoName="$(BUILD_REPOSITORY_NAME)"
|
2018-12-21 22:58:11 +00:00
|
|
|
ManifestBranch="$(BUILD_SOURCEBRANCH)"
|
|
|
|
ManifestBuildId="$(BUILD_BUILDNUMBER)"
|
|
|
|
ManifestCommit="$(BUILD_SOURCEVERSION)"
|
2020-08-03 19:18:09 +00:00
|
|
|
AssetManifestPath="$(InstallersAssetManifestFilePath)"
|
2020-09-17 17:05:22 +00:00
|
|
|
PublishFlatContainer="true"
|
2020-10-14 21:55:38 +00:00
|
|
|
IsStableBuild="$(IsStableBuild)"
|
2024-03-15 14:48:15 +00:00
|
|
|
PublishingVersion="3"
|
|
|
|
PushToLocalStorage="$(PushToLocalStorage)"
|
|
|
|
AssetsLocalStorageDir="$(SourceBuiltAssetsDir)"
|
|
|
|
ShippingPackagesLocalStorageDir="$(SourceBuiltShippingPackagesDir)"
|
|
|
|
NonShippingPackagesLocalStorageDir="$(SourceBuiltNonShippingPackagesDir)"
|
|
|
|
AssetManifestsLocalStorageDir="$(SourceBuiltAssetManifestsDir)" />
|
2018-12-21 22:58:11 +00:00
|
|
|
</Target>
|
2024-01-23 22:47:28 +00:00
|
|
|
|
2018-12-19 20:53:08 +00:00
|
|
|
</Project>
|