@@ -28,18 +28,36 @@ function InitializeRestHeaders()
2828 $restHeaders = New-Object - TypeName " System.Collections.Generic.Dictionary[[String], [String]]"
2929 if ([string ]::IsNullOrWhiteSpace($connectedServiceName ))
3030 {
31- $restHeaders.Add (" Authorization" , [String ]::Concat(" Bearer " , $env: SYSTEM_ACCESSTOKEN ))
31+ $patToken = Get-AccessToken $connectedServiceDetails
32+ ValidatePatToken $patToken
33+ $restHeaders.Add (" Authorization" , [String ]::Concat(" Bearer " , $patToken ))
3234
3335 }
3436 else
3537 {
38+ $Username = $connectedServiceDetails.Authorization.Parameters.Username
39+ Write-Verbose " Username = $Username " - Verbose
40+ $Password = $connectedServiceDetails.Authorization.Parameters.Password
3641 $alternateCreds = [String ]::Concat($Username , " :" , $Password )
3742 $basicAuth = [Convert ]::ToBase64String([Text.Encoding ]::UTF8.GetBytes($alternateCreds ))
3843 $restHeaders.Add (" Authorization" , [String ]::Concat(" Basic " , $basicAuth ))
3944 }
4045 return $restHeaders
4146}
4247
48+ function Get-AccessToken ($vssEndPoint )
49+ {
50+ return $vssEndpoint.Authorization.Parameters.AccessToken
51+ }
52+
53+ function ValidatePatToken ($token )
54+ {
55+ if ([string ]::IsNullOrWhiteSpace($token ))
56+ {
57+ throw " Unable to generate Personal Access Token for the user. Contact Project Collection Administrator"
58+ }
59+ }
60+
4361 # Load all dependent files for execution
4462 . $PSScriptRoot / CltTasksUtility.ps1
4563 . $PSScriptRoot / VssConnectionHelper.ps1
@@ -52,6 +70,8 @@ Write-Output "Starting Quick Perf Test Script"
5270
5371import-module " Microsoft.TeamFoundation.DistributedTask.Task.Internal"
5472import-module " Microsoft.TeamFoundation.DistributedTask.Task.Common"
73+ import-module " Microsoft.TeamFoundation.DistributedTask.Task.DTA"
74+ import-module " Microsoft.TeamFoundation.DistributedTask.Task.DevTestLabs"
5575
5676$testName = $testName + " .loadtest"
5777Write-Output " Test name = $testName "
7393{
7494 $connectedServiceDetails = Get-ServiceEndpoint - Context $distributedTaskContext - Name $connectedServiceName
7595}
76- $Username = $connectedServiceDetails.Authorization.Parameters.Username
77- Write-Verbose " Username = $Username " - Verbose
78- $Password = $connectedServiceDetails.Authorization.Parameters.Password
96+
7997$VSOAccountUrl = $connectedServiceDetails.Url.AbsoluteUri
8098Write-Output " VSO Account URL is : $VSOAccountUrl "
8199$headers = InitializeRestHeaders
@@ -85,8 +103,6 @@ $TFSAccountUrl = $env:System_TeamFoundationCollectionUri.TrimEnd('/')
85103Write-Output " VSO account Url = $TFSAccountUrl " - Verbose
86104Write-Output " CLT account Url = $CltAccountUrl " - Verbose
87105
88-
89-
90106$dropjson = ComposeTestDropJson $testName $runDuration $websiteUrl $vuLoad $geoLocation
91107
92108$drop = CreateTestDrop $headers $dropjson $CltAccountUrl
0 commit comments