BrownField/Auto-assessment/scripts/Test-HCX-StretchedVLANs.ps1 (44 lines of code) (raw):

function Test-HCX-StretchedVLANs { param ( [SecureString]$token, [PSCustomObject]$sddc ) try { # Get AVS SDDC details $sddcDetails = Get-AVS-SDDC-Details -sddc $sddc # Get AVS Credentials $credentials = Get-AVS-Credentials -token $token -sddc $sddc # Define API URL $apiUrl = [string]::Format( "{0}" + "hybridity/api/l2Extensions", $sddcDetails.hcxUrl ) # Make the request $response = Invoke-APIRequest -method "GET" ` -url $apiUrl ` -avsHcxUrl $sddcDetails.hcxUrl ` -avsvCenteruserName $credentials.vCenterUsername ` -avsvCenterpassword $credentials.vCenterPassword # Process the response if ($response) { foreach ($l2Extension in $response.items) { # If the creationDate is older than 30 days, then create a new recommendation if ((Get-Date) - (Get-Date $l2Extension.creationDate) -gt (New-TimeSpan -Days 30)) { $recommendationType = "VLANStretchedForMoreThan30Days" break } } }else { $recommendationType = "VLANStretchedForMoreThan30Days" } # Add the recommendation if (![string]::IsNullOrEmpty($recommendationType)) { $Global:recommendations += Get-Recommendation -type $recommendationType ` -sddcName $sddc.name } } catch { Write-Error "Test HCX Stretched VLANs Failed: $_" } }