在 VSTS 扩展中打包共享代码

Package shared code in VSTS extension

我正在编写一个包含 build/release 任务的 VSTS 扩展。我可以将被多个任务使用的代码放在扩展中的什么位置?我可以将它放在扩展文件树中的任何位置(例如下面的 Common 文件夹)然后只使用该路径 - 这些文件是否会被每个代理下载 运行 扩展中的任何任务?

我目前的目录结构是这样的:

My Extension
|- MyBuildTask
|   |- MyBuildTask.ps1
|   |- task.json
|- MyReleaseTask
|   |- MyReleaseTask.ps1
|   |- task.json
|- Common
|   |- MyModule.psm1
|-vss-extension.json

据我所知,代理会安装整个扩展,这意味着扩展中的所有代码都应该下载并可用于任何任务。

当您对构建进行排队时,ant 只会下载单个任务文件,它无法在任务之间共享文件。您必须将任务所需的所有文件打包到任务目录中。