From d5df1b9692d91219b75a90bb4a7a3133498eebad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20M=E4kinen?= Date: Mon, 14 Mar 2011 11:29:38 +0200 Subject: [PATCH] Added postcmd option to network::interface and removed ipv6 autoconfiguration from OpenBSD carp interfaces. --- network/manifests/init.pp | 6 +++++- network/templates/hostname.if.erb | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/network/manifests/init.pp b/network/manifests/init.pp index 17bd7a0..8a554d0 100644 --- a/network/manifests/init.pp +++ b/network/manifests/init.pp @@ -77,6 +77,9 @@ class network::helper::debian { # IPv6 netmask length. Defaults to 64. # $options: # Custom options for interface (used only on OpenBSD). +# $postcmd: +# Custom commands to be executed after interface is up (used only on +# OpenBSD). # # === Sample usage # @@ -85,7 +88,7 @@ class network::helper::debian { # netmask => "255.255.0.0", # } # -define network::interface($options = [], $ipaddr = "none", $eaddr = "none", $netmask = "none", $ip6addr = "none", $ip6netmask = "64") { +define network::interface($options = [], $ipaddr = "none", $eaddr = "none", $netmask = "none", $ip6addr = "none", $ip6netmask = "64", $postcmd = []) { include network::helper::restart @@ -257,6 +260,7 @@ define network::carp($password, $ipaddr, $netmask, $options = []) { ipaddr => "${ipaddr}", netmask => "${netmask}", options => [ "vhid ${name}", "pass ${password}", $options ], + postcmd => [ "/usr/sbin/ndp -i carp${name} -- -accept_rtadv" ], } } centos,fedora: { diff --git a/network/templates/hostname.if.erb b/network/templates/hostname.if.erb index f5044dd..4518682 100644 --- a/network/templates/hostname.if.erb +++ b/network/templates/hostname.if.erb @@ -10,3 +10,6 @@ rtsol <% elsif ip6addr != 'none' -%> inet6 alias <%= ip6addr %> <%= ip6netmask %> <% end -%> +<% postcmd.each do |val| -%> +!<%= val %> +<% end -%>