Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
8fbdd4e
Drop compound-* from onebranch step files for my own sanity
benrr101 Mar 18, 2026
81e7331
Consolidate compound-publish-symbols and publish-symbols-step into pu…
benrr101 Mar 18, 2026
e41b7db
Rename code-analyze-step to roslyn-analyzers-csproj-step (for later c…
benrr101 Mar 18, 2026
29c59b3
Add mds-specific job/steps
benrr101 Mar 18, 2026
53a0757
Swap in build-signed-mds-package-job.yml for build-signed-sqlclient-p…
benrr101 Mar 18, 2026
42a27e7
Remove dead job/steps
benrr101 Mar 18, 2026
d08576d
Fix folder path for DLL signing steps.
benrr101 Mar 19, 2026
10683e9
Addressing comments, round 1
benrr101 Mar 20, 2026
75db0f3
Addressing comments, round 2
benrr101 Mar 23, 2026
236b33f
Add the new parameters to the csproj build job
benrr101 Mar 23, 2026
bee83b9
Use variables artifact names in release stage
benrr101 Mar 23, 2026
0f4265e
Two more quick fixes as per comments
benrr101 Mar 23, 2026
58fd92b
ESRP searches recursively?
benrr101 Mar 24, 2026
694bb7a
Fine, I give up, I will put the package output in PACK_OUTPUT.
benrr101 Mar 24, 2026
1a64bda
Reinstate job-level apiscan parameter assignment
benrr101 Mar 24, 2026
c84e4d3
Wire isOfficial to MDS build job after rebase
benrr101 Mar 25, 2026
c5838eb
Rework versioning logic and move package version calculation (outside…
benrr101 Mar 26, 2026
2fb3012
Add build number to PackMds target call in official pipeline
benrr101 Mar 26, 2026
a3b3de0
Remove assembly "file" versions as it is not necessary.
benrr101 Mar 27, 2026
820af17
CI pipelines to automatic versioning system.
benrr101 Mar 27, 2026
f953d78
Merge branch 'main' into dev/russellben/common/official-mds-build2
benrr101 Mar 27, 2026
f356f00
Rework the package version for CI to match the package version for On…
benrr101 Mar 27, 2026
7d000a2
Assembly version = major.0.0.0
benrr101 Mar 30, 2026
96bd8aa
Comment that Malcolm is holding the build up for.
benrr101 Mar 30, 2026
967206a
Can I please be done with this PR now?
benrr101 Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 72 additions & 6 deletions build2.proj
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,25 @@
-p:BuildNumber=$(BuildNumber)
</BuildNumberArgument>

<!--
BuildSuffix
Aplies to: BuildMds*, PackMds
Description: Suffix to add at the end of the package version to indicate the generated
version is a pre-release.
For local developer builds, this does not need to be set. If a specific
package version is needed, specify PackageVersionMds. Otherwise, the
generated package version will eg, 1.2.3.dev.
For automated builds, this should only be specified on pre-release builds, ie
PR/CI pipeline runs. For official, production-ready builds, omit this field
and include a BuildNumber.
Default value: [blank]
Example: prbuild
-->
<BuildSuffix Condition="'$(BuildSuffix)' == ''" />
<BuildSuffixArgument Condition="'$(BuildSuffix)' != ''">
-p:BuildSuffix=$(BuildSuffix)
</BuildSuffixArgument>

<!--
Configuration
Applies to: All targets
Expand Down Expand Up @@ -56,6 +75,27 @@
-->
<NugetPath Condition="'$(NugetPath)' == ''">nuget</NugetPath>

<!--
PackBuild
Applies to: PackMds
Description: Whether the PackMds target should run BuildMds before packing. If true,
BuildMds will be called as a dependency of PackMds. If false, it will not.
For most developers, building immediately before packing is the norm, and
this functionality is added for convenience. However, for official builds,
binaries are signed between building and packing, so building immediately
before packing would clobber the signed binaries.
Default value: true
Allowed values: (true|false)
-->
<!--
@TODO: This is kinda hacky, ideally we can pack via dotnet pack, which will handle building,
and can thus be switched off by passing -no-build. However, we're not there because we need
to build multiple projects before packaging, and thus need to use nuget. So, until then we
will switch off dependency building dynamically building the target dependencies
-->
<PackBuild Condition="'$(PackBuild)' == ''">true</PackBuild>
<PackMdsDependsOn Condition="'$(PackBuild.ToLower())' == 'true'">BuildMds</PackMdsDependsOn>

<!--
PackageVersionAbstractions
Applies to: BuildMds, BuildMdsRef, BuildMdsUnix, BuildMdsWindows
Expand Down Expand Up @@ -291,7 +331,8 @@

<!-- Versioning arguments -->
$(BuildNumberArgument)
$(PacakgeVersionMdsArgument)
$(BuildSuffixArgument)
$(PackageVersionMdsArgument)

<!-- Reference Type Arguments -->
$(ReferenceTypeArgument)
Expand All @@ -316,7 +357,8 @@

<!-- Versioning arguments -->
$(BuildNumberArgument)
$(PacakgeVersionMdsArgument)
$(BuildSuffixArgument)
$(PackageVersionMdsArgument)

<!-- Reference type arguments -->
$(ReferenceTypeArgument)
Expand All @@ -341,6 +383,7 @@

<!-- Versioning arguments -->
$(BuildNumberArgument)
$(BuildSuffixArgument)
$(PackageVersionMdsArgument)

<!-- Reference Type Arguments -->
Expand All @@ -367,6 +410,7 @@

<!-- Versioning Arguments -->
$(BuildNumberArgument)
$(BuildSuffixArgument)
$(PackageVersionMdsArgument)

<!-- Reference Type Arguments -->
Expand All @@ -388,13 +432,11 @@
automatically build before packaging. Instead, we rely on target dependency to handle building
the same binaries that will be packaged.
-->
<Target Name="PackMds" DependsOnTargets="BuildMds">
<Target Name="PackMds" DependsOnTargets="$(PackMdsDependsOn)">
<Error Text="PackageVersionAbstractions must be set!"
Condition="'$(PackageVersionAbstractions)' == ''" />
<Error Text="PackageVersionLogging must be set!"
Condition="'$(PackageVersionLogging)' == ''" />
<Error Text="PackageVersionMds must be set !"
Condition="'$(PackageVersionMds)' == ''" />

<PropertyGroup>
<GitCommand>
Expand All @@ -408,13 +450,37 @@
<Output TaskParameter="ConsoleOutput" PropertyName="CommitId" />
</Exec>

<!-- This is a bit hacky, and can be (@TODO:) removed once packaging is done w/o a nuspec from dotnet -->
<PropertyGroup>
<GetMdsPackageVersionCommand>
"$(DotnetPath)dotnet" msbuild "$(MdsProjectPath)"
-nologo
-verbosity:quiet
-getProperty:MdsPackageVersion

<!-- Versioning arguments -->
$(BuildNumberArgument)
$(BuildSuffixArgument)
$(PackageVersionMdsArgument)
</GetMdsPackageVersionCommand>
<!-- Convert more than one whitespace character into one space -->
<GetMdsPackageVersionCommand>$([System.Text.RegularExpressions.Regex]::Replace($(GetMdsPackageVersionCommand), "\s+", " "))</GetMdsPackageVersionCommand>
</PropertyGroup>
<Message Text=">>> Evaluating MDS package version via command: $(GetMdsPackageVersionCommand)" />
<Exec ConsoleToMsBuild="true" Command="$(GetMdsPackageVersionCommand)">
<Output TaskParameter="ConsoleOutput" PropertyName="_EvaluatedMdsPackageVersion" />
</Exec>
<Error Text="Failed to evaluate MdsPackageVersion for PackMds."
Condition="'$(_EvaluatedMdsPackageVersion)' == ''" />

<PropertyGroup>
<_EvaluatedMdsPackageVersion>$([System.Text.RegularExpressions.Regex]::Replace($(_EvaluatedMdsPackageVersion), "\s", ""))</_EvaluatedMdsPackageVersion>
<CommitId>$([System.Text.RegularExpressions.Regex]::Replace($(CommitId), "\s", ""))</CommitId>
<NuGetCommand>
"$(NugetPath)" pack "$(MdsNuspecPath)"
-Symbols
-SymbolPackageFormat snupkg
-Version "$(PackageVersionMds)"
-Version "$(_EvaluatedMdsPackageVersion)"
-OutputDirectory "$(MdsArtifactRoot)/$(ReferenceType)-$(Configuration)"
-properties "COMMITID=$(CommitId);Configuration=$(Configuration);ReferenceType=$(ReferenceType);AbstractionsPackageVersion=$(PackageVersionAbstractions);LoggingPackageVersion=$(PackageVersionLogging)"
</NuGetCommand>
Expand Down Expand Up @@ -487,7 +553,7 @@
<DotnetCommand>$([System.Text.RegularExpressions.Regex]::Replace($(DotnetCommand), "\s+", " "))</DotnetCommand>
</PropertyGroup>
<Message Text=">>> Running manual tests for MDS via command: $(DotnetCommand)" />
<Exec ConsoleToMsBuild="true" Command="$(DotnetCommand)" />

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Sql22_Named_Instance net9_0_AnyCPU_NativeSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net9.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net9.0-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code -2147450725.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Azure_Sql net8_0_AnyCPU_NativeSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net8.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Azure_Sql net462_AnyCPU_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net462 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net462-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Azure_Sql net9_0_AnyCPU_ManagedSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net9.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net9.0-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win22_Azure_Sql net8_0_AnyCPU_ManagedSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net8.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Project (Win11_Azure_Sql net9_0_AnyCPU_NativeSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net9.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net9.0-3" -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_Sql net462_AnyCPU_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net462 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net462-3" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Azure_Sql net8_0_AnyCPU_ManagedSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net8.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-3" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win11_Azure_Sql net8_0_AnyCPU_NativeSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net8.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-3" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win11_Azure_Sql net8_0_AnyCPU_ManagedSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net8.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-3" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win11_ARM64_Azure_Sql net9_0_AnyCPU_ManagedSNI_3)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --filter "category=flaky" -f net9.0 -p:TestSet="3" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net9.0-3" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.

Check failure on line 556 in build2.proj

View check run for this annotation

Azure Pipelines / PR-SqlClient-Package (Win22_Sql19 net8_0_AnyCPU_ManagedSNI_2)

build2.proj#L556

build2.proj(556,5): Error MSB3073: The command " "dotnet" test "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTests.csproj" -p:Configuration=Debug --blame-hang --blame-hang-dump-type full --blame-hang-timeout 10m --collect "Code coverage" --settings "D:\a\_work\1\s\src\..\src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/CodeCoverage.runsettings" --filter "category!=failing&category!=flaky" -f net8.0 -p:TestSet="2" --results-directory "TestResults" --logger:"trx;LogFilePrefix=MdsManual-Windows_NT-net8.0-2" -p:ReferenceType=Package -p:AbstractionsPackageVersion=1.0.0.09001-ci -p:LoggingPackageVersion=1.0.0.09001-ci -p:MdsPackageVersion=7.0.0-ci09001 " exited with code 1.
</Target>

<!-- TestMdsUnit: Runs unit tests for MDS -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,9 @@ parameters:
type: string
default: $(loggingPackageVersion)

# Necessary to build AKV Provider when referenceType is Package. Ignored when referenceType is Project.
# Package version to use for MDS package. Because we explicitly provide this version, the
# assembly version will be generated based on this package version and the build number.
# See MdsVersions.props for details on how this works.
- name: mdsPackageVersion
type: string
default: $(mdsPackageVersion)
Expand All @@ -84,7 +86,7 @@ steps:
msbuildArguments:
-t:BuildMds
-p:ReferenceType=${{ parameters.referenceType }}
-p:BuildNumber=${{ parameters.buildNumber }}
-p:BuildNumber=${{ parameters.assemblyBuildNumber }}
-p:PackageVersionAbstractions=${{ parameters.abstractionsPackageVersion }}
-p:PackageVersionLogging=${{ parameters.loggingPackageVersion }}
-p:PackageVersionMds=${{ parameters.mdsPackageVersion }}
Expand Down
10 changes: 5 additions & 5 deletions eng/pipelines/libraries/ci-build-variables.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,13 +54,13 @@ variables:
- name: loggingPackageVersion
value: 1.0.0.$(Build.BuildNumber)-ci

# MDS library assembly file version
- name: mdsAssemblyFileVersion
value: 7.0.0.$(assemblyBuildNumber)

# MDS library NuGet package version
# NOTE: This differs from the other structures! MdsVersions.props will deconstruct a provided
# package version and build an assembly version from it. If the build number is included
# before the "-" the build number will be appended again, generating an invalid file version.
# @TODO: This is a band-aid to ensure that CI builds until we can centralize versioning.
- name: mdsPackageVersion
value: 7.0.0.$(Build.BuildNumber)-ci
value: 7.0.0-ci$(AssemblyBuildNumber)

# Local NuGet feed directory where downloaded pipeline artifacts are placed.
# NuGet.config references this as a local package source for restore.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ jobs:
- template: /eng/pipelines/steps/install-dotnet.yml@self

# Perform Roslyn analysis before building, since this step will clobber build output.
- template: /eng/pipelines/onebranch/steps/code-analyze-step.yml@self
- template: /eng/pipelines/onebranch/steps/roslyn-analyzers-csproj-step.yml@self
parameters:
msBuildArguments: >-
-t:$(buildTarget)
Expand All @@ -143,15 +143,15 @@ jobs:
${{ parameters.versionProperties }}

# Build the package, producing DLLs only (no NuGet package yet).
- template: /eng/pipelines/onebranch/steps/compound-build-csproj-step.yml@self
- template: /eng/pipelines/onebranch/steps/build-csproj-step.yml@self
parameters:
buildTarget: $(buildTarget)
buildConfiguration: ${{ parameters.buildConfiguration }}
versionProperties: ${{ parameters.versionProperties }}

- ${{ if eq(parameters.isOfficial, true) }}:
# ESRP sign the DLLs.
- template: /eng/pipelines/onebranch/steps/compound-esrp-dll-signing-step.yml@self
- template: /eng/pipelines/onebranch/steps/esrp-dll-signing-step.yml@self
parameters:
appRegistrationClientId: ${{ parameters.appRegistrationClientId }}
appRegistrationTenantId: ${{ parameters.appRegistrationTenantId }}
Expand Down Expand Up @@ -182,27 +182,38 @@ jobs:
flattenFolders: false

# Pack the signed DLLs into NuGet package (NoBuild=true).
- template: /eng/pipelines/onebranch/steps/compound-pack-csproj-step.yml@self
- template: /eng/pipelines/onebranch/steps/pack-csproj-step.yml@self
parameters:
packTarget: $(packTarget)
buildConfiguration: ${{ parameters.buildConfiguration }}
versionProperties: ${{ parameters.versionProperties }}

- ${{ if eq(parameters.isOfficial, true) }}:
# ESRP sign the NuGet package.
- template: /eng/pipelines/onebranch/steps/compound-esrp-nuget-signing-step.yml@self
- template: /eng/pipelines/onebranch/steps/esrp-nuget-signing-step.yml@self
parameters:
appRegistrationClientId: ${{ parameters.appRegistrationClientId }}
appRegistrationTenantId: ${{ parameters.appRegistrationTenantId }}
authAkvName: ${{ parameters.authAkvName }}
authSignCertName: ${{ parameters.authSignCertName }}
esrpClientId: ${{ parameters.esrpClientId }}
esrpConnectedServiceName: ${{ parameters.esrpConnectedServiceName }}
pattern: ${{ parameters.packageFullName }}.*nupkg
searchPath: $(PACK_OUTPUT)
searchPattern: '${{ parameters.packageFullName }}.*nupkg'

# Publish symbols to servers
# @TODO: Get these parameters from variables/libraries
- ${{ if eq(parameters.publishSymbols, true) }}:
- template: /eng/pipelines/onebranch/steps/publish-symbols-step.yml@self
parameters:
packageFullName: ${{ parameters.packageFullName }}
packageVersion: ${{ parameters.packageVersion }}
artifactName: '${{ parameters.packageFullName }}_symbols_$(System.TeamProject)_$(Build.Repository.Name)_$(Build.SourceBranchName)_${{ parameters.packageVersion }}_$(System.TimelineId)'
azureSubscription: 'Symbols publishing Workload Identity federation service-ADO.Net'
packageName: '${{ parameters.packageFullName }}'
publishProjectName: 'Microsoft.Data.SqlClient.SNI' # This is used for all SqlClient packages. Don't know why, but it is.
publishServer: '$(SymbolServer)'
publishToInternal: 'true'
publishToPublic: 'true'
publishTokenUri: '$(SymbolTokenUri)'
searchPattern: '**/${{ parameters.packageFullName }}*.pdb'
uploadAccount: 'SqlClientDrivers'
version: '${{ parameters.packageVersion }}'
Loading
Loading