如何使用 vsts-task-lib 获取构建任务文件的放置路径?

How do I use vsts-task-lib to get the path where build task's files are dropped?

我的自定义构建任务是 运行 在代理上,其文件位于 E:\agent_work\_tasks\MyTaskName_106598a6-d5ba-4038-8dc8-ba0172210a94[=10=].0.13。有没有办法使用 vsts-task-lib 来获取此路径?

如果我能够从 task.json 获取任务 ID、名称和版本,我可以通过 tl.getVariable('Agent.WorkFolder') + '\_tasks\' + taskName + '_' + taskIdentifier + '\' + taskVersion.

之类的方式自行确定路径

我关注 https://github.com/Microsoft/vsts-task-lib/blob/master/node/docs/vsts-task-lib.md#taskgetTaskVariable,但不确定要使用的变量名,或者这是否是正确的路径。

您可以在 build/release 任务扩展中使用 __dirname (nodejs) 或 $PSScriptRoot (powershell) 来获取当前路径。

例如:

节点:

console.log(__dirname)

PowerShell:

Write-Host $PSScriptRoot