Skip to content

Commit 044baa8

Browse files
GiooDevccope
andcommitted
Adding --type attribute to logical volumes.
add new test for type parameter stub irrelevant methods in test cases Co-Authored-By: Cam Cope <cam@dropbox.com>
1 parent 879c4bd commit 044baa8

File tree

4 files changed

+19
-88
lines changed

4 files changed

+19
-88
lines changed

lib/puppet/provider/logical_volume/lvm.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,10 @@ def create
103103
args.push('--minor', @resource[:minor])
104104
end
105105

106+
if @resource[:type]
107+
args.push('--type', @resource[:type])
108+
end
109+
106110
args << @resource[:volume_group]
107111
lvcreate(*args)
108112
end

lib/puppet/type/logical_volume.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ def insync?(is)
8484
end
8585

8686
newparam(:type) do
87-
desc "Configures the logical volume type. AIX only"
87+
desc "Configures the logical volume type."
8888
end
8989

9090
newparam(:range) do

manifests/logical_volume.pp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
$readahead = undef,
2020
$range = undef,
2121
$size_is_minsize = undef,
22+
$type = undef,
2223
) {
2324

2425
validate_bool($mountpath_require)
@@ -75,7 +76,8 @@
7576
readahead => $readahead,
7677
extents => $extents,
7778
range => $range,
78-
size_is_minsize => $size_is_minsize
79+
size_is_minsize => $size_is_minsize,
80+
type => $type
7981
}
8082

8183
if $createfs {

spec/unit/puppet/provider/logical_volume/lvm_spec.rb

Lines changed: 11 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
describe provider_class do
66

77
before do
8-
@resource = stub("resource")
8+
@resource = stub_everything("resource")
99
@provider = provider_class.new(@resource)
1010
end
1111

@@ -33,32 +33,26 @@
3333
@resource.expects(:[]).with(:name).returns('mylv')
3434
@resource.expects(:[]).with(:volume_group).returns('myvg')
3535
@resource.expects(:[]).with(:size).returns('1g').at_least_once
36-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
37-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
38-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
39-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
40-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
41-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
42-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
43-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
4436
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
4537
@provider.create
4638
end
4739
end
40+
context 'with size and type' do
41+
it "should execute 'lvcreate' with a '--size' option" do
42+
@resource.expects(:[]).with(:name).returns('mylv')
43+
@resource.expects(:[]).with(:volume_group).returns('myvg')
44+
@resource.expects(:[]).with(:size).returns('1g').at_least_once
45+
@resource.expects(:[]).with(:type).returns('linear').at_least_once
46+
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', '--type', 'linear', 'myvg')
47+
@provider.create
48+
end
49+
end
4850
context 'with initial_size' do
4951
it "should execute 'lvcreate' with a '--size' option" do
5052
@resource.expects(:[]).with(:name).returns('mylv')
5153
@resource.expects(:[]).with(:volume_group).returns('myvg')
5254
@resource.expects(:[]).with(:initial_size).returns('1g').at_least_once
5355
@resource.expects(:[]).with(:size).returns(nil).at_least_once
54-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
55-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
56-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
57-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
58-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
59-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
60-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
61-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
6256
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
6357
@provider.create
6458
end
@@ -70,13 +64,6 @@
7064
@resource.expects(:[]).with(:size).returns(nil).at_least_once
7165
@resource.expects(:[]).with(:initial_size).returns(nil).at_least_once
7266
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
73-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
74-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
75-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
76-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
77-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
78-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
79-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
8067
@provider.expects(:lvcreate).with('-n', 'mylv', '--extents', '100%FREE', 'myvg')
8168
@provider.create
8269
end
@@ -87,13 +74,6 @@
8774
@resource.expects(:[]).with(:volume_group).returns('myvg')
8875
@resource.expects(:[]).with(:size).returns('1g').at_least_once
8976
@resource.expects(:[]).with(:extents).returns('80%vg').at_least_once
90-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
91-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
92-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
93-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
94-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
95-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
96-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
9777
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', '--extents', '80%vg', 'myvg')
9878
@provider.create
9979
end
@@ -103,14 +83,6 @@
10383
@resource.expects(:[]).with(:name).returns('mylv')
10484
@resource.expects(:[]).with(:volume_group).returns('myvg')
10585
@resource.expects(:[]).with(:size).returns('1g').at_least_once
106-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
107-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
108-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
109-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
110-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
111-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
112-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
113-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
11486
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
11587
@provider.create
11688
end
@@ -120,18 +92,8 @@
12092
@resource.expects(:[]).with(:name).returns('mylv')
12193
@resource.expects(:[]).with(:volume_group).returns('myvg')
12294
@resource.expects(:[]).with(:initial_size).returns('1g').at_least_once
123-
@resource.expects(:[]).with(:size).returns(nil).at_least_once
124-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
125-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
126-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
127-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
12895
@resource.expects(:[]).with(:mirror).returns('1').at_least_once
12996
@resource.expects(:[]).with(:mirrorlog).returns('core').at_least_once
130-
@resource.expects(:[]).with(:region_size).returns(nil).at_least_once
131-
@resource.expects(:[]).with(:no_sync).returns(nil).at_least_once
132-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
133-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
134-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
13597
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', '--mirrors', '1', '--mirrorlog', 'core', 'myvg')
13698
@provider.create
13799
end
@@ -143,12 +105,6 @@
143105
@resource.expects(:[]).with(:size).returns('1g').at_least_once
144106
@resource.expects(:[]).with(:persistent).returns(:true).at_least_once
145107
@resource.expects(:[]).with(:minor).returns('100').at_least_once
146-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
147-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
148-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
149-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
150-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
151-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
152108
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', '--persistent', 'y', '--minor', '100', 'myvg')
153109
@provider.create
154110
end
@@ -162,14 +118,6 @@
162118
@resource.expects(:[]).with(:name).returns('mylv').at_least_once
163119
@resource.expects(:[]).with(:volume_group).returns('myvg').at_least_once
164120
@resource.expects(:[]).with(:size).returns('1g').at_least_once
165-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
166-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
167-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
168-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
169-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
170-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
171-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
172-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
173121
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
174122
@provider.create
175123
@provider.expects(:lvs).with('--noheading', '--unit', 'g', '/dev/myvg/mylv').returns(' 1.00g').at_least_once
@@ -185,13 +133,6 @@
185133
@resource.expects(:[]).with(:volume_group).returns('myvg').at_least_once
186134
@resource.expects(:[]).with(:size).returns('1g').at_least_once
187135
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
188-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
189-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
190-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
191-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
192-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
193-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
194-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
195136
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
196137
@provider.create
197138
@provider.expects(:lvs).with('--noheading', '--unit', 'g', '/dev/myvg/mylv').returns(' 1.00g').at_least_once
@@ -206,15 +147,7 @@
206147
@resource.expects(:[]).with(:name).returns('mylv').at_least_once
207148
@resource.expects(:[]).with(:volume_group).returns('myvg').at_least_once
208149
@resource.expects(:[]).with(:size).returns('1g').at_least_once
209-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
210-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
211-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
212-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
213150
@resource.expects(:[]).with(:size_is_minsize).returns(:false).at_least_once
214-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
215-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
216-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
217-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
218151
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
219152
@provider.create
220153
@provider.expects(:lvs).with('--noheading', '--unit', 'g', '/dev/myvg/mylv').returns(' 1.00g').at_least_once
@@ -229,15 +162,7 @@
229162
@resource.expects(:[]).with(:name).returns('mylv').at_least_once
230163
@resource.expects(:[]).with(:volume_group).returns('myvg').at_least_once
231164
@resource.expects(:[]).with(:size).returns('1g').at_least_once
232-
@resource.expects(:[]).with(:extents).returns(nil).at_least_once
233-
@resource.expects(:[]).with(:stripes).returns(nil).at_least_once
234-
@resource.expects(:[]).with(:stripesize).returns(nil).at_least_once
235-
@resource.expects(:[]).with(:readahead).returns(nil).at_least_once
236165
@resource.expects(:[]).with(:size_is_minsize).returns(:true).at_least_once
237-
@resource.expects(:[]).with(:mirror).returns(nil).at_least_once
238-
@resource.expects(:[]).with(:alloc).returns(nil).at_least_once
239-
@resource.expects(:[]).with(:persistent).returns(nil).at_least_once
240-
@resource.expects(:[]).with(:minor).returns(nil).at_least_once
241166
@provider.expects(:lvcreate).with('-n', 'mylv', '--size', '1g', 'myvg')
242167
@provider.create
243168
@provider.expects(:lvs).with('--noheading', '--unit', 'g', '/dev/myvg/mylv').returns(' 1.00g').at_least_once

0 commit comments

Comments
 (0)