Public/Add-TenantToConfig.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
function Add-TenantToConfig {
    [cmdletbinding()]
    param (
        [parameter(Position = 1, Mandatory = $true)]
        $TenantName,

        [parameter(Position = 2, Mandatory = $true)]
        $ImageName,

        [parameter(Position = 3, Mandatory = $true)]
        $AdminUpn
    )
    try {
        Write-Host "Adding $TenantName to config.. " -ForegroundColor Cyan -NoNewline
        $newTenant = [pscustomobject]@{
            TenantName = $TenantName
            ImageName   = $ImageName
            AdminUpn   = $AdminUpn
        }
        $script:hvConfig.tenantConfig += $newTenant
        $script:hvConfig | ConvertTo-Json -Depth 20 | Out-File -FilePath $hvConfig.hvConfigPath -Encoding ascii -Force
    }
    catch {
        $errorMsg = $_
    }
    finally {
        if ($errorMsg) {
            Write-Warning $errorMsg
        }
        else {
            Write-Host $script:tick -ForegroundColor Green
        }
    }
}