Skip to content

Commit aea5ade

Browse files
authored
Added CI test stages for SQL Server 16 and 17. (#4087)
1 parent ab95f6f commit aea5ade

3 files changed

Lines changed: 66 additions & 0 deletions

File tree

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

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,12 @@ parameters:
9393
type: boolean
9494
default: true
9595

96+
# If true, run manual tests against legacy SQL Server versions (2016, 2017).
97+
# Enabled for CI pipelines; disabled for PR pipelines to keep validation fast.
98+
- name: runLegacySqlTests
99+
type: boolean
100+
default: true
101+
96102
- name: dotnetVerbosity
97103
type: string
98104
default: normal
@@ -289,6 +295,62 @@ stages:
289295
# Configuration of test jobs. Each entry in this object will become a test job, and the
290296
# properties of each entry will be supplied as parameters to the test job template.
291297
testConfigurations:
298+
# SQL Server 2016 and 2017 on Windows Server 2022 (x64 only).
299+
# x86 testing is intentionally skipped for these legacy SQL versions
300+
# because x86 support is already validated via SQL 2019 and 2022 images.
301+
${{ if eq(parameters.runLegacySqlTests, true) }}:
302+
# Windows Server 22 with local SQL Server 2016, x64 build platform.
303+
windows_sql_16_x64:
304+
pool: ${{parameters.defaultPoolName }}
305+
images:
306+
Win22_Sql16: ADO-MMS22-SQL16
307+
TargetFrameworks: ${{parameters.targetFrameworks }}
308+
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
309+
buildPlatforms: ${{parameters.buildPlatforms }}
310+
testSets: ${{parameters.testSets }}
311+
useManagedSNI: ${{parameters.useManagedSNI }}
312+
configSqlFor: local
313+
operatingSystem: Windows
314+
configProperties:
315+
TCPConnectionString: $(SQL_TCP_CONN_STRING)
316+
NPConnectionString: $(SQL_NP_CONN_STRING)
317+
AzureKeyVaultUrl: $(AzureKeyVaultUrl)
318+
AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
319+
SupportsIntegratedSecurity: true
320+
UserManagedIdentityClientId: $(UserManagedIdentityClientId)
321+
FileStreamDirectory: $(FileStreamDirectory)
322+
LocalDbAppName: $(LocalDbAppName)
323+
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
324+
AliasName: $(SQLAliasName)
325+
SQLRootPath: $(SQL16RootPath)
326+
enableLocalDB: true
327+
328+
# Windows Server 22 with local SQL Server 2017, x64 build platform.
329+
windows_sql_17_x64:
330+
pool: ${{parameters.defaultPoolName }}
331+
images:
332+
Win22_Sql17: ADO-MMS22-SQL17
333+
TargetFrameworks: ${{parameters.targetFrameworks }}
334+
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
335+
buildPlatforms: ${{parameters.buildPlatforms }}
336+
testSets: ${{parameters.testSets }}
337+
useManagedSNI: ${{parameters.useManagedSNI }}
338+
configSqlFor: local
339+
operatingSystem: Windows
340+
configProperties:
341+
TCPConnectionString: $(SQL_TCP_CONN_STRING)
342+
NPConnectionString: $(SQL_NP_CONN_STRING)
343+
AzureKeyVaultUrl: $(AzureKeyVaultUrl)
344+
AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
345+
SupportsIntegratedSecurity: true
346+
UserManagedIdentityClientId: $(UserManagedIdentityClientId)
347+
FileStreamDirectory: $(FileStreamDirectory)
348+
LocalDbAppName: $(LocalDbAppName)
349+
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
350+
AliasName: $(SQLAliasName)
351+
SQLRootPath: $(SQL17RootPath)
352+
enableLocalDB: true
353+
292354
# Windows Server 22 with local SQL Server 2019, x64 build platform.
293355
windows_sql_19_x64:
294356
pool: ${{parameters.defaultPoolName }}

eng/pipelines/sqlclient-pr-package-ref-pipeline.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ extends:
139139
testJobTimeout: ${{ parameters.testJobTimeout }}
140140
testSets: ${{ parameters.testSets }}
141141
useManagedSNI: ${{ parameters.useManagedSNI }}
142+
# Legacy SQL Server tests (2016/2017) run in CI only, not on PRs.
143+
runLegacySqlTests: false
142144
# Don't run the AE tests in Debug mode; they rarely succeed.
143145
${{ if eq(parameters.buildConfiguration, 'Debug') }}:
144146
runAlwaysEncryptedTests: false

eng/pipelines/sqlclient-pr-project-ref-pipeline.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ extends:
139139
testJobTimeout: ${{ parameters.testJobTimeout }}
140140
testSets: ${{ parameters.testSets }}
141141
useManagedSNI: ${{ parameters.useManagedSNI }}
142+
# Legacy SQL Server tests (2016/2017) run in CI only, not on PRs.
143+
runLegacySqlTests: false
142144
# Don't run the AE tests in Debug mode; they rarely succeed.
143145
${{ if eq(parameters.buildConfiguration, 'Debug') }}:
144146
runAlwaysEncryptedTests: false

0 commit comments

Comments
 (0)