uc 0.1.8 → 0.1.9
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.
- checksums.yaml +4 -4
- data/lib/uc/config.rb +4 -0
- data/lib/uc/event.rb +26 -0
- data/lib/uc/event_stream.rb +3 -38
- data/lib/uc/server.rb +1 -1
- data/lib/uc/templates/unicorn.erb +1 -1
- data/lib/uc/unicorn/api.rb +6 -3
- data/lib/uc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 724f9c77ea7473dee5f2f3427b6ae2f279b69a43
|
|
4
|
+
data.tar.gz: 27e2107ce9b1209162b87f36e95f066dd0b41202
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4cb767292f1156fdbe85a43e2c1b460bff89e5c47a5d891395e3e6f7f8a8f94bb27502bb8338f87382421c80c39d9716461611599b7683833e570e10c62624f2
|
|
7
|
+
data.tar.gz: 01cd764d07c801328b4deff7c7a05f9c82a7f944856305f50bcc485db9a3509f743e1695924acaa123cb30f5fe0f1a92a6144794d9b3879efb4b6830b959ff34
|
data/lib/uc/config.rb
CHANGED
data/lib/uc/event.rb
CHANGED
|
@@ -1,4 +1,30 @@
|
|
|
1
1
|
module Uc
|
|
2
2
|
class Event < ::Struct.new(:type, :msg)
|
|
3
|
+
|
|
4
|
+
def self.parse(event_str)
|
|
5
|
+
arr = event_str.split("|", 2)
|
|
6
|
+
if arr.length == 2
|
|
7
|
+
type, msg = arr[0], arr[1]
|
|
8
|
+
else
|
|
9
|
+
type, msg = "unknown", event_str
|
|
10
|
+
end
|
|
11
|
+
new(type, msg)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def to_s(size = nil)
|
|
15
|
+
str = "#{type}|#{msg}"
|
|
16
|
+
size ? truncate(str, size) : str
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def truncate(str, size)
|
|
22
|
+
if str.size <= size
|
|
23
|
+
str
|
|
24
|
+
else
|
|
25
|
+
"#{str[0, size - 3] }..."
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
3
29
|
end
|
|
4
30
|
end
|
data/lib/uc/event_stream.rb
CHANGED
|
@@ -29,30 +29,13 @@ module Uc
|
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
def pub(type, msg)
|
|
32
|
-
|
|
33
|
-
writer.send
|
|
32
|
+
event = Event.new(type, msg)
|
|
33
|
+
writer.send event.to_s(mq.msg_size)
|
|
34
34
|
rescue Errno::ENOENT, Errno::EAGAIN, Errno::EACCES, Errno::EMSGSIZE => e
|
|
35
35
|
puts "#{e.class} #{e.message}"
|
|
36
36
|
end
|
|
37
37
|
|
|
38
|
-
def truncate(msg)
|
|
39
|
-
if msg.size <= mq.msg_size
|
|
40
|
-
return msg
|
|
41
|
-
else
|
|
42
|
-
msg = "#{msg[0, mq.msg_size - 3] }..."
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
38
|
def expect(event_type, timeout: 30, recreate: true, &block)
|
|
47
|
-
mq.recreate if recreate
|
|
48
|
-
mq.clear
|
|
49
|
-
yield
|
|
50
|
-
wait(event_type, timeout, output: true)
|
|
51
|
-
rescue => e
|
|
52
|
-
raise uc_error(e)
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
def expect_in_background(event_type, timeout: 30, recreate: true, &block)
|
|
56
39
|
begin
|
|
57
40
|
mq.recreate if recreate
|
|
58
41
|
mq.clear
|
|
@@ -76,7 +59,7 @@ module Uc
|
|
|
76
59
|
loop do
|
|
77
60
|
r.receive(message, t)
|
|
78
61
|
t = timeout
|
|
79
|
-
event = parse message
|
|
62
|
+
event = Event.parse message
|
|
80
63
|
print event if output
|
|
81
64
|
break if event.type == event_type
|
|
82
65
|
end
|
|
@@ -117,24 +100,6 @@ module Uc
|
|
|
117
100
|
|
|
118
101
|
private
|
|
119
102
|
|
|
120
|
-
def read(timeout)
|
|
121
|
-
event = ""
|
|
122
|
-
reader do |r|
|
|
123
|
-
r.receive(event, timeout)
|
|
124
|
-
parse event
|
|
125
|
-
end
|
|
126
|
-
end
|
|
127
|
-
|
|
128
|
-
def parse(event_str)
|
|
129
|
-
arr = event_str.split("|",2)
|
|
130
|
-
if arr.length == 2
|
|
131
|
-
type, msg = arr[0], arr[1]
|
|
132
|
-
else
|
|
133
|
-
type, msg = "unknown", event
|
|
134
|
-
end
|
|
135
|
-
event = ::Uc::Event.new(type, msg)
|
|
136
|
-
end
|
|
137
|
-
|
|
138
103
|
def mq
|
|
139
104
|
@mq ||= ::Uc::Mqueue.new(@queue_name)
|
|
140
105
|
end
|
data/lib/uc/server.rb
CHANGED
|
@@ -29,7 +29,7 @@ module Uc
|
|
|
29
29
|
return
|
|
30
30
|
end
|
|
31
31
|
ENV["UNICORN_APP_DIR"] = config.app_dir
|
|
32
|
-
event_stream.
|
|
32
|
+
event_stream.expect :fin do
|
|
33
33
|
cmd %{unicorn -c #{uconfig.path} -D -E #{rails_env} }, return_output: false,
|
|
34
34
|
error_msg: "error starting unicorn"
|
|
35
35
|
end
|
data/lib/uc/unicorn/api.rb
CHANGED
|
@@ -75,7 +75,7 @@ module Uc; module Unicorn
|
|
|
75
75
|
end
|
|
76
76
|
|
|
77
77
|
def clean_env
|
|
78
|
-
return if
|
|
78
|
+
return if uc_config.config[:skip_clean_env]
|
|
79
79
|
ENV.delete "BUNDLE_BIN_PATH"
|
|
80
80
|
ENV.delete "RUBYLIB"
|
|
81
81
|
ENV.delete "RUBYOPT"
|
|
@@ -86,8 +86,7 @@ module Uc; module Unicorn
|
|
|
86
86
|
end
|
|
87
87
|
|
|
88
88
|
def load_env
|
|
89
|
-
|
|
90
|
-
config.load_env
|
|
89
|
+
uc_config.load_env
|
|
91
90
|
end
|
|
92
91
|
|
|
93
92
|
def cleaned_path
|
|
@@ -107,6 +106,10 @@ module Uc; module Unicorn
|
|
|
107
106
|
@original_env = ENV.to_h
|
|
108
107
|
end
|
|
109
108
|
|
|
109
|
+
def uc_config
|
|
110
|
+
@uc_config ||= ::Uc::Config.new(Dir.pwd)
|
|
111
|
+
end
|
|
112
|
+
|
|
110
113
|
end
|
|
111
114
|
|
|
112
115
|
end; end
|
data/lib/uc/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: uc
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Neeraj
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-03-
|
|
11
|
+
date: 2015-03-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|