Skip to content

Commit fa8ca67

Browse files
florindragosdavejrt
authored andcommitted
Allow multiple values for subnet in docker_network (#371)
1 parent 283185c commit fa8ca67

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

lib/puppet/type/docker_network.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
desc 'The network driver used by the network'
1212
end
1313

14-
newproperty(:subnet) do
14+
newparam(:subnet, :array_matching => :all) do
1515
desc 'The subnet in CIDR format that represents a network segment'
1616
end
1717

spec/unit/docker_network_spec.rb

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
[
99
:name,
1010
:provider,
11+
:subnet,
1112
:gateway,
1213
:ip_range,
1314
:aux_address,
@@ -36,3 +37,27 @@
3637
end
3738
end
3839
end
40+
41+
describe Puppet::Type.type(:docker_network).provider(:docker_network) do
42+
let(:provider) { resource.provider }
43+
let(:instance) { provider.class.instances.first }
44+
let(:resource) do
45+
Puppet::Type.type(:docker_network).new(
46+
ensure: :present,
47+
name: 'test-network',
48+
driver: 'host',
49+
subnet: ['192.168.3.0/24', '10.0.0.0/24']
50+
)
51+
end
52+
53+
before :each do
54+
Puppet::Util.stubs(:which).with('docker').returns('/usr/local/bin/docker')
55+
end
56+
57+
describe 'create' do
58+
it 'creates a docker network' do
59+
provider.class.expects(:docker).with(["network", "create", "--driver=#{resource[:driver]}", "--subnet=#{resource[:subnet][0]}", "--subnet=#{resource[:subnet][1]}", resource[:name]])
60+
expect(provider.create).to be_nil
61+
end
62+
end
63+
end

0 commit comments

Comments
 (0)