function UpsertEnvironmentVariable { param ([Parameter(Mandatory)][string]$varName) if (Test-Path -Path env:$varName) { $varValue = [Environment]::GetEnvironmentVariable("$varName", "Machine") if ((Read-Host "$varName = $varValue already exists! Do you want to change it [y/n]?") -ne "y") { return; } } $varValue = Read-Host "Enter value for $varName" [Environment]::SetEnvironmentVariable($varName, $varValue, "Machine") Write-Host "$varName set to $varValue" } UpsertEnvironmentVariable "ASPNETCORE_ENVIRONMENT" UpsertEnvironmentVariable "CP3_SERVICE_URL" UpsertEnvironmentVariable "DX_SERVICE_URL" UpsertEnvironmentVariable "CP3_SERVICE_CERT_NAME" UpsertEnvironmentVariable "DX_SERVICE_CERT_NAME" UpsertEnvironmentVariable "CP3_SERIAL_NUMBER" UpsertEnvironmentVariable "GD_SERVER_NAME" UpsertEnvironmentVariable "SIP_SERVICE_CP3_API_KEY" if ((Read-Host "Restart IIS and code-deploy agent so that they detect new env variables [y/n]?") -eq "y") { & iisreset /restart Restart-Service -Name codedeployagent }