From: Cédric Jeanneret Date: Tue, 26 Feb 2013 11:34:24 +0000 (+0000) Subject: new dhcp::hosts - uses puppet hashes X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=68e456b83faf170e0596f84d2af14f154e3160ba;p=puppet-dhcp.git new dhcp::hosts - uses puppet hashes --- diff --git a/manifests/hosts.pp b/manifests/hosts.pp new file mode 100644 index 0000000..f0c7c37 --- /dev/null +++ b/manifests/hosts.pp @@ -0,0 +1,47 @@ +# = Definition: dhcp::hosts +# +# Creates a dhcp configuration for given hosts +# +# Arguments +# $template: dhcp host template - default: 'dhcp/host.conf.erb' +# $subnet: targeted subnet +# $data_hash: hash containing data - default form: +# { +# => { +# options => false, +# fixed_address => false, +# eth0 => 'mac-address', +# eth1 => 'mac-address', +# …, +# wlan0 => 'mac-address', +# wlan1 => 'mac-address', +# …, +# }, +# => { +# options => false, +# fixed_address => false, +# eth0 => 'mac-address', +# eth1 => 'mac-address', +# …, +# wlan0 => 'mac-address', +# wlan1 => 'mac-address', +# …, +# options => false, +# }, +# …, +# } +# +define dhcp::hosts ( + $data_hash, + $subnet, + $template = 'dhcp/host.conf.erb', +) { + + include dhcp::params + + concat::fragment {"dhcp.host.${name}": + target => "${dhcp::params::config_dir}/hosts.d/${subnet}.conf", + content => template($template), + notify => Service['dhcpd'], + } +}