Ответ 1
Как упоминалось в этом ответе, начиная с версии 2.4 Pipeline: Узлы и процессы вы можете использовать:
def out = sh script: '/usr/local/bin/idevice_id -l', returnStdout: true
Я использую плагин Jenkins Pipeline для выполнения конвейера iOS Checkout-Build-Test-Deploy.
Один шаг включает проверку того, действительно ли подключена iDevice (иначе остальные шаги не будут выполнены).
Я хочу выполнить команду оболочки idevice_id -l
(из libimobiledevice), которая будет распечатывать идентификатор устройства подключенного устройства или сбой, если ничего не подключено,
Итак, шаги, которые я им представляю, будут такими:
sh "/usr/local/bin/idevice_id -l"
Я прочитал большинство официальных документов, но сделал пустую. Как проанализировать вывод шага sh
?
Если я приближаюсь к этому неправильно, любые другие предложения приветствуются.
Как упоминалось в этом ответе, начиная с версии 2.4 Pipeline: Узлы и процессы вы можете использовать:
def out = sh script: '/usr/local/bin/idevice_id -l', returnStdout: true
Официальным методом является перенаправление вывода в файл и чтение файла
Если выходной файл пуст, вы можете завершить работу с помощью команды script