Private/Get-CurrentRegion.ps1
function Get-CurrentRegion { <# .SYNOPSIS Determine region from command line arguments or AWS default. .PARAMETER CredentialArguments Credential arguments passed to public function. .OUTPUTS [string] Region name. #> param ( [hashtable]$CredentialArguments ) if ($CredentialArguments -and $CredentialArguments.ContainsKey('Region')) { $CredentialArguments['Region'] } elseif (Test-Path -Path variable:StoredAWSRegion) { $StoredAWSRegion } else { $fallbackRegion = [Amazon.Runtime.FallbackRegionFactory]::GetRegionEndpoint() if ($null -ne $fallbackRegion) { $fallbackRegion.SystemName } else { throw "Cannot determine AWS Region. Either use Set-DefaultAWSRegion to set in shell, or supply -Region parameter." } } } |