Skip to content

Commit

Permalink
Make the user agent configurable.
Browse files Browse the repository at this point in the history
  • Loading branch information
sima-zhu committed Jan 6, 2021
1 parent 4d46541 commit 8467d65
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
3 changes: 2 additions & 1 deletion eng/common/pipelines/templates/steps/verify-links.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ parameters:
Urls: '(Get-ChildItem -Path ./ -Recurse -Include *.md)'
BranchReplaceRegex: "^(${env:SYSTEM_PULLREQUEST_SOURCEREPOSITORYURI}.*/(?:blob|tree)/)master(/.*)$"
BranchReplacementName: "${env:SYSTEM_PULLREQUEST_SOURCECOMMITID}"

UserAgent: ${env:USERAGENT}
steps:
- task: PowerShell@2
displayName: Link verification check
Expand All @@ -25,3 +25,4 @@ steps:
-branchReplacementName ${{ parameters.BranchReplacementName }}
-devOpsLogging: $true
-checkLinkGuidance: ${{ parameters.CheckLinkGuidance }}
-userAgent: ${{ parameters.UserAgent }}
13 changes: 9 additions & 4 deletions eng/common/scripts/Verify-Links.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,18 @@ param (
# the substitute branch name or SHA commit
[string] $branchReplacementName = "",
# flag to allow checking against azure sdk link guidance. Check link guidance here: https://aka.ms/azsdk/guideline/links
[bool] $checkLinkGuidance = $false
[bool] $checkLinkGuidance = $false,
# UserAgent to be configured for web request. Default to PSUserAgent.
[string] $userAgent = "Microsoft.PowerShell.Commands.PSUserAgent"
)

$ProgressPreference = "SilentlyContinue"; # Disable invoke-webrequest progress dialog
# Regex of the locale keywords.
$locale = "/en-us/"
$emptyLinkMessage = "There is at least one empty link in the page. Please replace with absolute link. Check here for more information: https://aka.ms/azsdk/guideline/links"
if (!$userAgent) {
$userAgent = "Microsoft.PowerShell.Commands.PSUserAgent"
}
function NormalizeUrl([string]$url){
if (Test-Path $url) {
$url = "file://" + (Resolve-Path $url).ToString();
Expand Down Expand Up @@ -162,14 +167,14 @@ function CheckLink ([System.Uri]$linkUri)
$headRequestSucceeded = $true
try {
# Attempt HEAD request first
$response = Invoke-WebRequest -Uri $linkUri -Method HEAD
$response = Invoke-WebRequest -Uri $linkUri -Method HEAD -UserAgent $userAgent
}
catch {
$headRequestSucceeded = $false
}
if (!$headRequestSucceeded) {
# Attempt a GET request if the HEAD request failed.
$response = Invoke-WebRequest -Uri $linkUri -Method GET
$response = Invoke-WebRequest -Uri $linkUri -Method GET -UserAgent $userAgent
}
$statusCode = $response.StatusCode
if ($statusCode -ne 200) {
Expand Down Expand Up @@ -239,7 +244,7 @@ function GetLinks([System.Uri]$pageUri)
{
if ($pageUri.Scheme.StartsWith("http")) {
try {
$response = Invoke-WebRequest -Uri $pageUri
$response = Invoke-WebRequest -Uri $pageUri -UserAgent $userAgent
$content = $response.Content
}
catch {
Expand Down

0 comments on commit 8467d65

Please sign in to comment.