src/private/Test-AzLogin.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 35 36 37 |
function Test-AzLogin { [CmdletBinding()] [OutputType([boolean])] [Alias()] Param() Begin { } Process { # Verify we are signed into an Azure account try { try{ Import-Module Az.Accounts -Verbose:$false } catch {} Write-Verbose 'Testing Azure login' $isLoggedIn = [bool](Get-AzContext -ErrorAction Stop) if(!$isLoggedIn){ Write-Verbose 'Not logged into Azure. Initiate login now.' Write-Host 'Enter your credentials in the pop-up window' -ForegroundColor Yellow $isLoggedIn = Connect-AzAccount } } catch [System.Management.Automation.PSInvalidOperationException] { Write-Verbose 'Not logged into Azure. Initiate login now.' Write-Host 'Enter your credentials in the pop-up window' -ForegroundColor Yellow $isLoggedIn = Connect-AzAccount } catch { Throw $_.Exception.Message } [bool]$isLoggedIn } End { } } |