sprinkle 0.7.4 → 0.7.5
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +18 -14
- data/Gemfile.lock +11 -11
- data/lib/sprinkle.rb +19 -9
- data/lib/sprinkle/actors/capistrano.rb +2 -1
- data/lib/sprinkle/actors/dummy.rb +3 -3
- data/lib/sprinkle/actors/local.rb +7 -9
- data/lib/sprinkle/actors/ssh.rb +5 -5
- data/lib/sprinkle/deployment.rb +2 -1
- data/lib/sprinkle/extensions/sudo.rb +8 -4
- data/lib/sprinkle/installers/installer.rb +48 -37
- data/lib/sprinkle/installers/npm.rb +31 -30
- data/lib/sprinkle/installers/source.rb +6 -6
- data/lib/sprinkle/installers/user.rb +7 -6
- data/lib/sprinkle/package.rb +55 -51
- data/lib/sprinkle/package/chooser.rb +5 -4
- data/lib/sprinkle/package/rendering.rb +2 -2
- data/lib/sprinkle/policy.rb +13 -13
- data/lib/sprinkle/script.rb +5 -1
- data/lib/sprinkle/verify.rb +1 -0
- data/lib/sprinkle/version.rb +1 -1
- data/spec/spec_helper.rb +13 -7
- data/spec/sprinkle/actors/capistrano_spec.rb +18 -18
- data/spec/sprinkle/actors/local_spec.rb +3 -3
- data/spec/sprinkle/deployment_spec.rb +3 -3
- data/spec/sprinkle/installers/apt_spec.rb +1 -1
- data/spec/sprinkle/installers/binary_spec.rb +1 -1
- data/spec/sprinkle/installers/brew_spec.rb +1 -1
- data/spec/sprinkle/installers/bsd_port_spec.rb +1 -1
- data/spec/sprinkle/installers/file_spec.rb +9 -9
- data/spec/sprinkle/installers/freebsd_pkg_spec.rb +1 -1
- data/spec/sprinkle/installers/freebsd_portinstall_spec.rb +1 -1
- data/spec/sprinkle/installers/gem_spec.rb +1 -1
- data/spec/sprinkle/installers/installer_spec.rb +62 -25
- data/spec/sprinkle/installers/mac_port_spec.rb +1 -1
- data/spec/sprinkle/installers/npm_spec.rb +1 -1
- data/spec/sprinkle/installers/openbsd_pkg_spec.rb +1 -1
- data/spec/sprinkle/installers/opensolaris_pkg_spec.rb +1 -1
- data/spec/sprinkle/installers/pear_spec.rb +1 -1
- data/spec/sprinkle/installers/push_text_spec.rb +12 -12
- data/spec/sprinkle/installers/rake_spec.rb +1 -1
- data/spec/sprinkle/installers/replace_text_spec.rb +10 -10
- data/spec/sprinkle/installers/rpm_spec.rb +1 -1
- data/spec/sprinkle/installers/runner_spec.rb +9 -9
- data/spec/sprinkle/installers/smart_spec.rb +1 -1
- data/spec/sprinkle/installers/source_spec.rb +22 -27
- data/spec/sprinkle/installers/thor_spec.rb +1 -1
- data/spec/sprinkle/installers/transfer_spec.rb +35 -35
- data/spec/sprinkle/installers/user_spec.rb +13 -7
- data/spec/sprinkle/installers/yum_spec.rb +1 -1
- data/spec/sprinkle/installers/zypper_spec.rb +1 -1
- data/spec/sprinkle/package/package_repository_spec.rb +7 -7
- data/spec/sprinkle/package_spec.rb +58 -58
- data/spec/sprinkle/policy_spec.rb +20 -20
- data/spec/sprinkle/script_spec.rb +1 -1
- data/spec/sprinkle/verify_spec.rb +2 -2
- metadata +2 -2
@@ -13,7 +13,7 @@ describe Sprinkle::Policy do
|
|
13
13
|
end
|
14
14
|
|
15
15
|
it "should raise an error" do
|
16
|
-
@deployment =
|
16
|
+
@deployment = double(:style => Sprinkle::Actors::Dummy.new {})
|
17
17
|
lambda { @policy.process(@deployment) }.should raise_error(Sprinkle::NoMatchingServersError)
|
18
18
|
end
|
19
19
|
end
|
@@ -33,21 +33,21 @@ describe Sprinkle::Policy do
|
|
33
33
|
p = policy @name, :roles => :app do; end
|
34
34
|
p.should respond_to(:requires)
|
35
35
|
p.requires :appserver
|
36
|
-
p.packages.should
|
36
|
+
p.packages.should eq [ :appserver ]
|
37
37
|
end
|
38
38
|
|
39
39
|
it 'should optionally accept package dependencies with versions' do
|
40
40
|
p = policy @name, :roles => :app do; end
|
41
41
|
p.requires :appserver, :version => 2
|
42
|
-
p.packages.should
|
42
|
+
p.packages.should eq [ :appserver ]
|
43
43
|
# pending 'requires version checking implementation'
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'should add itself to the global policy list' do
|
47
47
|
sz = Sprinkle::POLICIES.size
|
48
48
|
p = policy @name, :roles => :app do; end
|
49
|
-
Sprinkle::POLICIES.size.should
|
50
|
-
Sprinkle::POLICIES.last.should
|
49
|
+
Sprinkle::POLICIES.size.should eq sz + 1
|
50
|
+
Sprinkle::POLICIES.last.should eq p
|
51
51
|
end
|
52
52
|
|
53
53
|
end
|
@@ -56,9 +56,9 @@ describe Sprinkle::Policy do
|
|
56
56
|
include Sprinkle::Package
|
57
57
|
|
58
58
|
before do
|
59
|
-
@deployment =
|
60
|
-
actor =
|
61
|
-
@deployment.stub
|
59
|
+
@deployment = double(Sprinkle::Deployment)
|
60
|
+
actor = double(:servers_for_role? => true)
|
61
|
+
@deployment.stub(:style).and_return(actor)
|
62
62
|
Sprinkle::Package::PACKAGES.clear # reset full package list before each spec is run
|
63
63
|
|
64
64
|
@a = package :a do; requires :b; requires :c; end
|
@@ -66,13 +66,13 @@ describe Sprinkle::Policy do
|
|
66
66
|
@c = package :c, :provides => :abc do; end
|
67
67
|
@d = package :d, :provides => :abc do; end
|
68
68
|
|
69
|
-
@a.stub
|
70
|
-
@b.stub
|
71
|
-
@c.stub
|
72
|
-
@d.stub
|
69
|
+
@a.stub(:instance).and_return(@a)
|
70
|
+
@b.stub(:instance).and_return(@b)
|
71
|
+
@c.stub(:instance).and_return(@c)
|
72
|
+
@d.stub(:instance).and_return(@d)
|
73
73
|
|
74
74
|
@policy = policy :test, :roles => :app do; requires :a; end
|
75
|
-
$terminal.stub
|
75
|
+
$terminal.stub(:choose).and_return(:c) # stub out highline asking questions
|
76
76
|
end
|
77
77
|
|
78
78
|
describe 'when applying' do
|
@@ -88,7 +88,7 @@ describe Sprinkle::Policy do
|
|
88
88
|
it 'should normalize (ie remove duplicates from) the installation order of all packages including dependencies' do
|
89
89
|
@e = package :e do; requires :b; end
|
90
90
|
@policy.requires :e
|
91
|
-
@e.stub
|
91
|
+
@e.stub(:instance).and_return(@e)
|
92
92
|
|
93
93
|
@a.should_receive(:process).once.and_return
|
94
94
|
@b.should_receive(:process).once.and_return
|
@@ -106,8 +106,8 @@ describe Sprinkle::Policy do
|
|
106
106
|
@my5 = package :mysql do; version 5; end
|
107
107
|
@e = package :e do; requires :mysql, :version => "4"; end
|
108
108
|
@policy.requires :e
|
109
|
-
@e.stub
|
110
|
-
@my4.stub
|
109
|
+
@e.stub(:instance).and_return @e
|
110
|
+
@my4.stub(:instance).and_return @my4
|
111
111
|
@my3.should_not_receive(:process)
|
112
112
|
@my5.should_not_receive(:process)
|
113
113
|
@my4.should_receive(:process)
|
@@ -138,13 +138,13 @@ end
|
|
138
138
|
describe Sprinkle::Policy, 'with missing packages' do
|
139
139
|
|
140
140
|
before do
|
141
|
-
@deployment =
|
142
|
-
actor =
|
143
|
-
@deployment.stub
|
141
|
+
@deployment = double(Sprinkle::Deployment)
|
142
|
+
actor = double(:servers_for_role? => true)
|
143
|
+
@deployment.stub(:style).and_return(actor)
|
144
144
|
Sprinkle::Package::PACKAGES.clear # reset full package list before each spec is run
|
145
145
|
|
146
146
|
@policy = policy :test, :roles => :app do; requires :z; end
|
147
|
-
$terminal.stub
|
147
|
+
$terminal.stub(:choose).and_return(:c) # stub out highline asking questions
|
148
148
|
end
|
149
149
|
|
150
150
|
it 'should raise an error if a package is missing' do
|
@@ -19,7 +19,7 @@ describe Sprinkle::Script, 'when given a script' do
|
|
19
19
|
@filename = 'filename'
|
20
20
|
|
21
21
|
@sprinkle = Sprinkle::Script.new
|
22
|
-
Sprinkle::Script.stub
|
22
|
+
Sprinkle::Script.stub(:new).and_return(@sprinkle)
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'should create a new sprinkle instance' do
|
@@ -62,7 +62,7 @@ describe Sprinkle::Verify do
|
|
62
62
|
end
|
63
63
|
end
|
64
64
|
@verification = @package.verifications[0]
|
65
|
-
@delivery =
|
65
|
+
@delivery = double(Sprinkle::Deployment, :process => true, :sudo_command => "sudo")
|
66
66
|
@verification.delivery = @delivery
|
67
67
|
end
|
68
68
|
|
@@ -201,7 +201,7 @@ describe Sprinkle::Verify do
|
|
201
201
|
describe 'when testing' do
|
202
202
|
before do
|
203
203
|
Sprinkle::OPTIONS[:testing] = true
|
204
|
-
@logger =
|
204
|
+
@logger = double(:debug => true, :debug? => true)
|
205
205
|
end
|
206
206
|
|
207
207
|
it 'should not call process on the delivery' 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.7.
|
4
|
+
version: 0.7.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-
|
13
|
+
date: 2013-08-29 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec
|