Public/Set-DBSettings.ps1
<#
.SYNOPSIS Saves DB Settings .DESCRIPTION Saves the repository SQL Server instance and database values into Kraken.config.json file .PARAMETER dbserver Specifies the SQL Server instance .PARAMETER dbname Specifies the SQL Server database .INPUTS None. You cannot pipe objects to Set-DBSettings .OUTPUTS None .EXAMPLE Install a DEV SQL Server 2016 with default Instance value of "INSTANCE1" including all post steps Set-DBSettings -dbserver "servername.fqdn.com\instancename" -dbname "Kraken" .LINK https://github.com/dokier/Kraken #> function Set-DBSettings { [OutputType('void')] [CmdletBinding()] param ( [Parameter(Mandatory)] [ValidateNotNullOrEmpty()] [string] $dbserver, [ValidateNotNullOrEmpty()] [Parameter(Mandatory)] [string] $dbname ) begin { $ErrorActionPreference = 'Stop' $script:PSConfigPath = (Get-Item $PSScriptRoot).Parent.FullName if(!(Test-Path -Path "$env:ProgramData\Kraken")){ New-Item -ItemType directory -Path "$env:ProgramData\Kraken" } Copy-Item $script:PSConfigPath\Kraken.config.json -Destination "$env:ProgramData\Kraken" -Force $json = Get-Content -Path $env:ProgramData\Kraken\Kraken.config.json -Raw | ConvertFrom-Json } process { $json.dbsettings.server = $dbserver $json.dbsettings.database = $dbname $json | ConvertTo-Json -depth 100 | Set-Content $env:ProgramData\Kraken\Kraken.config.json } } |