Начиная Glassfish с Гудзона - PullRequest
       5

Начиная Glassfish с Гудзона

0 голосов
/ 07 сентября 2011

Я использую Hudson как для CI, так и для перезапуска сервера Glassfish. Это удобно, так как не требует доступа по ssh.

Простое задание hudson с командой shell, используемой для работы:

 cd /opt/glassfish3/glassfish/bin;
./asadmin start-domain domain1;

Но с некоторого времени (не помню, когда) это работает очень странно: работа зависает, пока процедура запуска не завершится и не завершится, в журнале нет исключений:

[# | 2011-09-07T02: 36: 06,280 + 0400 | INFO | glassfish3.1 | javax.enterprise.system.core.com.sun.enterprise.v3.server | _ThreadID = 1; _ThreadName = резьбовых 1; | GlassFish Server Open Source Edition 3.1 (43) время запуска: Феликс (3022 мс), службы запуска (38 884 мс), всего (41 906 мс) | #]

Но GF фактически не запущен! В системе такого процесса нет! Так что я должен сделать то же самое вручную из консоли ssh ... Кажется, процесс для GF завершается, как только завершается задание hudson.

Спасибо, Антон

Ответы [ 3 ]

1 голос
/ 07 сентября 2011

Может быть, поведение Хадсона изменилось по сравнению с разворотом процесса. Вы также можете запустить GlassFish во встроенном режиме (в процессе): http://embedded -glassfish.java.net / nonav / apidocs / , http://weblogs.java.net/blog/bhavanishankar/archive/2011/03/02/quick-introduction-embeddability-glassfish-open-source-edition-31 или используя:

java -jar glassfish/modules/glassfish.jar

(обратите внимание, что вы можете опустить доменное имя, если настроен только один домен).

0 голосов
/ 11 октября 2012

Еще один способ решения проблемы - просто добавьте следующие строки в начале jenkins.

java -Dhudson.util.ProcessTreeKiller.disable = true -jar jenkins.war

0 голосов
/ 18 сентября 2011

Нашел ответ.Есть и другие способы, но самый простой - очень любопытные :).Просто используйте переменную env:

BUILD_ID=dontKillMe

и все!Это говорит Дженкинсу не завершать процессы, запущенные этим заданием.В качестве плагина для установки этих переменных я использую Jenkins Environment Inject Plug-in

Надеюсь, это поможет кому-то еще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...