parenting 0.1.5 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/parenting/chore.rb +10 -3
- data/lib/parenting/version.rb +1 -1
- metadata +8 -10
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3cc74a4ff2b905440132cc497c0bbf8c161e8aac
|
4
|
+
data.tar.gz: 48fff464138060703071cc54711a78d5b74d5216
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ba134ce4d03e84abffae28e483033d9a5189c8c2a35c0bc38d49e6fc968cea9e904e29c842a19dabdbd358d7839d304e610eaf61f9720e54d244942bf2d0ec0e
|
7
|
+
data.tar.gz: 596f8f2a3367dda68f73e4fb12770d3848ca44578d9ff020432c49a686dce252348cbe2d1a7c45d76381ddafe40c571e3b6ddb05c4cc50ba6798a0e339b10e18
|
data/lib/parenting/chore.rb
CHANGED
@@ -1,13 +1,18 @@
|
|
1
1
|
module Parenting
|
2
2
|
class Chore
|
3
|
-
attr_accessor :on_success, :on_failure, :on_stderr, :exit_status
|
3
|
+
attr_accessor :on_start, :on_success, :on_failure, :on_stderr, :exit_status
|
4
4
|
attr_accessor :command, :stdin, :stdout, :stderr
|
5
5
|
attr_accessor :cost, :thread, :result
|
6
6
|
attr_accessor :deps, :name, :completed
|
7
7
|
|
8
8
|
def initialize(opts)
|
9
|
-
[:on_success, :on_failure, :on_stderr].each do |cb|
|
10
|
-
|
9
|
+
[:on_start, :on_success, :on_failure, :on_stderr].each do |cb|
|
10
|
+
if opts.key?(cb)
|
11
|
+
self.send :"#{cb}=", opts.fetch(cb).dup
|
12
|
+
else
|
13
|
+
# no-op
|
14
|
+
self.send :"#{cb}=", lambda {|o|}
|
15
|
+
end
|
11
16
|
end
|
12
17
|
|
13
18
|
self.name = opts[:name] || nil
|
@@ -28,6 +33,8 @@ module Parenting
|
|
28
33
|
end
|
29
34
|
|
30
35
|
def run!
|
36
|
+
self.on_start.call(self)
|
37
|
+
|
31
38
|
self.thread = Thread.new do
|
32
39
|
cmd = [self.command].flatten
|
33
40
|
Open3.popen3(* cmd) do |i, o, e, t|
|
data/lib/parenting/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: parenting
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.7
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Eric Mueller
|
9
8
|
autorequire:
|
10
9
|
bindir: scripts
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-02-19 00:00:00.000000000 Z
|
13
12
|
dependencies: []
|
14
13
|
description: Manage multiple child-processes via green threads
|
15
14
|
email: emueller@emcien.com
|
@@ -19,31 +18,30 @@ extra_rdoc_files: []
|
|
19
18
|
files:
|
20
19
|
- README.md
|
21
20
|
- lib/parenting.rb
|
22
|
-
- lib/parenting/chore.rb
|
23
21
|
- lib/parenting/boss.rb
|
22
|
+
- lib/parenting/chore.rb
|
24
23
|
- lib/parenting/version.rb
|
25
24
|
homepage: http://github.com/emcien/parenting
|
26
25
|
licenses: []
|
26
|
+
metadata: {}
|
27
27
|
post_install_message:
|
28
28
|
rdoc_options: []
|
29
29
|
require_paths:
|
30
30
|
- lib
|
31
31
|
required_ruby_version: !ruby/object:Gem::Requirement
|
32
|
-
none: false
|
33
32
|
requirements:
|
34
|
-
- -
|
33
|
+
- - ">="
|
35
34
|
- !ruby/object:Gem::Version
|
36
35
|
version: '0'
|
37
36
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
38
|
-
none: false
|
39
37
|
requirements:
|
40
|
-
- -
|
38
|
+
- - ">="
|
41
39
|
- !ruby/object:Gem::Version
|
42
40
|
version: '1'
|
43
41
|
requirements: []
|
44
42
|
rubyforge_project:
|
45
|
-
rubygems_version:
|
43
|
+
rubygems_version: 2.4.3
|
46
44
|
signing_key:
|
47
|
-
specification_version:
|
45
|
+
specification_version: 4
|
48
46
|
summary: Put those child-processes to WORK
|
49
47
|
test_files: []
|