dhcp: Fix dhcp::server for Ubuntu >= 12.04

This commit is contained in:
Ossi Salmi 2013-12-10 12:36:16 +02:00
parent 26d51a57b8
commit 8276a8cc30

View file

@ -1,38 +1,46 @@
# Install common parts of DHCP server # Install common parts of DHCP server
# #
class dhcp::server::common { class dhcp::server::common {
case $::operatingsystem { case $::operatingsystem {
"centos","redhat": { "centos","redhat": {
case $::operatingsystemrelease { if versioncmp($::operatingsystemrelease, "6") >= 0 {
/[45]\.[0-9]/: { $confdir = "/etc/dhcp"
$confdir = "/etc" } else {
} $confdir = "/etc"
default: {
$confdir = "/etc/dhcp"
}
} }
} $package = "dhcp"
"debian","ubuntu": { $service = "dhcpd"
$confdir = "/etc/dhcp3"
} }
"fedora": { "fedora": {
$confdir = "/etc/dhcp" $confdir = "/etc/dhcp"
$package = "dhcp"
$service = "dhcpd"
}
"openbsd": {
$confdir = "/etc"
$package = "isc-dhcp-server"
$service = "isc_dhcpd"
}
"ubuntu": {
if versioncmp($::operatingsystemrelease, "12.04") >= 0 {
$confdir = "/etc/dhcp"
$package = "isc-dhcp-server"
$service = "isc-dhcp-server"
} else {
$confdir = "/etc/dhcp3"
$service = "dhcp3-server"
$package = "dhcp3-server"
}
} }
default: { default: {
$confdir = "/etc" fail("dhcp::server not supported on ${::operatingsystem}")
} }
} }
package { "dhcp": package { "dhcp":
name => $::operatingsystem ? {
"debian" => "dhcp3-server",
"ubuntu" => "dhcp3-server",
"openbsd" => "isc-dhcp-server",
default => "dhcp",
},
ensure => installed, ensure => installed,
name => $package,
} }
if $::operatingsystem == "OpenBSD" { if $::operatingsystem == "OpenBSD" {
@ -47,14 +55,9 @@ class dhcp::server::common {
} }
service { "dhcpd": service { "dhcpd":
name => $::operatingsystem ? {
"debian" => "dhcp3-server",
"ubuntu" => "dhcp3-server",
"openbsd" => "isc_dhcpd",
default => "dhcpd",
},
ensure => running, ensure => running,
enable => true, enable => true,
name => $service,
binary => $::operatingsystem ? { binary => $::operatingsystem ? {
"openbsd" => "/usr/local/sbin/dhcpd", "openbsd" => "/usr/local/sbin/dhcpd",
default => undef, default => undef,
@ -170,6 +173,7 @@ class dhcp::server::ldap inherits dhcp::server::common {
} }
# Configure DHCP relay # Configure DHCP relay
# #
# === Parameters # === Parameters
@ -185,7 +189,6 @@ class dhcp::server::ldap inherits dhcp::server::common {
# #
# dhcp::relay { "relay0": interface => "em2", server_addr => "10.20.110.11" } # dhcp::relay { "relay0": interface => "em2", server_addr => "10.20.110.11" }
# #
define dhcp::relay($interface, $server_addr) { define dhcp::relay($interface, $server_addr) {
service { $name: service { $name: