Azure devops VSTS扩展中的包共享代码
我正在编写一个VSTS扩展,其中包含构建/发布任务。在扩展中,我可以将多个任务使用的代码放在哪里?我可以把它放在扩展文件树的任何地方(例如下面的Azure devops VSTS扩展中的包共享代码,azure-devops,azure-devops-extensions,Azure Devops,Azure Devops Extensions,我正在编写一个VSTS扩展,其中包含构建/发布任务。在扩展中,我可以将多个任务使用的代码放在哪里?我可以把它放在扩展文件树的任何地方(例如下面的Common文件夹)然后使用该路径吗?这些文件会被每个运行扩展任务的代理下载吗 我当前拥有的目录结构如下所示: My Extension |- MyBuildTask | |- MyBuildTask.ps1 | |- task.json |- MyReleaseTask | |- MyReleaseTask.ps1 | |- task.
Common
文件夹)然后使用该路径吗?这些文件会被每个运行扩展任务的代理下载吗
我当前拥有的目录结构如下所示:
My Extension
|- MyBuildTask
| |- MyBuildTask.ps1
| |- task.json
|- MyReleaseTask
| |- MyReleaseTask.ps1
| |- task.json
|- Common
| |- MyModule.psm1
|-vss-extension.json
据我所知,代理安装了整个扩展,这意味着扩展中的所有代码都应该可以从任何任务中下载和使用。当您排队生成时,anent只下载单个任务文件,不能在任务之间共享文件。您必须将任务所需的所有文件打包到任务目录中 否,它仅从单个任务目录中下载文件。扩展中的其他任务不会下载,除非它们在构建中使用。谢谢-我现在采取的解决方法是在打包扩展时在构建时将
Common
目录复制到每个任务中。我确实尝试将其添加到扩展清单中:,{“path”:“Common”,“addressable”:true,“packagePath”:“/Common”}
和Common
目录已添加到扩展的根目录中,但我找不到方法让任务引用它。可能吗?您应该使用gulpbuild
链接文件。运行gulp build
后,您可以检查公共文件夹中的DeploymentSDK
是否链接到扩展名IISWebapDeploy
中的所有任务。