Плагин Jenkins Pipeline: выполнить вывод оболочки и синтаксического анализа

Я использую плагин Jenkins Pipeline для выполнения конвейера iOS Checkout-Build-Test-Deploy.

Один шаг включает проверку того, действительно ли подключена iDevice (иначе остальные шаги не будут выполнены).

Я хочу выполнить команду оболочки idevice_id -l (из libimobiledevice), которая будет распечатывать идентификатор устройства подключенного устройства или сбой, если ничего не подключено,

Итак, шаги, которые я им представляю, будут такими:

  • Выполнить команду sh "/usr/local/bin/idevice_id -l"
  • разобрать выход как-то
  • сбой, если эта команда ничего не возвращает.

Я прочитал большинство официальных документов, но сделал пустую. Как проанализировать вывод шага sh? Если я приближаюсь к этому неправильно, любые другие предложения приветствуются.

Ответ 2

Официальным методом является перенаправление вывода в файл и чтение файла

Если выходной файл пуст, вы можете завершить работу с помощью команды script

Пример для github