From 71ef7d46ef719ee65904726613a8f46f31505abc Mon Sep 17 00:00:00 2001 From: Sergey Vasilenko Date: Mon, 21 Apr 2014 19:06:10 +0400 Subject: [PATCH] Executing IFUP operation for master-bond interface should be after UPping at least one slave interface Change-Id: I3aabebd37d77dced39c9b77a834c179dbc65e2b3 Closes-Bug: #1310661 --- .../puppet/l23network/manifests/l3/ifconfig.pp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/deployment/puppet/l23network/manifests/l3/ifconfig.pp b/deployment/puppet/l23network/manifests/l3/ifconfig.pp index b8562ac03d..f34c670f17 100644 --- a/deployment/puppet/l23network/manifests/l3/ifconfig.pp +++ b/deployment/puppet/l23network/manifests/l3/ifconfig.pp @@ -110,7 +110,7 @@ define l23network::l3::ifconfig ( include ::l23network::params $bond_properties_defaults = { - mode => 1, + mode => 0, miimon => 100, lacp_rate => 1, } @@ -339,12 +339,20 @@ define l23network::l3::ifconfig ( content => template("l23network/ipconfig_${::osfamily}_${method}.erb"), } + # bond master interface should be upped only after including at least one slave interface to one + if $interface =~ /^(bond\d+)/ { + $l3_if_downup__subscribe = undef + File["$interface_file"] -> L3_if_downup["$interface"] + L3_if_downup<| $bond_master == $interface |> ~> L3_if_downup["$interface"] + } else { + $l3_if_downup__subscribe = File["$interface_file"] + } notify {"ifconfig_${interface}": message=>"Interface:${interface} IP:${effective_ipaddr}/${effective_netmask}", withpath=>false} -> l3_if_downup {"$interface": check_by_ping => $check_by_ping, check_by_ping_timeout => $check_by_ping_timeout, #require => File["$interface_file"], ## do not enable it!!! It affect requirements interface from interface in some cases. - subscribe => File["$interface_file"], + subscribe => $l3_if_downup__subscribe, refreshonly => true, }