How to keep Unix process alive after job is completed?

1,279 views
Skip to first unread message

hezjing

unread,
Apr 26, 2013, 4:08:35 AM4/26/13
to jenkins...@googlegroups.com
Hi

I have a job which will be run in an Linux slave.

This job will execute a shell command to start a server process which will run forever. Unfortunately this process is terminated when the job is finished.

When I tested this using PuTTY, the server process is still alive after I logged-in and out several times.

May I know how to keep a Unix process alive after the job is completed?


--

Hez

Riccardo Foschia

unread,
Apr 26, 2013, 4:16:04 AM4/26/13
to jenkins...@googlegroups.com
Hi,

Take a look at
https://wiki.jenkins-ci.org/display/JENKINS/ProcessTreeKiller section
"If your build wants to leave a daemon running behind..."

Greetings,
Riccardo
META-LEVEL Software AG
Saarbrücker Str. 51
66130 Saarbrücken
Deutschland
Tel: +49 - 681 / 99687-0
Fax: +49 - 681 / 99687-99
Mail: in...@meta-level.de
Web: www.meta-level.de

Rechtsform: Aktiengesellschaft
Sitz: Saarbrücken
HR B Nr. 13 380 Amtsgericht Saarbrücken
USt-IdNr. DE 1 38 166667
Vorstände: Dipl.-Inform. Peter Badt und Dipl.-Inform. Peter Raber
Vorsitzender des Aufsichtsrats: Reinhard Kuhn

hezjing

unread,
Apr 28, 2013, 10:05:56 PM4/28/13
to jenkins...@googlegroups.com
Thanks, it works by create a job parameter BUILD_ID=dontKillMe




--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.





--

Hez

rakesh menon

unread,
Apr 29, 2013, 2:16:40 AM4/29/13
to jenkins...@googlegroups.com
Hi hezjing,

I have a same issue . Was adding the above parameter the only thing you did or do we do any other additional steps?

Thanks


To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.

hezjing

unread,
Apr 29, 2013, 2:22:06 AM4/29/13
to jenkins...@googlegroups.com
Yes, Rakesh


On Mon, Apr 29, 2013 at 2:21 PM, hezjing <hez...@gmail.com> wrote:
Hi Rakesh
--

Hez



--

Hez

hezjing

unread,
Apr 29, 2013, 2:21:45 AM4/29/13
to jenkins...@googlegroups.com
Hi Rakesh


On Mon, Apr 29, 2013 at 2:16 PM, rakesh menon <rakes...@gmail.com> wrote:



--

Hez

John Vacz

unread,
Jul 3, 2013, 6:42:10 AM7/3/13
to jenkins...@googlegroups.com
We have a job executing a shell script (on a slave) to restart one dev appserver on a remote server if it does not work properly (dont bother why its not working):

  # BUILD_ID=dontKillMe
  ssh us...@some.remote.server exec /path/to/appserver/force_restart_script arg1

The "force_restart_script" on the remote server doing the following:

  # find and kill the old appserver process
  kill_appserver_script arg1
  # start appserver with specified argument
  /path/to/appserver/start_appserver_script arg1

At the end, the old appserver process was killed, and the new appserver process was also terminated. How can i keep this from happening? The BUILD_ID=dontKillMe in job configureation doesn't seem to work (that would only keep the ssh from being terminated on the slave, right?), or I should actually set the BUILD_ID in the remote ssh shell?

Any help is very much appreciated!

-jv

Tim Ford

unread,
Jul 3, 2013, 11:45:02 AM7/3/13
to jenkins...@googlegroups.com, mailing.lis...@googlemail.com

Richard Bywater

unread,
Jul 3, 2013, 6:01:56 PM7/3/13
to jenkins...@googlegroups.com
Could you just have the server process setup as a service and then "start" the service?

Richard.

--

John Vacz

unread,
Jul 4, 2013, 4:02:02 AM7/4/13
to jenkins...@googlegroups.com, Tim Ford
Looks very promising. I will give it a try.
Thank you, Tim.

-jv
Reply all
Reply to author
Forward
0 new messages