Export/Private/Wait-ForNewlyCreatedIdentity.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function Global:Wait-ForNewlyCreatedIdentity {
    [CmdletBinding()]
    param(
        $ResourceGroupName,
        $ObjectId
    )
    process {        
        $principal = $null
        while (-not($principal)){            
            $principal = Get-AzADServicePrincipal -ObjectId $ObjectId -ErrorAction SilentlyContinue
            if (-not($principal)){
                Write-Verbose "Waiting for availability of newly created identity... (Checking again in 2 seconds)"
                Start-Sleep -Seconds 2
            }            
        }
    }    
}