Вызов внешней команды из плагина Powershell

У меня есть процесс приложения, который выполняется в IBM UrbanCode. В этом процессе используется скрипт Powershell, который использует CLI CloudFoundry. Процесс нашего приложения выполняется на агенте, на котором CLI CloudFoundry установлен и доступен по пути. Как ни странно, плагин Powershell не знает, что CLI CloudFoundry находится на пути. Вывод пути через сам плагин подтверждает это.

В настоящее время наш процесс подачи заявок выглядит следующим образом:

  1. Скопируйте CloudFoundry CLI в рабочую область UCD в начале работы.
  2. Выполните различные команды CloudFoundry с помощью следующего синтаксиса: .\cf login -u foo -p bar -o baz -s bartЯ хочу избежать копирования клиента в рабочую область и необходимости использовать синтаксис. \ Cf, чтобы сделать сценарии более переносимыми.

Как я могу заставить плагин Powershell уважать путь Агента?

1 ответ

Похоже, что пользователь, под которым работает ваш агент powershell, не имеет CloudFoundry на своем пути. Варианты 1. Убедитесь, что переменная PATH установлена ​​для всей системы. 2. вместо копирования CLI CloudFoundary вы можете вручную добавить путь к CloudFoundry перед запуском скрипта

$env:Path += ;<PATH TO CLOUDFOUNARY>

Примечание: это будет сохраняться только для текущего сеанса. Чтобы проверить, что у вас есть CloudFoundary в пути, который вы можете использовать

Get-Command cf
Другие вопросы по тегам