Private/Test-RubrikSLA.ps1
Function Test-RubrikSLA($SLA, $Inherit, $DoNotProtect, $Mandatory, $PrimaryClusterID) { <# .SYNOPSIS Retrieves an ID for a given SLA .DESCRIPTION The Test-RubrikSLA function retrieves the ID for a given SLA Domain name .PARAMETER SLA The SLA Domain name to lookup .PARAMETER Inherit Switch to set SLA to 'Inherit' .PARAMETER DoNotProtect Switch to set SLA to 'Unprotected' .PARAMETER Mandatory Switch to ensure SLA information was inputted .PARAMETER PrimaryClusterId The ID of the cluster to search #> Write-Verbose -Message 'Determining the SLA Domain id' if ($SLA) { $slaid = & { $local:PSDefaultParameterValues = @{Disabled=$true} if (-not [string]::IsNullOrWhiteSpace($PrimaryClusterID)) { (Get-RubrikSLA -SLA $SLA -PrimaryClusterID $PrimaryClusterID).id } else { (Get-RubrikSLA -SLA $SLA).id } } if ($slaid -eq $null) { throw "No SLA Domains were found that match $SLA for $PrimaryClusterID" } return $slaid } if ($Inherit) { return 'INHERIT' } if ($DoNotProtect) { return 'UNPROTECTED' } if ($Mandatory) { throw 'No SLA information was entered.' } } |