我正在使用 Azure DevOps 部署组代理来部署 Azure DevOps 发布任务。
通过 Azure DevOps Releases 任务执行 PowerShell 文件时,是否有办法在 PowerShell 文件中利用 Azure DevOps 内置变量(例如
$(System.DefaultWorkingDirectory)
),类似于在同一任务中使用内联 PowerShell 时的可访问性?
问题背景:
问题是,当我运行内联 Powershell 脚本时,它工作正常。但是,当我将相同的脚本移动到文件并尝试使用位于代理主机服务器
$(System.DefaultWorkingDirectory)
中的存储库中的文件时,它找不到它。
通过 Azure DevOps Releases 任务执行 PowerShell 文件时,可以访问 Azure DevOps 内置变量,例如
$(System.DefaultWorkingDirectory)
。为此,您可以将这些变量作为参数传递给 PowerShell 脚本。
以下是如何在 PowerShell 文件中访问
$(System.DefaultWorkingDirectory)
的示例:
创建包含您要运行的代码的 PowerShell 脚本文件(例如
install.ps1
)。
在 PowerShell 脚本中,您可以使用
$(System.DefaultWorkingDirectory)
自动变量访问 $env
。这是一个例子:
# Accessing $(System.DefaultWorkingDirectory) in your PowerShell script
$workingDirectory = $env:System_DefaultWorkingDirectory
Write-Host "Working Directory: $workingDirectory"
通过执行以下步骤,您可以访问和利用通过 Azure DevOps Releases 任务执行的 PowerShell 文件中的 Azure DevOps 内置变量。同样的方法也适用于相同上下文中的内联 PowerShell。