public/git/Add-PSTSGitRepositoryImportRequest.ps1
function Add-PSTSGitRepositoryImportRequest { param( [Parameter(Mandatory=$true)][string] $project, [Parameter(Mandatory=$true)][string] $repoName, [Parameter(Mandatory=$true)][string] $url, [Parameter(Mandatory=$true)][string] $serviceEndPointId ) $id = $(Get-PSTSGitRepository -project $project | Where-Object {$_.name -eq $repoName} | Select-Object -ExpandProperty id ) if ([String]::IsNullOrEmpty($id)) { Write-Error "$repoName doesn't exist in $project !!" return 128 } else { Write-Debug "$repoName exists in $project" [GitImportRequestParameters ] $gitImportRequestParameters = [GitImportRequestParameters ]::new() $GitImportRequestParameters.deleteServiceEndpointAfterImportIsDone = $true $GitImportRequestParameters.gitSource = @{overwrite=$false; url="$url" } $GitImportRequestParameters.serviceEndpointId="$serviceEndPointId" $payload= New-Object -TypeName "PSObject" $payload | Add-Member -MemberType NoteProperty "parameters" -Value $GitImportRequestParameters $content = ` _PSTSAPI ` -resource "git/repositories/$id/importRequests" ` -method "POST" ` -project $project ` -repositoryId $id ` -body $($payload| ConvertTo-Json ) ` -contentType "application/json" ` -apiVersion "api-version=5.2-preview.1" return [Object]$content } } |