Psexec отображает только первую строку через Jenkins

Я пытаюсь запустить удаленную команду с помощью psexec через Jenkins. Если я запустил команду напрямую через командную строку, я получу ожидаемый результат. Если я запускаю ту же самую команду через Jenkins, кажется, что выводится только первая строка.

Как я могу заставить Jenkins / PSExec / CMD отображать полный вывод stdout? Я пробовал несколько флагов командной строки, таких как запуск PSExec в интерактивном режиме (-i, -i 0, -i 1), и другие параметры, которые кажутся актуальными, и даже те, которые не подходят.

Пример команды:

PsExec.exe -accepteula \server cmd /c ipconfig

Вывод командной строки:

PsExec v2.11 — Execute processes remotely Copyright (C) 2001-2014 Mark Russinovich Sysinternals — www.sysinternals.com Windows IP Configuration Ethernet adapter Local Area Connection: Connection-specific DNS Suffix . : Link-local IPv6 Address . . . . . : fe30::f175:1634:asf4:756e%12 IPv4 Address. . . . . . . . . . . : 10.128.51.66 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 10.128.51.1 Tunnel adapter isatap.{5EA7E8FB-C491-483E-B24D-3CBDFA2D5619}: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Tunnel adapter Local Area Connection* 11: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : cmd exited on tst-hrm-app03.nexjtest.local with error code 0.

Выход Jenkins:

C:NexJjboss-5.1.0.GAserverall_8280jenkinsworkspaceBuild and Deploy TEST>PsExec.exe -accepteula \server ipconfig PsExec v2.11 — Execute processes remotely Copyright (C) 2001-2014 Mark Russinovich Sysinternals — www.sysinternals.com Windows IP Configuration Connecting to tst-hrm-app03.nexjtest.local… Starting PSEXESVC service on tst-hrm-app03.nexjtest.local… Connecting with PsExec service on tst-hrm-app03.nexjtest.local… Starting ipconfig on tst-hrm-app03.nexjtest.local… ipconfig exited on tst-hrm-app03.nexjtest.local with error code 0.

Я только что тестировал Дженкинса, и у меня это сработало. Вы можете протестировать другие команды, более простые команды, такие как dir. Кроме того, Jenkins имеет тенденцию изменять порядок или stdout / stderr, поэтому я запустил службу PSEXESVC после того, как ipconfig распечатал вывод. И, кстати, если вы хотите получить IP-адрес, почему бы вам не пропинговать машину, используя ее имя (если вы не хотите получить все сетевые карты и MAC-адреса)   —  person leeman24    schedule 23.06.2016

На самом деле я использовал ipconfig как более простую команду. Фактическая команда будет вызовом сценария сборки и развертывания (который работает, но не отображает вывод). В итоге я использовал альтернативу под названием paexec (которая меня не волнует), но я могу видеть весь вывод. Я бы по-прежнему предпочел использовать psexec, но у меня не хватило вещей, чтобы попробовать. Какую версию вы используете?   —  person leeman24    schedule 24.06.2016

та же версия psexec, что и вы. Но, возможно, не та версия Дженкинса.   —  person leeman24    schedule 24.06.2016

Источник: ledsshop.ru

Стиль жизни - Здоровье!