Остановить пакетную команду windows на jenkins - PullRequest
0 голосов
/ 15 мая 2018

Я использую Jenkins 2.118 в Windows 7. Я создал проект в стиле фристайл и использовал пользовательское рабочее пространство.

Я добавил команду «Выполнить Windows» следующим образом. enter image description here

AutoStart.exe - это консольное приложение без пользовательского интерфейса, которое, в свою очередь, запускает некоторые дочерние исполняемые файлы. Как только я запускаю сборку, AutoStart.exe отображается в диспетчере задач, и он запускает другой исполняемый файл. После того, как некоторые дочерние программы выполнили некоторую работу по автоматизации, AutoStarted убьет дочернюю программу и завершит свою работу. Теперь сборка Jenkins прошла успешно. Все работает нормально.

Теперь то, что я хочу сделать, - это когда сборка выполняется, и если я вручную прерываю сборку jenkins с помощью кнопки [x], enter image description here Мне нужно остановить работу по автоматизации и убить ребенка-бывшего.

Что я уже сделал?

Я предполагаю, что после прекращения сборки AutoStart.exe будет убит Дженкинсом, и я пишу логику для уничтожения дочерних файлов exe в событии выхода (взято из здесь ) AutoStart.exe. Точка останова никогда не срабатывает в функции выхода, и я все еще вижу AutoStart.exe в диспетчере задач.

  • Кто-нибудь знает, что именно происходит с exe-файлом в пакетной команде Windows, когда jenkins прерывается или сборка завершается?
  • Есть ли способ выйти из AutoStart.exe после прерывания?
  • Есть ли способ вызвать другого exe, чтобы убить дочернего exe в некоторых действиях пост-сборки в jenkins?
  • Или любые другие идеи или предложения для достижения этой цели.

Любая помощь очень ценится. Спасибо.

1 Ответ

0 голосов
/ 15 мая 2018

Как уже упоминалось здесь , даже если вы прервете задание, будет запущена «Задача после сборки».Таким образом, вы можете выполнить некоторые действия, такие как выявление и уничтожение exe ребенка.

...