...

Text file src/github.com/Azure/azure-sdk-for-go/eng/common/scripts/Helpers/ApiView-Helpers.ps1

Documentation: github.com/Azure/azure-sdk-for-go/eng/common/scripts/Helpers

     1function MapLanguageName($language)
     2{
     3    $lang = $language
     4    # Update language name to match those in API cosmos DB. Cosmos SQL is case sensitive and handling this within the query makes it slow.
     5    if($lang -eq 'javascript'){
     6        $lang = "JavaScript"
     7    }
     8    elseif ($lang -eq "dotnet"){
     9        $lang = "C#"
    10    }
    11    elseif ($lang -eq "java"){
    12        $lang = "Java"
    13    }
    14    elseif ($lang -eq "python"){
    15        $lang = "Python"
    16    }
    17    else{
    18      $lang = $null
    19    }
    20    return $lang
    21}
    22
    23function Check-ApiReviewStatus($packageName, $packageVersion, $language, $url, $apiKey)
    24{
    25  # Get API view URL and API Key to check status
    26  Write-Host "Checking API review status"
    27  $lang = MapLanguageName -language $language
    28  if ($lang -eq $null) {
    29    return
    30  }
    31  $headers = @{ "ApiKey" = $apiKey }
    32  $body = @{
    33    language = $lang
    34    packageName = $packageName
    35    packageVersion = $packageVersion
    36  }
    37
    38  try
    39  {
    40    $response = Invoke-WebRequest $url -Method 'GET' -Headers $headers -Body $body
    41    if ($response.StatusCode -eq '200')
    42    {
    43      Write-Host "API Review is approved for package $($packageName)"
    44    }
    45    else
    46    {
    47      Write-Warning "API Review is not approved for package $($packageName). Release pipeline will fail if API review is not approved."
    48      Write-Host "You can check http://aka.ms/azsdk/engsys/apireview/faq for more details on API Approval."
    49    }
    50  }
    51  catch
    52  {
    53    Write-Warning "Failed to check API review status for package $($PackageName). You can check http://aka.ms/azsdk/engsys/apireview/faq for more details on API Approval."
    54  }
    55}

View as plain text