souffle 0.0.1 → 0.0.2
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/Gemfile +9 -3
- data/README.md +6 -0
- data/bin/{souffle-server → souffle} +0 -0
- data/lib/souffle.rb +8 -8
- data/lib/souffle/application.rb +15 -10
- data/lib/souffle/application/souffle-server.rb +90 -5
- data/lib/souffle/config.rb +88 -59
- data/lib/souffle/daemon.rb +156 -0
- data/lib/souffle/exceptions.rb +29 -17
- data/lib/souffle/http.rb +43 -0
- data/lib/souffle/log.rb +11 -14
- data/lib/souffle/node.rb +91 -53
- data/lib/souffle/node/runlist.rb +16 -18
- data/lib/souffle/node/runlist_item.rb +43 -36
- data/lib/souffle/node/runlist_parser.rb +60 -62
- data/lib/souffle/polling_event.rb +110 -0
- data/lib/souffle/provider.rb +231 -23
- data/lib/souffle/provider/aws.rb +654 -7
- data/lib/souffle/provider/vagrant.rb +42 -5
- data/lib/souffle/provisioner.rb +55 -0
- data/lib/souffle/provisioner/node.rb +157 -0
- data/lib/souffle/provisioner/system.rb +195 -0
- data/lib/souffle/redis_client.rb +8 -0
- data/lib/souffle/redis_mixin.rb +40 -0
- data/lib/souffle/server.rb +42 -8
- data/lib/souffle/ssh_monkey.rb +8 -0
- data/lib/souffle/state.rb +16 -0
- data/lib/souffle/system.rb +139 -37
- data/lib/souffle/template.rb +30 -0
- data/lib/souffle/templates/Vagrantfile.erb +41 -0
- data/lib/souffle/version.rb +6 -0
- data/spec/config_spec.rb +20 -0
- data/spec/log_spec.rb +24 -0
- data/spec/{runlist_parser_spec.rb → node/runlist_parser_spec.rb} +1 -1
- data/spec/{runlist_spec.rb → node/runlist_spec.rb} +1 -1
- data/spec/node_spec.rb +43 -8
- data/spec/provider_spec.rb +56 -0
- data/spec/providers/aws_provider_spec.rb +114 -0
- data/spec/providers/vagrant_provider_spec.rb +22 -0
- data/spec/provisioner_spec.rb +47 -0
- data/spec/spec_helper.rb +8 -0
- data/spec/system_spec.rb +242 -13
- data/spec/template_spec.rb +20 -0
- data/spec/templates/example_template.erb +1 -0
- metadata +125 -30
- data/bin/souffle-worker +0 -7
- data/lib/souffle/application/souffle-worker.rb +0 -46
- data/lib/souffle/providers.rb +0 -2
- data/lib/souffle/worker.rb +0 -14
@@ -0,0 +1,20 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
describe "Souffle::Template" do
|
4
|
+
it "should generate a reasonable default template path" do
|
5
|
+
temp_path = File.expand_path(
|
6
|
+
File.join(File.dirname(__FILE__),
|
7
|
+
'..', 'lib', 'souffle', 'templates'))
|
8
|
+
Souffle::Template.template_path.should eql(temp_path)
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should be able to generate an example template" do
|
12
|
+
sample_binding = OpenStruct.new
|
13
|
+
sample_binding.name = "bob"
|
14
|
+
|
15
|
+
template = Souffle::Template.new(
|
16
|
+
"../../../spec/templates/example_template.erb")
|
17
|
+
template.render(sample_binding).should eql(
|
18
|
+
"some random erb template bob\n")
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
some random erb template <%= name %>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: souffle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: yajl-ruby
|
@@ -75,6 +75,38 @@ dependencies:
|
|
75
75
|
- - ~>
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: 1.1.2
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: em-ssh
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ~>
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 0.4.0
|
86
|
+
type: :runtime
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 0.4.0
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: em-synchrony
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ~>
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: 0.2.0
|
102
|
+
type: :runtime
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 0.2.0
|
78
110
|
- !ruby/object:Gem::Dependency
|
79
111
|
name: right_aws
|
80
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -91,6 +123,38 @@ dependencies:
|
|
91
123
|
- - ~>
|
92
124
|
- !ruby/object:Gem::Version
|
93
125
|
version: 3.0.4
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: tilt
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ~>
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 1.3.3
|
134
|
+
type: :runtime
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ~>
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 1.3.3
|
142
|
+
- !ruby/object:Gem::Dependency
|
143
|
+
name: redis
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
146
|
+
requirements:
|
147
|
+
- - ~>
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: 3.0.1
|
150
|
+
type: :runtime
|
151
|
+
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ~>
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: 3.0.1
|
94
158
|
- !ruby/object:Gem::Dependency
|
95
159
|
name: mixlib-cli
|
96
160
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,7 +162,7 @@ dependencies:
|
|
98
162
|
requirements:
|
99
163
|
- - ! '>='
|
100
164
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
165
|
+
version: 1.2.2
|
102
166
|
type: :runtime
|
103
167
|
prerelease: false
|
104
168
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -106,7 +170,7 @@ dependencies:
|
|
106
170
|
requirements:
|
107
171
|
- - ! '>='
|
108
172
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
173
|
+
version: 1.2.2
|
110
174
|
- !ruby/object:Gem::Dependency
|
111
175
|
name: mixlib-config
|
112
176
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,45 +204,61 @@ dependencies:
|
|
140
204
|
- !ruby/object:Gem::Version
|
141
205
|
version: 1.3.0
|
142
206
|
- !ruby/object:Gem::Dependency
|
143
|
-
name:
|
207
|
+
name: thin
|
144
208
|
requirement: !ruby/object:Gem::Requirement
|
145
209
|
none: false
|
146
210
|
requirements:
|
147
211
|
- - ~>
|
148
212
|
- !ruby/object:Gem::Version
|
149
|
-
version:
|
150
|
-
type: :
|
213
|
+
version: 1.4.1
|
214
|
+
type: :runtime
|
151
215
|
prerelease: false
|
152
216
|
version_requirements: !ruby/object:Gem::Requirement
|
153
217
|
none: false
|
154
218
|
requirements:
|
155
219
|
- - ~>
|
156
220
|
- !ruby/object:Gem::Version
|
157
|
-
version:
|
221
|
+
version: 1.4.1
|
158
222
|
- !ruby/object:Gem::Dependency
|
159
|
-
name:
|
223
|
+
name: rack
|
160
224
|
requirement: !ruby/object:Gem::Requirement
|
161
225
|
none: false
|
162
226
|
requirements:
|
163
227
|
- - ~>
|
164
228
|
- !ruby/object:Gem::Version
|
165
|
-
version:
|
166
|
-
type: :
|
229
|
+
version: 1.4.1
|
230
|
+
type: :runtime
|
167
231
|
prerelease: false
|
168
232
|
version_requirements: !ruby/object:Gem::Requirement
|
169
233
|
none: false
|
170
234
|
requirements:
|
171
235
|
- - ~>
|
172
236
|
- !ruby/object:Gem::Version
|
173
|
-
version:
|
237
|
+
version: 1.4.1
|
174
238
|
- !ruby/object:Gem::Dependency
|
175
|
-
name:
|
239
|
+
name: sinatra
|
176
240
|
requirement: !ruby/object:Gem::Requirement
|
177
241
|
none: false
|
178
242
|
requirements:
|
179
243
|
- - ~>
|
180
244
|
- !ruby/object:Gem::Version
|
181
|
-
version:
|
245
|
+
version: 1.3.2
|
246
|
+
type: :runtime
|
247
|
+
prerelease: false
|
248
|
+
version_requirements: !ruby/object:Gem::Requirement
|
249
|
+
none: false
|
250
|
+
requirements:
|
251
|
+
- - ~>
|
252
|
+
- !ruby/object:Gem::Version
|
253
|
+
version: 1.3.2
|
254
|
+
- !ruby/object:Gem::Dependency
|
255
|
+
name: rspec
|
256
|
+
requirement: !ruby/object:Gem::Requirement
|
257
|
+
none: false
|
258
|
+
requirements:
|
259
|
+
- - ~>
|
260
|
+
- !ruby/object:Gem::Version
|
261
|
+
version: 2.10.0
|
182
262
|
type: :development
|
183
263
|
prerelease: false
|
184
264
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -186,15 +266,15 @@ dependencies:
|
|
186
266
|
requirements:
|
187
267
|
- - ~>
|
188
268
|
- !ruby/object:Gem::Version
|
189
|
-
version:
|
269
|
+
version: 2.10.0
|
190
270
|
- !ruby/object:Gem::Dependency
|
191
|
-
name:
|
271
|
+
name: yard
|
192
272
|
requirement: !ruby/object:Gem::Requirement
|
193
273
|
none: false
|
194
274
|
requirements:
|
195
275
|
- - ~>
|
196
276
|
- !ruby/object:Gem::Version
|
197
|
-
version:
|
277
|
+
version: '0.8'
|
198
278
|
type: :development
|
199
279
|
prerelease: false
|
200
280
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -202,15 +282,15 @@ dependencies:
|
|
202
282
|
requirements:
|
203
283
|
- - ~>
|
204
284
|
- !ruby/object:Gem::Version
|
205
|
-
version:
|
285
|
+
version: '0.8'
|
206
286
|
- !ruby/object:Gem::Dependency
|
207
|
-
name:
|
287
|
+
name: redcarpet
|
208
288
|
requirement: !ruby/object:Gem::Requirement
|
209
289
|
none: false
|
210
290
|
requirements:
|
211
291
|
- - ~>
|
212
292
|
- !ruby/object:Gem::Version
|
213
|
-
version:
|
293
|
+
version: 2.1.1
|
214
294
|
type: :development
|
215
295
|
prerelease: false
|
216
296
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -218,7 +298,7 @@ dependencies:
|
|
218
298
|
requirements:
|
219
299
|
- - ~>
|
220
300
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
301
|
+
version: 2.1.1
|
222
302
|
- !ruby/object:Gem::Dependency
|
223
303
|
name: cucumber
|
224
304
|
requirement: !ruby/object:Gem::Requirement
|
@@ -302,8 +382,7 @@ dependencies:
|
|
302
382
|
description: An orchestrator to create entire chef environments
|
303
383
|
email: joshtoft@gmail.com
|
304
384
|
executables:
|
305
|
-
- souffle
|
306
|
-
- souffle-worker
|
385
|
+
- souffle
|
307
386
|
extensions: []
|
308
387
|
extra_rdoc_files:
|
309
388
|
- LICENSE.txt
|
@@ -315,37 +394,53 @@ files:
|
|
315
394
|
- LICENSE.txt
|
316
395
|
- README.md
|
317
396
|
- Rakefile
|
318
|
-
- bin/souffle
|
319
|
-
- bin/souffle-worker
|
397
|
+
- bin/souffle
|
320
398
|
- features/souffle.feature
|
321
399
|
- features/step_definitions/souffle_steps.rb
|
322
400
|
- features/support/env.rb
|
323
401
|
- lib/souffle.rb
|
324
402
|
- lib/souffle/application.rb
|
325
403
|
- lib/souffle/application/souffle-server.rb
|
326
|
-
- lib/souffle/application/souffle-worker.rb
|
327
404
|
- lib/souffle/config.rb
|
405
|
+
- lib/souffle/daemon.rb
|
328
406
|
- lib/souffle/exceptions.rb
|
407
|
+
- lib/souffle/http.rb
|
329
408
|
- lib/souffle/log.rb
|
330
409
|
- lib/souffle/node.rb
|
331
410
|
- lib/souffle/node/runlist.rb
|
332
411
|
- lib/souffle/node/runlist_item.rb
|
333
412
|
- lib/souffle/node/runlist_parser.rb
|
413
|
+
- lib/souffle/polling_event.rb
|
334
414
|
- lib/souffle/provider.rb
|
335
415
|
- lib/souffle/provider/aws.rb
|
336
416
|
- lib/souffle/provider/vagrant.rb
|
337
|
-
- lib/souffle/
|
417
|
+
- lib/souffle/provisioner.rb
|
418
|
+
- lib/souffle/provisioner/node.rb
|
419
|
+
- lib/souffle/provisioner/system.rb
|
420
|
+
- lib/souffle/redis_client.rb
|
421
|
+
- lib/souffle/redis_mixin.rb
|
338
422
|
- lib/souffle/server.rb
|
423
|
+
- lib/souffle/ssh_monkey.rb
|
424
|
+
- lib/souffle/state.rb
|
339
425
|
- lib/souffle/system.rb
|
340
|
-
- lib/souffle/
|
426
|
+
- lib/souffle/template.rb
|
427
|
+
- lib/souffle/templates/Vagrantfile.erb
|
428
|
+
- lib/souffle/version.rb
|
341
429
|
- spec/config/example.json
|
342
430
|
- spec/config/example.rb
|
343
431
|
- spec/config_spec.rb
|
432
|
+
- spec/log_spec.rb
|
433
|
+
- spec/node/runlist_parser_spec.rb
|
434
|
+
- spec/node/runlist_spec.rb
|
344
435
|
- spec/node_spec.rb
|
345
|
-
- spec/
|
346
|
-
- spec/
|
436
|
+
- spec/provider_spec.rb
|
437
|
+
- spec/providers/aws_provider_spec.rb
|
438
|
+
- spec/providers/vagrant_provider_spec.rb
|
439
|
+
- spec/provisioner_spec.rb
|
347
440
|
- spec/spec_helper.rb
|
348
441
|
- spec/system_spec.rb
|
442
|
+
- spec/template_spec.rb
|
443
|
+
- spec/templates/example_template.erb
|
349
444
|
homepage: http://github.com/seryl/souffle
|
350
445
|
licenses:
|
351
446
|
- MIT
|
data/bin/souffle-worker
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
require 'souffle/application'
|
2
|
-
require 'souffle/worker'
|
3
|
-
|
4
|
-
# The souffle worker command line parser.
|
5
|
-
class Souffle::Application::Worker < Souffle::Application
|
6
|
-
|
7
|
-
option :config_file,
|
8
|
-
:short => "-c CONFIG",
|
9
|
-
:long => "--config CONFIG",
|
10
|
-
:default => "/etc/souffle/worker.rb",
|
11
|
-
:description => "The configuration file to use"
|
12
|
-
|
13
|
-
option :log_level,
|
14
|
-
:short => "-l LEVEL",
|
15
|
-
:long => "--log_level LEVEL",
|
16
|
-
:description => "Set the log level (debug, info, warn, error, fatal)",
|
17
|
-
:proc => lambda { |l| l.to_sym }
|
18
|
-
|
19
|
-
option :log_location,
|
20
|
-
:short => "-L LOGLOCATION",
|
21
|
-
:long => "--logfile LOGLOCATION",
|
22
|
-
:description => "Set the log file location, defaults to STDOUT",
|
23
|
-
:proc => nil
|
24
|
-
|
25
|
-
option :help,
|
26
|
-
:short => "-h",
|
27
|
-
:long => "--help",
|
28
|
-
:description => "Show this message",
|
29
|
-
:on => :tail,
|
30
|
-
:boolean => true,
|
31
|
-
:show_options => true,
|
32
|
-
:exit => 0
|
33
|
-
|
34
|
-
option :version,
|
35
|
-
:short => "-v",
|
36
|
-
:long => "--version",
|
37
|
-
:description => "Show souffle version",
|
38
|
-
:boolean => true,
|
39
|
-
:proc => lambda { |v| puts "Souffle: #{::Souffle::VERSION}"},
|
40
|
-
:exit => 0
|
41
|
-
|
42
|
-
def initialize
|
43
|
-
super
|
44
|
-
|
45
|
-
end
|
46
|
-
end
|
data/lib/souffle/providers.rb
DELETED