Private/Utils/Get-CurrentRegion.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
function Get-CurrentRegion
{
<#
    .SYNOPSIS
        Determine region from AWS default.

    .OUTPUTS
        [string] Region name.
#>

    if (Test-Path -Path variable:StoredAWSRegion)
    {
        $StoredAWSRegion
    }
    else
    {
        $fallbackRegion = [Amazon.Runtime.FallbackRegionFactory]::GetRegionEndpoint()

        if ($null -ne $fallbackRegion)
        {
            $fallbackRegion.SystemName
        }
        else
        {
            throw "Cannot determine AWS Region. Use Set-DefaultAWSRegion to set in shell."
        }
    }
}