我正在尝试创建 VSTS Build Task 扩展,它调用以下 CLI 命令:
libman restore
当然,libman CLI 不必安装在构建代理上,所以我认为它也应该尝试安装它:
dotnet tool install -g Microsoft.Web.LibraryManager.Cli
据我了解,为了在 Linux 构建代理上进行这项工作,我应该使用 typescript,而不是那个 powershell。
如何安装 dotnet 工具 CLI(或以其他方式定位)并使用 typescript 调用命令?
编辑:到目前为止我有这个:
import * as path from "path";
import tl = require('vsts-task-lib/task');
let libmanExePath = tl.which('libman');
if (!libmanExePath){
var dotnet = tl.tool(tl.which('dotnet', true));
await dotnet.arg(['tool', 'install', '-g', 'Microsoft.Web.LibraryManager.Cli']).exec();
}
var libman = tl.tool(libmanExePath);
await libman.arg(['restore']).exec();
但是如何找到 CLI 工具,该工具是在 .csproj中使用DotNetCliToolReference引用的?