Невозможно установить команду botskills - PullRequest
0 голосов
/ 26 февраля 2020

Невозможно установить команду npm botskills на агенте Self-Hosted Azure.

Использовалась следующая команда для установки обновлений пакетов, но при попытке проверить с помощью команды "botskills" он выдает сообщение об ошибке, в котором говорится, что botskills недоступен.

Снимки экрана

Используется "npm install -g botskills@latest" для установки пакета, где на следующем снимке экрана показано, что пакеты botskill были обновлено.

image

Но при попытке использовать обновленный пакет не работает

image

Все остальные пакеты поддержки имеют было обновлено.

Эта проблема возникает при использовании только агента Self-Hosted (Windows agent) и работает без проблем на локальном компьютере.

Действия по воспроизведению 1 ) Используйте любой из Microsoft Self-Hosted Agent. 2) Попробуйте установить botkskills, используя следующую команду npm install -g botskills@latest (следуйте прилагаемым скриншотам) 3) Попробуйте использовать botskills, чтобы проверить, доступен ли пакет.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2020

Ошибка, которую ботскиллы не распознали, связана с тем, что путь установки пакета 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"

Пожалуйста, проверьте ответ на в этой теме для получения дополнительной информации и обсуждения аналогичного вопроса здесь .

0 голосов
/ 26 февраля 2020

Я не уверен, поддерживается ли он агентом Azure, но это похоже на проблему с маршрутизацией.

На обычном компьютере в powershell вы можете запустить следующее, чтобы проверить, на что установлена ​​переменная пути:

$env:path.split(";")

Обычно у вас должно быть что-то вроде: C:\Users\<username>\AppData\Roaming\npm как один из путей.

Для меня навыки бота: C:\Users\<myusername>\AppData\Roaming\npm\botskills.ps1

Если у вас нет этого npm пути в вашей переменной пути, это необходимо быть исправлено как-то. Если он есть, вам нужно убедиться, что botskills.ps1 существует.

Когда все настроено правильно, вы можете использовать следующую команду в PowerShell для поиска пути:

get-command botskills | select path

...