Files
runner-images-sangeeth/images/win/scripts/Installers/Install-SQLExpress.ps1
2020-03-17 01:28:14 +07:00

54 lines
2.0 KiB
PowerShell

#Download web-installer
Set-Item .\MaxMemoryPerShellMB 4096
$installerUrl = "https://go.microsoft.com/fwlink/?linkid=866658"
$installerName = "SQL2019-SSEI-Expr.exe"
$installerPath = "${env:Temp}\$installerName"
Write-Host "Download web-installer"
(New-Object System.Net.WebClient).DownloadFile($installerUrl, $installerPath)
#use web-installer to download setup package
$downloadPath = "C:\SQLEXPRESS2019"
$setupPath = Join-Path $downloadPath "SQLEXPR_x64_ENU"
$downloadArgs = ("/MEDIAPATH=$downloadPath", "/MEDIATYPE=Core","/Action=Download", "/QUIET")
$installArgs = ("/Q", "/IACCEPTSQLSERVERLICENSETERMS")
$args = ("/c", "$setupPath/SETUP.exe", "/Q", "/IACCEPTSQLSERVERLICENSETERMS", "/Action=Install", "/INSTANCEID=SQL2019", "/INSTANCENAME=SQL2019", "/SECURITYMODE=SQL", "/SAPWD=P@ssword!!", "/TCPENABLED=1")
Write-Host "Downloading SQL Express setup package"
$process = Start-Process -FilePath $installerPath -ArgumentList $downloadArgs -Wait -PassThru
$exitCode = $process.ExitCode
if ($exitCode -eq 0)
{
Write-Host -Object 'Downloaded successfully'
Write-Host $exitCode
}
else
{
Write-Host -Object "Non zero exit code returned by the installation process : $exitCode."
exit $exitCode
}
#Unpack and run setup-package
Set-Location -Path $downloadPath
Write-Host "Unpack SQL Express setup package"
$process = Start-Process -FilePath "$setupPath.exe" -ArgumentList $installArgs -Wait -PassThru
$exitCode = $process.ExitCode
if ($exitCode -eq 0)
{
Write-Host -Object 'Unpacked successfully'
Write-Host $exitCode
}
else
{
Write-Host -Object "Non zero exit code returned by the installation process : $exitCode."
Write-Host $exitCode
}
Write-Host "Run SQL Express setup package"
$process = Start-Process -FilePath cmd.exe -ArgumentList $args -Wait -PassThru
$exitCode = $process.ExitCode
if ($exitCode -eq 0)
{
Write-Host -Object 'Installed successfully'
Write-Host $exitCode
}
else
{
Write-Host -Object "Non zero exit code returned by the installation process : $exitCode."
exit $exitCode
}