Skip to content

Commit 02ec440

Browse files
committed
Download SqlServer artifacts in Azure Package test jobs
The Azure test jobs restore SqlClient as a NuGet package, which has a transitive dependency on Microsoft.SqlServer.Server. In Package mode the CI-versioned SqlServer package (e.g. 1.0.0-ci13309) only exists as a pipeline artifact, so we must download it to packages/ before restore. Add sqlServerArtifactsName parameter and DownloadPipelineArtifact step to test-azure-package-ci-job.yml, pass it through the stage template, and add build_sqlserver_package_stage to the Azure stage dependencies in ci-core.
1 parent bccd9c5 commit 02ec440

3 files changed

Lines changed: 34 additions & 1 deletion

File tree

eng/pipelines/dotnet-sqlclient-ci-core.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,16 +206,18 @@ stages:
206206
buildConfiguration: ${{ parameters.buildConfiguration }}
207207
debug: ${{ parameters.debug }}
208208
# When building via packages, we must depend on the Abstractions, Logging,
209-
# and MDS packages.
209+
# SqlServer, and MDS packages.
210210
${{ if eq(parameters.referenceType, 'Package') }}:
211211
additionalDependsOn:
212212
- build_abstractions_package_stage
213213
- build_logging_package_stage
214+
- build_sqlserver_package_stage
214215
- build_sqlclient_package_stage
215216
dotnetVerbosity: ${{ parameters.dotnetVerbosity }}
216217
mdsArtifactsName: $(mdsArtifactsName)
217218
mdsPackageVersion: $(mdsPackageVersion)
218219
referenceType: ${{ parameters.referenceType }}
220+
sqlServerArtifactsName: $(sqlServerArtifactsName)
219221

220222
# Verify that all NuGet packages comply with Microsoft metadata requirements.
221223
# This runs on a Windows agent after all packages have been built and

eng/pipelines/jobs/test-azure-package-ci-job.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@ parameters:
7979
- name: mdsPackageVersion
8080
type: string
8181

82+
# The name of the SqlServer pipeline artifacts to download.
83+
#
84+
# This is used when the referenceType is 'Package'. MDS depends on
85+
# SqlServer.Server, so the package must be available for transitive restore.
86+
- name: sqlServerArtifactsName
87+
type: string
88+
default: SqlServer.Artifacts
89+
8290
# The list of .NET Framework runtimes to test against.
8391
- name: netFrameworkRuntimes
8492
type: object
@@ -208,6 +216,16 @@ jobs:
208216
artifactName: ${{ parameters.mdsArtifactsName }}
209217
targetPath: $(Build.SourcesDirectory)/packages
210218

219+
# Download the SqlServer package artifacts into packages/.
220+
#
221+
# MDS depends on SqlServer.Server, so the package must be available for
222+
# transitive restore.
223+
- task: DownloadPipelineArtifact@2
224+
displayName: Download SqlServer Package Artifacts
225+
inputs:
226+
artifactName: ${{ parameters.sqlServerArtifactsName }}
227+
targetPath: $(Build.SourcesDirectory)/packages
228+
211229
# Install the .NET SDK and Runtimes.
212230
- template: /eng/pipelines/steps/install-dotnet.yml@self
213231
parameters:

eng/pipelines/stages/build-azure-package-ci-stage.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,14 @@ parameters:
114114
- name: mdsPackageVersion
115115
type: string
116116

117+
# The name of the SqlServer pipeline artifacts to download.
118+
#
119+
# This is used when the referenceType is 'Package'. MDS depends on
120+
# SqlServer.Server, so the package must be available for transitive restore.
121+
- name: sqlServerArtifactsName
122+
type: string
123+
default: SqlServer.Artifacts
124+
117125
# The C# project reference type to use when building and packing the packages.
118126
- name: referenceType
119127
type: string
@@ -154,6 +162,7 @@ stages:
154162
jobNameSuffix: linux
155163
mdsArtifactsName: ${{ parameters.mdsArtifactsName }}
156164
mdsPackageVersion: ${{ parameters.mdsPackageVersion }}
165+
sqlServerArtifactsName: ${{ parameters.sqlServerArtifactsName }}
157166
netFrameworkRuntimes: []
158167
netRuntimes: [net8.0, net9.0, net10.0]
159168
poolName: ${{ parameters.azurePoolName }}
@@ -172,6 +181,7 @@ stages:
172181
jobNameSuffix: linux_integration
173182
mdsArtifactsName: ${{ parameters.mdsArtifactsName }}
174183
mdsPackageVersion: ${{ parameters.mdsPackageVersion }}
184+
sqlServerArtifactsName: ${{ parameters.sqlServerArtifactsName }}
175185
netFrameworkRuntimes: []
176186
netRuntimes: [net8.0, net9.0, net10.0]
177187
poolName: ${{ parameters.adoPoolName }}
@@ -199,6 +209,7 @@ stages:
199209
jobNameSuffix: windows
200210
mdsArtifactsName: ${{ parameters.mdsArtifactsName }}
201211
mdsPackageVersion: ${{ parameters.mdsPackageVersion }}
212+
sqlServerArtifactsName: ${{ parameters.sqlServerArtifactsName }}
202213
netFrameworkRuntimes: [net462]
203214
netRuntimes: [net8.0, net9.0, net10.0]
204215
poolName: ${{ parameters.azurePoolName }}
@@ -217,6 +228,7 @@ stages:
217228
jobNameSuffix: windows_integration
218229
mdsArtifactsName: ${{ parameters.mdsArtifactsName }}
219230
mdsPackageVersion: ${{ parameters.mdsPackageVersion }}
231+
sqlServerArtifactsName: ${{ parameters.sqlServerArtifactsName }}
220232
netFrameworkRuntimes: [net462]
221233
netRuntimes: [net8.0, net9.0, net10.0]
222234
poolName: ${{ parameters.adoPoolName }}
@@ -253,6 +265,7 @@ stages:
253265
jobNameSuffix: macos
254266
mdsArtifactsName: ${{ parameters.mdsArtifactsName }}
255267
mdsPackageVersion: ${{ parameters.mdsPackageVersion }}
268+
sqlServerArtifactsName: ${{ parameters.sqlServerArtifactsName }}
256269
netFrameworkRuntimes: []
257270
netRuntimes: [net8.0, net9.0, net10.0]
258271
poolName: ${{ parameters.azurePoolName }}

0 commit comments

Comments
 (0)