Skip to content

Commit ab14724

Browse files
committed
Make InstanceId parameter mandatory in Complete-SqlDscImage and update related tests
1 parent c61024c commit ab14724

File tree

5 files changed

+17
-4
lines changed

5 files changed

+17
-4
lines changed

source/Private/Invoke-SetupAction.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -712,7 +712,7 @@ function Invoke-SetupAction
712712
[Parameter(ParameterSetName = 'Install')]
713713
[Parameter(ParameterSetName = 'InstallRole')]
714714
[Parameter(ParameterSetName = 'PrepareImage', Mandatory = $true)]
715-
[Parameter(ParameterSetName = 'CompleteImage')]
715+
[Parameter(ParameterSetName = 'CompleteImage', Mandatory = $true)]
716716
[Parameter(ParameterSetName = 'Upgrade')]
717717
[Parameter(ParameterSetName = 'InstallFailoverCluster')]
718718
[Parameter(ParameterSetName = 'PrepareFailoverCluster')]

source/Public/Complete-SqlDscImage.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ function Complete-SqlDscImage
194194
[System.Management.Automation.SwitchParameter]
195195
$Enu,
196196

197-
[Parameter()]
197+
[Parameter(Mandatory = $true)]
198198
[System.String]
199199
$InstanceId,
200200

tests/Integration/Commands/Complete-SqlDscImage.Integration.Tests.ps1

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ Describe 'Complete-SqlDscImage' -Tag @('Integration_SQL2017', 'Integration_SQL20
4444
AcceptLicensingTerms = $true
4545
InstanceName = 'DSCSQLTEST'
4646
InstanceId = 'DSCSQLTEST'
47+
SqlSvcAccount = '{0}\svc-SqlPrimary' -f $computerName
48+
SqlSvcPassword = ConvertTo-SecureString -String 'yig-C^Equ3' -AsPlainText -Force
4749
MediaPath = $env:IsoDrivePath
4850
Verbose = $true
4951
ErrorAction = 'Stop'
@@ -140,6 +142,11 @@ Describe 'Complete-SqlDscImage' -Tag @('Integration_SQL2017', 'Integration_SQL20
140142
AcceptLicensingTerms = $true
141143
InstanceName = 'DSCSQLTEST'
142144
InstanceId = 'DSCSQLTEST'
145+
SqlSvcAccount = '{0}\svc-SqlPrimary' -f $computerName
146+
SqlSvcPassword = ConvertTo-SecureString -String 'yig-C^Equ3' -AsPlainText -Force
147+
SqlSysAdminAccounts = @(
148+
('{0}\SqlAdmin' -f $computerName)
149+
)
143150
InstallSqlDataDir = 'C:\Program Files\Microsoft SQL Server\MSSQL\Data'
144151
SqlBackupDir = 'C:\Program Files\Microsoft SQL Server\MSSQL\Backup'
145152
SqlTempDbDir = 'C:\Program Files\Microsoft SQL Server\MSSQL\Data'

tests/Unit/Private/Invoke-SetupAction.Tests.ps1

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ Describe 'Invoke-SetupAction' -Tag 'Private' {
8282
@{
8383
MockParameterSetName = 'CompleteImage'
8484
# cSpell: disable-next
85-
MockExpectedParameters = '-CompleteImage -AcceptLicensingTerms -MediaPath <string> [-InstanceName <string>] [-Enu] [-InstanceId <string>] [-PBEngSvcAccount <string>] [-PBEngSvcPassword <securestring>] [-PBEngSvcStartupType <string>] [-PBStartPortRange <ushort>] [-PBEndPortRange <ushort>] [-PBScaleOut] [-ProductKey <string>] [-AgtSvcAccount <string>] [-AgtSvcPassword <securestring>] [-AgtSvcStartupType <string>] [-BrowserSvcStartupType <string>] [-EnableRanU] [-InstallSqlDataDir <string>] [-SqlBackupDir <string>] [-SecurityMode <string>] [-SAPwd <securestring>] [-SqlCollation <string>] [-SqlSvcAccount <string>] [-SqlSvcPassword <securestring>] [-SqlSvcStartupType <string>] [-SqlSysAdminAccounts <string[]>] [-SqlTempDbDir <string>] [-SqlTempDbLogDir <string>] [-SqlTempDbFileCount <ushort>] [-SqlTempDbFileSize <ushort>] [-SqlTempDbFileGrowth <ushort>] [-SqlTempDbLogFileSize <ushort>] [-SqlTempDbLogFileGrowth <ushort>] [-SqlUserDbDir <string>] [-SqlUserDbLogDir <string>] [-FileStreamLevel <ushort>] [-FileStreamShareName <string>] [-NpEnabled] [-TcpEnabled] [-RsInstallMode <string>] [-RSSvcAccount <string>] [-RSSvcPassword <securestring>] [-RSSvcStartupType <string>] [-ProductCoveredBySA] [-Timeout <uint>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]'
85+
MockExpectedParameters = '-CompleteImage -AcceptLicensingTerms -MediaPath <string> -InstanceId <string> [-InstanceName <string>] [-Enu] [-PBEngSvcAccount <string>] [-PBEngSvcPassword <securestring>] [-PBEngSvcStartupType <string>] [-PBStartPortRange <ushort>] [-PBEndPortRange <ushort>] [-PBScaleOut] [-ProductKey <string>] [-AgtSvcAccount <string>] [-AgtSvcPassword <securestring>] [-AgtSvcStartupType <string>] [-BrowserSvcStartupType <string>] [-EnableRanU] [-InstallSqlDataDir <string>] [-SqlBackupDir <string>] [-SecurityMode <string>] [-SAPwd <securestring>] [-SqlCollation <string>] [-SqlSvcAccount <string>] [-SqlSvcPassword <securestring>] [-SqlSvcStartupType <string>] [-SqlSysAdminAccounts <string[]>] [-SqlTempDbDir <string>] [-SqlTempDbLogDir <string>] [-SqlTempDbFileCount <ushort>] [-SqlTempDbFileSize <ushort>] [-SqlTempDbFileGrowth <ushort>] [-SqlTempDbLogFileSize <ushort>] [-SqlTempDbLogFileGrowth <ushort>] [-SqlUserDbDir <string>] [-SqlUserDbLogDir <string>] [-FileStreamLevel <ushort>] [-FileStreamShareName <string>] [-NpEnabled] [-TcpEnabled] [-RsInstallMode <string>] [-RSSvcAccount <string>] [-RSSvcPassword <securestring>] [-RSSvcStartupType <string>] [-ProductCoveredBySA] [-Timeout <uint>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]'
8686
}
8787
@{
8888
MockParameterSetName = 'Upgrade'
@@ -3221,6 +3221,7 @@ Describe 'Invoke-SetupAction' -Tag 'Private' {
32213221
CompleteImage = $true
32223222
AcceptLicensingTerms = $true
32233223
MediaPath = '\SqlMedia'
3224+
InstanceId = 'MSSQLSERVER'
32243225
}
32253226
}
32263227
}
@@ -3277,6 +3278,7 @@ Describe 'Invoke-SetupAction' -Tag 'Private' {
32773278
CompleteImage = $true
32783279
AcceptLicensingTerms = $true
32793280
MediaPath = '\SqlMedia'
3281+
InstanceId = 'MSSQLSERVER'
32803282
Force = $true
32813283
PBStartPortRange = 16450
32823284
PBEndPortRange = 16460
@@ -3500,6 +3502,7 @@ Describe 'Invoke-SetupAction' -Tag 'Private' {
35003502
CompleteImage = $true
35013503
AcceptLicensingTerms = $true
35023504
MediaPath = '\SqlMedia'
3505+
InstanceId = 'MSSQLSERVER'
35033506
Force = $true
35043507
}
35053508
}

tests/Unit/Public/Complete-SqlDscImage.Tests.ps1

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Describe 'Complete-SqlDscImage' -Tag 'Public' {
5252
@{
5353
MockParameterSetName = '__AllParameterSets'
5454
# cSpell: disable-next
55-
MockExpectedParameters = '[-MediaPath] <string> [[-InstanceName] <string>] [[-InstanceId] <string>] [[-PBEngSvcAccount] <string>] [[-PBEngSvcPassword] <securestring>] [[-PBEngSvcStartupType] <string>] [[-PBStartPortRange] <ushort>] [[-PBEndPortRange] <ushort>] [[-ProductKey] <string>] [[-AgtSvcAccount] <string>] [[-AgtSvcPassword] <securestring>] [[-AgtSvcStartupType] <string>] [[-BrowserSvcStartupType] <string>] [[-InstallSqlDataDir] <string>] [[-SqlBackupDir] <string>] [[-SecurityMode] <string>] [[-SAPwd] <securestring>] [[-SqlCollation] <string>] [[-SqlSvcAccount] <string>] [[-SqlSvcPassword] <securestring>] [[-SqlSvcStartupType] <string>] [[-SqlSysAdminAccounts] <string[]>] [[-SqlTempDbDir] <string>] [[-SqlTempDbLogDir] <string>] [[-SqlTempDbFileCount] <ushort>] [[-SqlTempDbFileSize] <ushort>] [[-SqlTempDbFileGrowth] <ushort>] [[-SqlTempDbLogFileSize] <ushort>] [[-SqlTempDbLogFileGrowth] <ushort>] [[-SqlUserDbDir] <string>] [[-SqlUserDbLogDir] <string>] [[-FileStreamLevel] <ushort>] [[-FileStreamShareName] <string>] [[-RsInstallMode] <string>] [[-RSSvcAccount] <string>] [[-RSSvcPassword] <securestring>] [[-RSSvcStartupType] <string>] [[-Timeout] <uint>] -AcceptLicensingTerms [-Enu] [-PBScaleOut] [-EnableRanU] [-NpEnabled] [-TcpEnabled] [-ProductCoveredBySA] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]'
55+
MockExpectedParameters = '[-MediaPath] <string> [[-InstanceName] <string>] [-InstanceId] <string> [[-PBEngSvcAccount] <string>] [[-PBEngSvcPassword] <securestring>] [[-PBEngSvcStartupType] <string>] [[-PBStartPortRange] <ushort>] [[-PBEndPortRange] <ushort>] [[-ProductKey] <string>] [[-AgtSvcAccount] <string>] [[-AgtSvcPassword] <securestring>] [[-AgtSvcStartupType] <string>] [[-BrowserSvcStartupType] <string>] [[-InstallSqlDataDir] <string>] [[-SqlBackupDir] <string>] [[-SecurityMode] <string>] [[-SAPwd] <securestring>] [[-SqlCollation] <string>] [[-SqlSvcAccount] <string>] [[-SqlSvcPassword] <securestring>] [[-SqlSvcStartupType] <string>] [[-SqlSysAdminAccounts] <string[]>] [[-SqlTempDbDir] <string>] [[-SqlTempDbLogDir] <string>] [[-SqlTempDbFileCount] <ushort>] [[-SqlTempDbFileSize] <ushort>] [[-SqlTempDbFileGrowth] <ushort>] [[-SqlTempDbLogFileSize] <ushort>] [[-SqlTempDbLogFileGrowth] <ushort>] [[-SqlUserDbDir] <string>] [[-SqlUserDbLogDir] <string>] [[-FileStreamLevel] <ushort>] [[-FileStreamShareName] <string>] [[-RsInstallMode] <string>] [[-RSSvcAccount] <string>] [[-RSSvcPassword] <securestring>] [[-RSSvcStartupType] <string>] [[-Timeout] <uint>] -AcceptLicensingTerms [-Enu] [-PBScaleOut] [-EnableRanU] [-NpEnabled] [-TcpEnabled] [-ProductCoveredBySA] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]'
5656
}
5757
) {
5858
$result = (Get-Command -Name 'Complete-SqlDscImage').ParameterSets |
@@ -94,6 +94,7 @@ Describe 'Complete-SqlDscImage' -Tag 'Public' {
9494
$mockDefaultParameters = @{
9595
AcceptLicensingTerms = $true
9696
MediaPath = '\SqlMedia'
97+
InstanceId = 'MSSQLSERVER'
9798
ErrorAction = 'Stop'
9899
}
99100
}
@@ -142,6 +143,7 @@ Describe 'Complete-SqlDscImage' -Tag 'Public' {
142143
$completeSqlDscImageParameters = @{
143144
AcceptLicensingTerms = $true
144145
MediaPath = '\SqlMedia'
146+
InstanceId = 'MSSQLSERVER'
145147
Force = $true
146148
PBStartPortRange = 16450
147149
PBEndPortRange = 16460
@@ -360,6 +362,7 @@ Describe 'Complete-SqlDscImage' -Tag 'Public' {
360362
$mockDefaultParameters = @{
361363
AcceptLicensingTerms = $true
362364
MediaPath = '\SqlMedia'
365+
InstanceId = 'MSSQLSERVER'
363366
Force = $true
364367
ErrorAction = 'Stop'
365368
}

0 commit comments

Comments
 (0)