@@ -58,7 +58,7 @@ $headers = @{
5858
5959$query = " state=open&head=${PROwner} :${PRBranch} &base=${BaseBranch} "
6060
61- function AddLabels ([int ] $prNumber , [string ] $prLabelString )
61+ function AddLabels ([int ] $prNumber , [string ] $prLabelString , [ array ] $existingLabels )
6262{
6363 # Adding labels to the pr.
6464 if (-not $prLabelString ) {
@@ -68,6 +68,12 @@ function AddLabels([int] $prNumber, [string] $prLabelString)
6868
6969 # Parse the labels from string to array
7070 $prLabelArray = @ ($prLabelString.Split (" ," ) | % { $_.Trim () } | ? { return $_ })
71+ foreach ($label in $existingLabels ) {
72+ if ($prLabelArray -contains $label.name ) {
73+ continue
74+ }
75+ $prLabelArray += $label.name
76+ }
7177 $prLabelUri = " https://api.github.com/repos/$RepoOwner /$RepoName /issues/$prNumber "
7278 $labelRequestData = @ {
7379 labels = $prLabelArray
@@ -97,7 +103,7 @@ if ($resp.Count -gt 0) {
97103
98104 # setting variable to reference the pull request by number
99105 Write-Host " ##vso[task.setvariable variable=Submitted.PullRequest.Number]$ ( $resp [0 ].number) "
100- AddLabels $resp [0 ].number $PRLabels
106+ AddLabels $resp [0 ].number $PRLabels $resp [ 0 ].labels
101107}
102108else {
103109 $data = @ {
@@ -124,5 +130,5 @@ else {
124130 # setting variable to reference the pull request by number
125131 Write-Host " ##vso[task.setvariable variable=Submitted.PullRequest.Number]$ ( $resp.number ) "
126132
127- AddLabels $resp.number $PRLabels
133+ AddLabels $resp.number $PRLabels $resp .labels
128134}
0 commit comments