lobster 0.2.4 → 0.2.5.pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/lobster/job.rb +17 -2
- data/lib/lobster/service.rb +1 -16
- data/lib/lobster/version.rb +1 -1
- metadata +13 -8
data/lib/lobster/job.rb
CHANGED
@@ -8,6 +8,21 @@ module Lobster
|
|
8
8
|
@name = name
|
9
9
|
Lobster.logger.info "Job #{name} created."
|
10
10
|
@pid = nil
|
11
|
+
|
12
|
+
rout, @wout = IO.pipe
|
13
|
+
rerr, @werr = IO.pipe
|
14
|
+
|
15
|
+
Thread.new do
|
16
|
+
while (line = rout.gets)
|
17
|
+
Lobster.logger.info "#{@name}: #{line.chomp}"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
Thread.new do
|
22
|
+
while (line = rerr.gets)
|
23
|
+
Lobster.logger.warn "#{@name}: #{line.chomp}"
|
24
|
+
end
|
25
|
+
end
|
11
26
|
end
|
12
27
|
|
13
28
|
def reload(options, lobster_dir)
|
@@ -54,12 +69,12 @@ module Lobster
|
|
54
69
|
end
|
55
70
|
end
|
56
71
|
|
57
|
-
def run
|
72
|
+
def run
|
58
73
|
Lobster.logger.info "Starting job #{@name}"
|
59
74
|
command_line = @user ? "sudo -inu #{@user} -- sh -c 'cd #{@directory}; #{@command}'" : @command
|
60
75
|
|
61
76
|
begin
|
62
|
-
@pid = spawn(command_line, :out
|
77
|
+
@pid = spawn(command_line, :out=>@wout, :err=>@werr, :chdir=> @directory)
|
63
78
|
rescue Exception => e
|
64
79
|
Lobster.logger.error "#{e}: error when starting job #{@name}"
|
65
80
|
@next_run = Time.now + 10
|
data/lib/lobster/service.rb
CHANGED
@@ -14,21 +14,6 @@ module Lobster
|
|
14
14
|
@config = config
|
15
15
|
@poll_delay = 60
|
16
16
|
|
17
|
-
rout, @wout = IO.pipe
|
18
|
-
rerr, @werr = IO.pipe
|
19
|
-
|
20
|
-
Thread.new do
|
21
|
-
while (line = rout.gets)
|
22
|
-
Lobster.logger.info line.chomp
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
Thread.new do
|
27
|
-
while (line = rerr.gets)
|
28
|
-
Lobster.logger.warn line.chomp
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
17
|
trap 'HUP' do
|
33
18
|
begin
|
34
19
|
@config.reload(@config[:lobster_dir], @config[:environment])
|
@@ -65,7 +50,7 @@ module Lobster
|
|
65
50
|
@job_list.jobs.each_value do |job|
|
66
51
|
job.check_last_run
|
67
52
|
if not job.running? and now >= job.next_run
|
68
|
-
job.run
|
53
|
+
job.run
|
69
54
|
end
|
70
55
|
end
|
71
56
|
@sleeping = true
|
data/lib/lobster/version.rb
CHANGED
metadata
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lobster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.5.pre
|
5
|
+
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Maxime Brugidou
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-07-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: daemons
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,7 +21,12 @@ dependencies:
|
|
21
21
|
version: 1.1.4
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.1.4
|
25
30
|
description: ''
|
26
31
|
email:
|
27
32
|
- m.brugidou@criteo.com
|
@@ -59,12 +64,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
59
64
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
60
65
|
none: false
|
61
66
|
requirements:
|
62
|
-
- - ! '
|
67
|
+
- - ! '>'
|
63
68
|
- !ruby/object:Gem::Version
|
64
|
-
version:
|
69
|
+
version: 1.3.1
|
65
70
|
requirements: []
|
66
71
|
rubyforge_project:
|
67
|
-
rubygems_version: 1.8.
|
72
|
+
rubygems_version: 1.8.23
|
68
73
|
signing_key:
|
69
74
|
specification_version: 3
|
70
75
|
summary: Simple loop job runner service.
|