Functions/Private/Artifacts/SQLServer/Generate_SQLServer.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
function Generate_SQLServer { <# .SYNOPSIS Generates Dockerfile contents for Microsoft SQL Server .PARAMETER ManifestPath The filesystem path where the JSON manifests are stored. #> [CmdletBinding()] param ( [Parameter(Mandatory = $true)] [string] $ManifestPath ) $ArtifactName = Split-Path -Path $PSScriptRoot -Leaf Write-Verbose -Message ('Generating result for {0} component' -f (Split-Path -Path $PSScriptRoot -Leaf)) $Manifest = '{0}\{1}.json' -f $ManifestPath, $ArtifactName $Artifact = Get-Content -Path $Manifest -Raw | ConvertFrom-Json if ($Artifact.Status -eq 'Present') { $Result = ' ### NOTE: You will need to set up a SQL Server answer file for each instance RUN powershell.exe -ExecutionPolicy Bypass -Command \ ' $SetupTemplate = 'setup.exe /INSTANCENAME={0} /IACCEPTSQLSERVERLICENSETERMS /QS /CONFIGURATIONFILE=sqlserver.ini; \{1}' foreach ($SqlInstance in $Artifact.SqlInstances) { $Result += $SetupTemplate -f $SqlInstance.Name, "`r`n" } Write-Output -InputObject $Result } } |