Sync eng/common directory with azure-sdk-tools for PR 2095 (#2960)

* Mitigate relative path calculation error on multiple iterations

* Revert "Mitigate relative path calculation error on multiple iterations"

This reverts commit 45baedd990c6a3085742a38a4891d8706a93be77.

* GetRelativePath should check if path is already relative before calling [IO.Path]::GetRelativePath

Co-authored-by: Daniel Jurek <djurek@microsoft.com>
This commit is contained in:
Azure SDK Bot 2021-10-13 10:43:44 -07:00 committed by GitHub
parent 11b6fc8d3a
commit 51e569e110
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -73,6 +73,14 @@ function GetRelativePath($path) {
if (!$path) {
return ''
}
# If the path is already relative return the path. Calling `GetRelativePath`
# on a relative path converts the relative path to an absolute path based on
# the current working directory which can result in unexpected outputs.
if (![IO.Path]::IsPathRooted($path)) {
return $path
}
$relativeTo = Resolve-Path $PSScriptRoot/../../../
# Replace "\" with "/" so the path is valid across other platforms and tools
$relativePath = [IO.Path]::GetRelativePath($relativeTo, $path) -replace "\\", '/'