无法安装botskills命令

时间:2020-02-26 05:43:41

标签: azure azure-devops botframework azure-bot-service azure-devops-self-hosted-agent

无法在自托管Azure代理上安装npm botskills命令。

以下用于安装软件包的命令得到更新,但是当尝试使用“ botskills”命令进行检查时,它会抛出错误并提示说botskills不可用。

屏幕截图

使用“ npm install -g botskills @ latest”来安装软件包,以下屏幕截图表明botskill软件包已更新。

image

但是当尝试使用更新的软件包时,它不起作用

image

所有其他支持包都已更新。

仅在使用自托管代理(Windows代理)时会出现此问题,而在本地没有问题。

复制步骤 1)使用任何Microsoft自托管代理。 2)尝试使用以下命令 npm install -g botskills @ latest 安装botkskills。 (按照所附的屏幕截图) 3)尝试使用botskills来验证该软件包是否可用。

2 个答案:

答案 0 :(得分:0)

我不确定Azure代理是否支持它,但这看起来像是一个路径问题。

在典型的计算机上,可以在powershell中运行以下命令来检查您的path变量设置为:

$env:path.split(";")

您通常应该具有以下内容: C:\Users\<username>\AppData\Roaming\npm作为路径之一。

对我来说,机器人技能是: C:\Users\<myusername>\AppData\Roaming\npm\botskills.ps1

如果您的path变量中没有该npm路径,则需要以某种方式进行补救。如果存在,那么您需要验证botskills.ps1是否存在。

正确设置所有 时,可以在PowerShell中使用以下命令查找路径:

get-command botskills | select path

答案 1 :(得分:0)

无法识别错误botskills是因为botskills软件包的安装路径不在本地计算机的系统环境变量PATH中。 Azure管道代理以其他用户(默认情况下为NetworkService用户)运行,并且botskills程序包通过Azure管道安装在系统环境路径未知的其他路径中。

您需要手动将“路径”添加到自托管代理计算机的系统环境路径中。

您还可以使用--prefix指定自定义npm软件包安装文件夹,并确保将路径添加到自托管代理计算机的系统环境路径。

npm install botskills@latest -g --prefix C:\custompath\npm

或者您可以使用以下脚本在powershell任务中将安装路径添加到“环境”路径。

$env:Path += ";C:\path to botskills installation\npm"

请查看this thread的答案以获取更多信息,以及有关类似问题here的讨论。