Commit Graph

785 Commits

Author SHA1 Message Date
Klaas Jan Wierenga
baf842cdd4 The wrapped_command has spaces which triggers Ruby to fork a system shell (with /bin/sh -c). This causes orphaned processes on some systems (i.e. Linux). Fix this by splitting the command using String#shellsplit and using ruby's splat operator (*) to pass discrete arguments to spawn. 2013-05-02 16:30:39 +02:00
Klaas Jan Wierenga
5c06aaaa57 Enable ruby 1.8.7 building on Travis. All specs should pass now on ruby 1.8.7. 2013-05-02 12:49:05 +02:00
Klaas Jan Wierenga
75b782b664 Use POSIX::Spawn to make foreman ruby 1.8 compatible and have all specs passing. 2013-05-02 12:39:23 +02:00
Klaas Jan Wierenga
9b4bd10cdb Use pipe factory method to handle 1.8 incompatible signature for IO.pipe. 2013-05-02 12:37:06 +02:00
Klaas Jan Wierenga
fff82dc685 Ruby 1.8 doesn't have the concept of string encodings. Compare to the string as is. 2013-05-02 11:00:47 +02:00
David Dollar
da0a9f2de3 Merge pull request #294 from bfulton/master
add systemd export
2013-04-22 20:37:39 -07:00
Bright Fulton
7d77d8ff1a updated systemd export spec after rebasing included 5ef8bbdb 2013-04-20 13:48:27 -04:00
David Dollar
a92e24b17c changelog 2013-04-15 15:35:21 -04:00
David Dollar
0da42cf7d2 0.63.0 v0.63.0 2013-04-15 15:33:51 -04:00
David Dollar
23561b963c fix dotenv dependency 2013-04-15 15:32:27 -04:00
David Dollar
cc51ab2cb1 fix up tests 2013-04-15 15:32:22 -04:00
David Dollar
403d40b277 Revert "Merge pull request #292 from andrewsmedina/master"
Does not pass tests

This reverts commit 17a8a316b8, reversing
changes made to 9e1d590734.
2013-04-15 15:31:38 -04:00
Bright Fulton
669a920c1e fix spec after d4ab495 2013-04-15 14:43:02 -04:00
Bright Fulton
d357197718 better default for things which intentionally daemonize child processes, the default KillMode is control-group which survives daemonization 2013-04-15 14:43:02 -04:00
bfulton
f6b57d7b92 rough draft for systemd export support
http://0pointer.de/blog/projects/systemd.html

This adds support for exporting systemd targets and services.  The
structure is based on the existing upstart support.

Quality is draft and expected to refine in the coming weeks.

One Foremanism that is not respected by these export templates is the
usual log output location, instead stdout and stderr go to syslog.
2013-04-15 14:43:02 -04:00
David Dollar
f1c2347680 Merge pull request #317 from andymorris/fix_deleted_upstart_files
Prevent upstart export from deleting similarly named upstart files
2013-04-14 08:45:21 -07:00
David Dollar
80f8242b11 Merge pull request #316 from avtobiff/add-mit-license
Add MIT license text
2013-04-14 08:43:41 -07:00
David Dollar
383276bb79 Merge pull request #343 from steakknife/fix__issue_341__profile_not_found
Fixes #341 . .profile not found error
2013-04-14 08:41:58 -07:00
David Dollar
5a7692ff2c Merge pull request #326 from pje/patch-1
Update man/foreman.1
2013-04-14 08:40:50 -07:00
David Dollar
405a85bc86 Merge pull request #351 from GreenplumChorus/master
Remove posix-spawn dependency for JRuby
2013-04-14 08:40:10 -07:00
David Dollar
bff554d554 Merge pull request #347 from bkeepers/dotenv
Replace Foreman::Env with dotenv
2013-04-14 08:37:31 -07:00
David Dollar
eaed989c75 Merge pull request #329 from kentaro/permit-underscore-in-procfile
Permit hyphen for command name in Procfile
2013-04-14 08:32:24 -07:00
David Dollar
93daebbf1b Merge pull request #323 from dplummer/remove-tmux-from-man
Remove tmux option from man page
2013-04-14 08:31:40 -07:00
David Dollar
17a8a316b8 Merge pull request #292 from andrewsmedina/master
circus support
2013-04-14 08:30:17 -07:00
David Dollar
9e1d590734 Merge pull request #266 from messick/master
Use runlevels in upstart config so app starts after boot in Ubuntu 12.03
2013-04-14 08:28:08 -07:00
David Dollar
1cb1c8812a Merge pull request #352 from john-griffin/master
Restore ability to trap crtl+c
2013-04-11 07:59:52 -07:00
John Griffin
6786f4df39 Revert "Ensure foreman is the process group leader"
This reverts commit 44726e377e.

Conflicts:

	lib/foreman/engine.rb
2013-04-09 17:05:16 +01:00
Andrew Brown & Corey Downing
0be08a0651 remove posix-spawn dependency as it does not work in jruby 1.7.3 2013-04-04 17:27:31 -07:00
Brandon Keepers
3abe10e5ab Replace Foreman::Env with dotenv 2013-03-22 10:38:58 -04:00
Barry Allard
66ab0f08e7 [foreman-runner] fix sourcing as . is rarely in PATH 2013-03-16 00:04:57 -07:00
David Dollar
7be4375168 changelog 2013-03-08 14:53:56 -05:00
David Dollar
2ebb33e049 0.62.0 v0.62.0 2013-03-08 14:52:50 -05:00
David Dollar
9fe7ddb8bd Merge pull request #334 from ged/reentrant_signal_handlers
Add deferred signal-handling (fixes #332).
2013-03-08 11:41:12 -08:00
David Dollar
f954a42ecb Merge pull request #335 from ged/20_encoding_fix
Fix spec encoding problem under Ruby 2.0.0.
2013-03-08 11:40:50 -08:00
Michael Granger
169188376b Try to allow children to shut down gracefully
Since signals will no longer be handled once foreman goes into
`terminate_gracefully`, default signal handlers are restored so as
not to cause it to get stuck in an unTERMable state.

This necessitates not using the process group for signalling
except as a last resort, as foreman itself will receive the signals
it sends. This splits `killall` into two methods, one which
signals only processes foreman itself has started, and one which
signals all processes in the process group to try to clean up
more aggressively, and then reworks `terminate_gracefully` to use
them.
2013-03-04 14:05:53 -08:00
Michael Granger
5ab08c608b Add deferred signal-handling (fixes #332).
This uses a thread-local queue and a self-pipe so the code in the
trap blocks is properly re-entrant.

For details, see:

  * http://cr.yp.to/docs/selfpipe.html
  * http://blog.rubybestpractices.com/posts/ewong/016-Implementing-Signal-Handlers.html
2013-03-04 13:28:37 -08:00
Michael Granger
0b5c1f919e Fix spec encoding problem under Ruby 2.0.0. 2013-03-04 13:03:13 -08:00
David Dollar
c94aa13b06 add ruby 2.0 to travis 2013-03-04 13:11:05 -05:00
Kentaro Kuribayashi
8d1e3a849f Fixed specs to pass. 2013-02-21 11:52:37 +09:00
Kentaro Kuribayashi
5ef8bbdbe3 Permit underscore for command name in Procfile. 2013-02-21 11:30:59 +09:00
David Dollar
4e84b92536 Merge pull request #327 from patheticpat/master
Fixed a typo in cli options description
2013-02-14 06:23:57 -08:00
Michael Kaiser
6215f8b3db Fixed a typo in cli options description 2013-02-14 14:45:44 +01:00
Patrick Ellis
8cf5896c3e Update man/foreman.1
fix man example typo: Procfile flag is `-f`, not `-p`
2013-02-05 16:29:38 -08:00
Donald Plummer
5f8032cac8 Remove tmux option from man page
Not well supported at this time. See issue #242
2013-01-30 09:29:16 -08:00
Andy Morris
9f3b903085 Prevent upstart export from deleting similarly named upstart files 2013-01-25 00:24:04 -06:00
Per Andersson
69d278d864 Add MIT license text 2013-01-22 10:10:41 +01:00
David Dollar
ba9167152c handled by mingw now 2013-01-14 08:21:40 -05:00
David Dollar
f31ff18191 update docs 2013-01-14 08:19:40 -05:00
David Dollar
c42110e438 update changelog 2013-01-14 08:19:31 -05:00
David Dollar
26bb0ed54e 0.61.0 v0.61.0 2013-01-14 08:18:05 -05:00