sprinkle 0.2.6 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +5 -0
- data/CREDITS +4 -0
- data/Rakefile +50 -4
- data/TODO +56 -0
- data/VERSION +1 -0
- data/bin/sprinkle +4 -0
- data/examples/rails/deploy.rb +1 -1
- data/lib/sprinkle/actors/ssh.rb +6 -2
- data/lib/sprinkle/installers/binary.rb +46 -0
- data/lib/sprinkle/installers/freebsd_portinstall.rb +36 -0
- data/lib/sprinkle/installers/source.rb +3 -2
- data/lib/sprinkle/package.rb +27 -20
- data/lib/sprinkle/verifiers/rpm.rb +21 -0
- data/script/console +8 -0
- data/spec/sprinkle/installers/freebsd_portinstall_spec.rb +42 -0
- data/spec/sprinkle/installers/noop_spec.rb +23 -0
- data/spec/sprinkle/installers/source_spec.rb +26 -0
- data/spec/sprinkle/installers/transfer_spec.rb +98 -0
- data/spec/sprinkle/package_spec.rb +20 -10
- data/spec/sprinkle/sequence_spec.rb +44 -0
- data/spec/sprinkle/verify_spec.rb +7 -0
- metadata +79 -33
- data/History.txt +0 -4
- data/Manifest.txt +0 -111
- data/config/hoe.rb +0 -70
- data/config/requirements.rb +0 -17
- data/lib/sprinkle/version.rb +0 -9
- data/sprinkle.gemspec +0 -73
- data/tasks/deployment.rake +0 -37
- data/tasks/environment.rake +0 -7
- data/tasks/rspec.rake +0 -21
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper'
|
2
|
+
|
3
|
+
describe Sprinkle::Installers::Noop do
|
4
|
+
|
5
|
+
before do
|
6
|
+
@package = mock(Sprinkle::Package, :name => 'spec')
|
7
|
+
end
|
8
|
+
|
9
|
+
def create_noop(names, options = {}, &block)
|
10
|
+
Sprinkle::Installers::Noop.new(@package, options, &block)
|
11
|
+
end
|
12
|
+
|
13
|
+
describe 'during installation' do
|
14
|
+
|
15
|
+
it 'should always be empty' do
|
16
|
+
@installer = create_noop 'spec'
|
17
|
+
@install_commands = @installer.send :install_commands
|
18
|
+
@install_commands.should == 'echo noop'
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
@@ -25,6 +25,8 @@ describe Sprinkle::Installers::Source do
|
|
25
25
|
|
26
26
|
with %w( debug extras )
|
27
27
|
without %w( fancyisms )
|
28
|
+
|
29
|
+
option %w( foo bar baz )
|
28
30
|
end
|
29
31
|
|
30
32
|
@installer.defaults(@deployment)
|
@@ -86,6 +88,10 @@ describe Sprinkle::Installers::Source do
|
|
86
88
|
@installer.without.should == %w( fancyisms )
|
87
89
|
end
|
88
90
|
|
91
|
+
it 'should support specification of "option" options' do
|
92
|
+
@installer.option.should == %w( foo bar baz )
|
93
|
+
end
|
94
|
+
|
89
95
|
it 'should support customized build area' do
|
90
96
|
@installer.prefix.should == '/usr/local'
|
91
97
|
end
|
@@ -341,5 +347,25 @@ describe Sprinkle::Installers::Source do
|
|
341
347
|
end
|
342
348
|
|
343
349
|
end
|
350
|
+
|
351
|
+
describe 'base dir calculation' do
|
352
|
+
|
353
|
+
%w( tar tar.gz tgz tar.bz2 tb2 zip ).each do |archive|
|
354
|
+
|
355
|
+
it "should recognize #{archive} style archives" do
|
356
|
+
@installer.source = "blah.#{archive}"
|
357
|
+
@installer.send(:base_dir).should == 'blah'
|
358
|
+
end
|
359
|
+
|
360
|
+
end
|
361
|
+
|
362
|
+
# def base_dir #:nodoc:
|
363
|
+
# if archive_name.split('/').last =~ /(.*)\.(tar\.gz|tgz|tar\.bz2|tar|tb2)/
|
364
|
+
# return $1
|
365
|
+
# end
|
366
|
+
# raise "Unknown base path for source archive: #{@source}, please update code knowledge"
|
367
|
+
# end
|
368
|
+
|
369
|
+
end
|
344
370
|
|
345
371
|
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper'
|
2
|
+
require 'tempfile'
|
3
|
+
|
4
|
+
describe Sprinkle::Installers::Transfer do
|
5
|
+
include Sprinkle::Deployment
|
6
|
+
|
7
|
+
before do
|
8
|
+
@package = mock(Sprinkle::Package, :name => 'package')
|
9
|
+
@empty = Proc.new { }
|
10
|
+
@delivery = mock(Sprinkle::Deployment, :process => true)
|
11
|
+
@source = 'source'
|
12
|
+
@destination = 'destination'
|
13
|
+
@installer = create_transfer(@source, @destination)
|
14
|
+
@roles = []
|
15
|
+
@deployment = deployment do
|
16
|
+
delivery :capistrano
|
17
|
+
installer do; prefix '/usr/bin'; end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def create_transfer(source, dest, options={}, &block)
|
22
|
+
i = Sprinkle::Installers::Transfer.new(@package, source, dest, options, &block)
|
23
|
+
i.delivery = @delivery
|
24
|
+
i
|
25
|
+
end
|
26
|
+
|
27
|
+
describe 'when created' do
|
28
|
+
it 'should accept a source and destination to install' do
|
29
|
+
@installer.source.should == @source
|
30
|
+
@installer.destination.should == @destination
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
describe 'during installation' do
|
35
|
+
before do
|
36
|
+
@installer = create_transfer @source, @destination do
|
37
|
+
pre :install, 'op1'
|
38
|
+
post :install, 'op2'
|
39
|
+
end
|
40
|
+
|
41
|
+
@delivery = @installer.delivery
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should call the pre and post install commands around the file transfer" do
|
45
|
+
@delivery.should_receive(:process).with(@package.name, 'op1', @roles).once.ordered.and_return
|
46
|
+
@delivery.should_receive(:transfer).ordered.and_return
|
47
|
+
@delivery.should_receive(:process).with(@package.name, 'op2', @roles).once.ordered.and_return
|
48
|
+
end
|
49
|
+
|
50
|
+
it "should call transfer with recursive defaulted to nil" do
|
51
|
+
@delivery.should_receive(:process).and_return
|
52
|
+
@delivery.should_receive(:transfer).with(@package.name, @source, @destination, @roles, nil)
|
53
|
+
end
|
54
|
+
|
55
|
+
after do
|
56
|
+
@installer.process @roles
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
describe "if the :render flag is true" do
|
61
|
+
before do
|
62
|
+
@installer = create_transfer @source, @destination, :render => true
|
63
|
+
@delivery = @installer.delivery
|
64
|
+
@delivery.stub!(:render_template_file)
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should render the source file as a template to a tempfile" do
|
68
|
+
@tempfile = Tempfile.new("foo")
|
69
|
+
@installer.should_receive(:render_template_file).with(@source, anything, @package.name).and_return(@tempfile)
|
70
|
+
@delivery.stub!(:transfer)
|
71
|
+
end
|
72
|
+
|
73
|
+
it "should call transfer with recursive set to false" do
|
74
|
+
@tempfile = Tempfile.new("foo")
|
75
|
+
@installer.should_receive(:render_template_file).with(@source, anything, @package.name).and_return(@tempfile)
|
76
|
+
@delivery.should_receive(:transfer).with(@package.name, @tempfile.path, @destination, @roles, false).ordered.and_return
|
77
|
+
end
|
78
|
+
|
79
|
+
after do
|
80
|
+
@installer.process @roles
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
describe "if the :recursive flag is explicitly set to false" do
|
85
|
+
before do
|
86
|
+
@installer = create_transfer @source, @destination, :recursive => false
|
87
|
+
end
|
88
|
+
|
89
|
+
it "should call transfer with recursive set to false" do
|
90
|
+
delivery = @installer.delivery
|
91
|
+
delivery.should_receive(:transfer).with(@package.name, @source, @destination, @roles, false).ordered.and_return
|
92
|
+
end
|
93
|
+
|
94
|
+
after do
|
95
|
+
@installer.process @roles
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
@@ -22,7 +22,7 @@ describe Sprinkle::Package do
|
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
-
pre_count = pkg.
|
25
|
+
pre_count = pkg.installers.first.instance_variable_get(:@pre)[:install].length
|
26
26
|
}.should change { pre_count }.by(1)
|
27
27
|
CODE
|
28
28
|
end
|
@@ -66,7 +66,7 @@ CODE
|
|
66
66
|
pkg = package @name do
|
67
67
|
gem 'rails'
|
68
68
|
end
|
69
|
-
pkg.
|
69
|
+
pkg.installers.should_not be_empty
|
70
70
|
end
|
71
71
|
|
72
72
|
it 'should optionally accept dependencies' do
|
@@ -123,7 +123,7 @@ CODE
|
|
123
123
|
apt %w( deb1 deb2 )
|
124
124
|
end
|
125
125
|
pkg.should respond_to(:apt)
|
126
|
-
pkg.
|
126
|
+
pkg.installers.first.class.should == Sprinkle::Installers::Apt
|
127
127
|
end
|
128
128
|
|
129
129
|
it 'should optionally accept an rpm installer' do
|
@@ -131,7 +131,7 @@ CODE
|
|
131
131
|
rpm %w( rpm1 rpm2 )
|
132
132
|
end
|
133
133
|
pkg.should respond_to(:rpm)
|
134
|
-
pkg.
|
134
|
+
pkg.installers.first.class.should == Sprinkle::Installers::Rpm
|
135
135
|
end
|
136
136
|
|
137
137
|
it 'should optionally accept a gem installer' do
|
@@ -139,7 +139,7 @@ CODE
|
|
139
139
|
gem 'gem'
|
140
140
|
end
|
141
141
|
pkg.should respond_to(:gem)
|
142
|
-
pkg.
|
142
|
+
pkg.installers.first.class.should == Sprinkle::Installers::Gem
|
143
143
|
end
|
144
144
|
|
145
145
|
it 'should optionally accept a source installer' do
|
@@ -147,9 +147,19 @@ CODE
|
|
147
147
|
source 'archive'
|
148
148
|
end
|
149
149
|
pkg.should respond_to(:source)
|
150
|
-
pkg.
|
150
|
+
pkg.installers.first.class.should == Sprinkle::Installers::Source
|
151
151
|
end
|
152
152
|
|
153
|
+
it 'should allow multiple installer steps to be defined and respect order' do
|
154
|
+
pkg = package @name do
|
155
|
+
source 'archive'
|
156
|
+
gem 'momoney'
|
157
|
+
end
|
158
|
+
|
159
|
+
pkg.installers.length.should == 2
|
160
|
+
pkg.installers[0].class.should == Sprinkle::Installers::Source
|
161
|
+
pkg.installers[1].class.should == Sprinkle::Installers::Gem
|
162
|
+
end
|
153
163
|
end
|
154
164
|
|
155
165
|
describe 'with a source installer' do
|
@@ -159,7 +169,7 @@ CODE
|
|
159
169
|
source 'archive' do; end
|
160
170
|
end
|
161
171
|
pkg.should respond_to(:source)
|
162
|
-
pkg.
|
172
|
+
pkg.installers.first.class.should == Sprinkle::Installers::Source
|
163
173
|
end
|
164
174
|
|
165
175
|
it 'should forward block to installer superclass' do
|
@@ -214,7 +224,7 @@ CODE
|
|
214
224
|
describe 'with an installer' do
|
215
225
|
|
216
226
|
before do
|
217
|
-
@package.
|
227
|
+
@package.installers = [ @installer ]
|
218
228
|
end
|
219
229
|
|
220
230
|
it 'should configure itself against the deployment context' do
|
@@ -242,7 +252,7 @@ CODE
|
|
242
252
|
describe 'with verifications' do
|
243
253
|
before do
|
244
254
|
@pkg = create_package_with_blank_verify(3)
|
245
|
-
@pkg.
|
255
|
+
@pkg.installers = [ @installer ]
|
246
256
|
@installer.stub!(:defaults)
|
247
257
|
@installer.stub!(:process)
|
248
258
|
end
|
@@ -303,7 +313,7 @@ CODE
|
|
303
313
|
@roles = [ :app, :db ]
|
304
314
|
@installer = mock(Sprinkle::Installers::Installer, :defaults => true, :process => true)
|
305
315
|
@pkg = create_package_with_blank_verify(3)
|
306
|
-
@pkg.
|
316
|
+
@pkg.installers = [ @installer ]
|
307
317
|
@installer.stub!(:defaults)
|
308
318
|
@installer.stub!(:process)
|
309
319
|
@logger = mock(ActiveSupport::BufferedLogger, :debug => true, :debug? => true)
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../spec_helper'
|
2
|
+
|
3
|
+
describe Sprinkle::Sequence do
|
4
|
+
|
5
|
+
before do
|
6
|
+
@sequence = Sprinkle::Sequence.new do
|
7
|
+
section1 do
|
8
|
+
'command1'
|
9
|
+
end
|
10
|
+
|
11
|
+
section2 do
|
12
|
+
'command2'
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
describe 'during initialization' do
|
18
|
+
|
19
|
+
it 'should yield the block, storing all section definitions provided' do
|
20
|
+
@sequence.stages.size.should == 2
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
describe 'during iteration' do
|
26
|
+
|
27
|
+
before do
|
28
|
+
@stages = { }
|
29
|
+
@sequence.each do |stage, commands|
|
30
|
+
@stages[stage] = commands
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'should yield to a given block with the stage and commands for that stage' do
|
35
|
+
@stages.size.should == 2
|
36
|
+
@stages.keys.should include(:section1)
|
37
|
+
@stages[:section1].should == 'command1'
|
38
|
+
@stages.keys.should include(:section2)
|
39
|
+
@stages[:section2].should == 'command2'
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -36,6 +36,9 @@ describe Sprinkle::Verify do
|
|
36
36
|
# Check that a gem exists
|
37
37
|
has_gem 'rails'
|
38
38
|
has_gem 'rails', '2.1.0'
|
39
|
+
|
40
|
+
# Check for a certain RPM package
|
41
|
+
has_rpm 'ntp'
|
39
42
|
end
|
40
43
|
end
|
41
44
|
@verification = @package.verifications[0]
|
@@ -90,6 +93,10 @@ describe Sprinkle::Verify do
|
|
90
93
|
@verification.commands.should include("sudo gem list | grep -e '^rails (.*.*)$'")
|
91
94
|
@verification.commands.should include("sudo gem list | grep -e '^rails (.*2\\.1\\.0.*)$'")
|
92
95
|
end
|
96
|
+
|
97
|
+
it 'should check that an RPM is installed' do
|
98
|
+
@verification.commands.should include("rpm -qa | grep ntp")
|
99
|
+
end
|
93
100
|
end
|
94
101
|
|
95
102
|
describe 'with configurations' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sprinkle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marcus Crafter
|
@@ -9,69 +9,66 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
13
|
-
default_executable:
|
12
|
+
date: 2009-12-12 00:00:00 +13:00
|
13
|
+
default_executable: sprinkle
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
-
name:
|
17
|
-
type: :
|
16
|
+
name: rspec
|
17
|
+
type: :development
|
18
18
|
version_requirement:
|
19
19
|
version_requirements: !ruby/object:Gem::Requirement
|
20
20
|
requirements:
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 2.
|
23
|
+
version: 1.2.9
|
24
24
|
version:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
|
-
name:
|
26
|
+
name: activesupport
|
27
27
|
type: :runtime
|
28
28
|
version_requirement:
|
29
29
|
version_requirements: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 2.0.2
|
34
34
|
version:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
|
-
name:
|
36
|
+
name: highline
|
37
37
|
type: :runtime
|
38
38
|
version_requirement:
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
40
40
|
requirements:
|
41
41
|
- - ">="
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version:
|
43
|
+
version: 1.4.0
|
44
44
|
version:
|
45
45
|
- !ruby/object:Gem::Dependency
|
46
|
-
name:
|
47
|
-
type: :
|
46
|
+
name: capistrano
|
47
|
+
type: :runtime
|
48
48
|
version_requirement:
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
51
|
- - ">="
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: 2.
|
53
|
+
version: 2.5.5
|
54
54
|
version:
|
55
55
|
description: Ruby DSL based software provisioning tool
|
56
|
-
email:
|
57
|
-
- crafterm@redartisan.com
|
56
|
+
email: crafterm@redartisan.com
|
58
57
|
executables:
|
59
58
|
- sprinkle
|
60
59
|
extensions: []
|
61
60
|
|
62
61
|
extra_rdoc_files:
|
63
|
-
-
|
64
|
-
-
|
62
|
+
- README.markdown
|
63
|
+
- TODO
|
65
64
|
files:
|
65
|
+
- .gitignore
|
66
66
|
- CREDITS
|
67
|
-
- History.txt
|
68
67
|
- MIT-LICENSE
|
69
|
-
- Manifest.txt
|
70
68
|
- README.markdown
|
71
69
|
- Rakefile
|
70
|
+
- VERSION
|
72
71
|
- bin/sprinkle
|
73
|
-
- config/hoe.rb
|
74
|
-
- config/requirements.rb
|
75
72
|
- examples/packages/build_essential.rb
|
76
73
|
- examples/packages/databases/mysql.rb
|
77
74
|
- examples/packages/databases/sqlite3.rb
|
@@ -107,13 +104,15 @@ files:
|
|
107
104
|
- lib/sprinkle/extensions/string.rb
|
108
105
|
- lib/sprinkle/extensions/symbol.rb
|
109
106
|
- lib/sprinkle/installers/apt.rb
|
110
|
-
- lib/sprinkle/installers/
|
107
|
+
- lib/sprinkle/installers/binary.rb
|
111
108
|
- lib/sprinkle/installers/bsd_port.rb
|
112
109
|
- lib/sprinkle/installers/deb.rb
|
113
110
|
- lib/sprinkle/installers/freebsd_pkg.rb
|
111
|
+
- lib/sprinkle/installers/freebsd_portinstall.rb
|
114
112
|
- lib/sprinkle/installers/gem.rb
|
115
113
|
- lib/sprinkle/installers/installer.rb
|
116
114
|
- lib/sprinkle/installers/mac_port.rb
|
115
|
+
- lib/sprinkle/installers/noop.rb
|
117
116
|
- lib/sprinkle/installers/openbsd_pkg.rb
|
118
117
|
- lib/sprinkle/installers/opensolaris_pkg.rb
|
119
118
|
- lib/sprinkle/installers/push_text.rb
|
@@ -129,10 +128,11 @@ files:
|
|
129
128
|
- lib/sprinkle/verifiers/executable.rb
|
130
129
|
- lib/sprinkle/verifiers/file.rb
|
131
130
|
- lib/sprinkle/verifiers/process.rb
|
131
|
+
- lib/sprinkle/verifiers/rpm.rb
|
132
132
|
- lib/sprinkle/verifiers/ruby.rb
|
133
133
|
- lib/sprinkle/verifiers/symlink.rb
|
134
134
|
- lib/sprinkle/verify.rb
|
135
|
-
-
|
135
|
+
- script/console
|
136
136
|
- script/destroy
|
137
137
|
- script/generate
|
138
138
|
- spec/spec.opts
|
@@ -146,33 +146,32 @@ files:
|
|
146
146
|
- spec/sprinkle/installers/apt_spec.rb
|
147
147
|
- spec/sprinkle/installers/bsd_port_spec.rb
|
148
148
|
- spec/sprinkle/installers/freebsd_pkg_spec.rb
|
149
|
+
- spec/sprinkle/installers/freebsd_portinstall_spec.rb
|
149
150
|
- spec/sprinkle/installers/gem_spec.rb
|
150
151
|
- spec/sprinkle/installers/installer_spec.rb
|
151
152
|
- spec/sprinkle/installers/mac_port_spec.rb
|
153
|
+
- spec/sprinkle/installers/noop_spec.rb
|
152
154
|
- spec/sprinkle/installers/openbsd_pkg_spec.rb
|
153
155
|
- spec/sprinkle/installers/opensolaris_pkg_spec.rb
|
154
156
|
- spec/sprinkle/installers/push_text_spec.rb
|
155
157
|
- spec/sprinkle/installers/rake_spec.rb
|
156
158
|
- spec/sprinkle/installers/rpm_spec.rb
|
157
159
|
- spec/sprinkle/installers/source_spec.rb
|
160
|
+
- spec/sprinkle/installers/transfer_spec.rb
|
158
161
|
- spec/sprinkle/installers/yum_spec.rb
|
159
162
|
- spec/sprinkle/package_spec.rb
|
160
163
|
- spec/sprinkle/policy_spec.rb
|
161
164
|
- spec/sprinkle/script_spec.rb
|
162
165
|
- spec/sprinkle/sprinkle_spec.rb
|
163
166
|
- spec/sprinkle/verify_spec.rb
|
164
|
-
-
|
165
|
-
- tasks/deployment.rake
|
166
|
-
- tasks/environment.rake
|
167
|
-
- tasks/rspec.rake
|
167
|
+
- TODO
|
168
168
|
has_rdoc: true
|
169
|
-
homepage: http://sprinkle
|
169
|
+
homepage: http://github.com/crafterm/sprinkle
|
170
170
|
licenses: []
|
171
171
|
|
172
172
|
post_install_message:
|
173
173
|
rdoc_options:
|
174
|
-
- --
|
175
|
-
- README.txt
|
174
|
+
- --charset=UTF-8
|
176
175
|
require_paths:
|
177
176
|
- lib
|
178
177
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -190,9 +189,56 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
190
189
|
requirements: []
|
191
190
|
|
192
191
|
rubyforge_project: sprinkle
|
193
|
-
rubygems_version: 1.3.
|
192
|
+
rubygems_version: 1.3.5
|
194
193
|
signing_key:
|
195
194
|
specification_version: 3
|
196
195
|
summary: Ruby DSL based software provisioning tool
|
197
|
-
test_files:
|
198
|
-
|
196
|
+
test_files:
|
197
|
+
- spec/spec_helper.rb
|
198
|
+
- spec/sprinkle/actors/capistrano_spec.rb
|
199
|
+
- spec/sprinkle/actors/local_spec.rb
|
200
|
+
- spec/sprinkle/configurable_spec.rb
|
201
|
+
- spec/sprinkle/deployment_spec.rb
|
202
|
+
- spec/sprinkle/extensions/array_spec.rb
|
203
|
+
- spec/sprinkle/extensions/string_spec.rb
|
204
|
+
- spec/sprinkle/installers/apt_spec.rb
|
205
|
+
- spec/sprinkle/installers/bsd_port_spec.rb
|
206
|
+
- spec/sprinkle/installers/freebsd_pkg_spec.rb
|
207
|
+
- spec/sprinkle/installers/freebsd_portinstall_spec.rb
|
208
|
+
- spec/sprinkle/installers/gem_spec.rb
|
209
|
+
- spec/sprinkle/installers/installer_spec.rb
|
210
|
+
- spec/sprinkle/installers/mac_port_spec.rb
|
211
|
+
- spec/sprinkle/installers/noop_spec.rb
|
212
|
+
- spec/sprinkle/installers/openbsd_pkg_spec.rb
|
213
|
+
- spec/sprinkle/installers/opensolaris_pkg_spec.rb
|
214
|
+
- spec/sprinkle/installers/push_text_spec.rb
|
215
|
+
- spec/sprinkle/installers/rake_spec.rb
|
216
|
+
- spec/sprinkle/installers/rpm_spec.rb
|
217
|
+
- spec/sprinkle/installers/source_spec.rb
|
218
|
+
- spec/sprinkle/installers/transfer_spec.rb
|
219
|
+
- spec/sprinkle/installers/yum_spec.rb
|
220
|
+
- spec/sprinkle/package_spec.rb
|
221
|
+
- spec/sprinkle/policy_spec.rb
|
222
|
+
- spec/sprinkle/script_spec.rb
|
223
|
+
- spec/sprinkle/sequence_spec.rb
|
224
|
+
- spec/sprinkle/sprinkle_spec.rb
|
225
|
+
- spec/sprinkle/verify_spec.rb
|
226
|
+
- examples/packages/build_essential.rb
|
227
|
+
- examples/packages/databases/mysql.rb
|
228
|
+
- examples/packages/databases/sqlite3.rb
|
229
|
+
- examples/packages/phusion.rb
|
230
|
+
- examples/packages/ruby/rails.rb
|
231
|
+
- examples/packages/ruby/ruby.rb
|
232
|
+
- examples/packages/ruby/rubygems.rb
|
233
|
+
- examples/packages/scm/git.rb
|
234
|
+
- examples/packages/scm/subversion.rb
|
235
|
+
- examples/packages/servers/apache.rb
|
236
|
+
- examples/rails/deploy.rb
|
237
|
+
- examples/rails/packages/database.rb
|
238
|
+
- examples/rails/packages/essential.rb
|
239
|
+
- examples/rails/packages/rails.rb
|
240
|
+
- examples/rails/packages/scm.rb
|
241
|
+
- examples/rails/packages/search.rb
|
242
|
+
- examples/rails/packages/server.rb
|
243
|
+
- examples/rails/rails.rb
|
244
|
+
- examples/sprinkle/sprinkle.rb
|