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

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

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

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

Как я могу заставить подключаемый модуль Powershell учитывать путь агента?


person timmy    schedule 12.07.2016    source источник


Ответы (1)


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

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

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

Get-Command cf
person Scott Baldwin    schedule 12.07.2016
comment
Спасибо за чаевые! Жаль, что мне нужно жестко закодировать это в PS. - person timmy; 12.07.2016