PowerShell retry logic code

This is a small PowerShell retry logic code snipet so I do not have to search for one ever again.

function Add-Package($SiteFullUrl, $Creds, $PackagePath) {

    $stopLoop = $false
    $retryCount = 0
    do {
        try {

            # YOUR LOGIC HERE
            Connect-PnPOnline $SiteFullUrl -Credentials $Creds
            Add-PnPApp -Path $PackagePath -Scope Site -Publish -Overwrite -SkipFeatureDeployment -ErrorAction Stop
            Write-Host "`Add-Package: Job completed for $PackagePath"

            $stopLoop = $true
        catch [Exception] {
            if ($retryCount -gt 30){
                Write-Host "Add-Package: Max retry for $PackagePath"
                $stopLoop = $true
            else {
                Write-Host $_.Exception.Message -ForegroundColor Yello
                Write-Host "Add-Package: Could not complete retrying in 10 seconds... $PackagePath"
                Start-Sleep -Seconds 10
                $retryCount = $retryCount + 1
    } while ($stopLoop -eq $false)