X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=3rdparty%2Fmodules%2Fvswitch%2Flib%2Fpuppet%2Ftype%2Fvs_port.rb;fp=3rdparty%2Fmodules%2Fvswitch%2Flib%2Fpuppet%2Ftype%2Fvs_port.rb;h=4527bd9948c56d6406f93b8db7750ceb31deac66;hb=4631045ebb77ee8622f6fa09277a50c372bcc02e;hp=0000000000000000000000000000000000000000;hpb=3d4dc4fd9e59bd0e07646c99f6b356c7d9d859aa;p=dsa-puppet.git diff --git a/3rdparty/modules/vswitch/lib/puppet/type/vs_port.rb b/3rdparty/modules/vswitch/lib/puppet/type/vs_port.rb new file mode 100644 index 00000000..4527bd99 --- /dev/null +++ b/3rdparty/modules/vswitch/lib/puppet/type/vs_port.rb @@ -0,0 +1,31 @@ +require 'puppet' + +Puppet::Type.newtype(:vs_port) do + desc 'A Virtual Switch Port' + + ensurable + + newparam(:interface, :namevar => true) do + desc 'The interface to attach to the bridge' + + validate do |value| + if !value.is_a?(String) + raise ArgumentError, "Invalid interface #{value}. Requires a String, not a #{value.class}" + end + end + end + + newparam(:bridge) do + desc 'The bridge to attach to' + + validate do |value| + if !value.is_a?(String) + raise ArgumentError, "Invalid bridge #{value}. Requires a String, not a #{value.class}'" + end + end + end + + autorequire(:vs_bridge) do + self[:bridge] if self[:bridge] + end +end