From dda6e2a58e4360fb274b9423e007f4b01a859649 Mon Sep 17 00:00:00 2001 From: e1956711 Date: Sat, 22 Sep 2018 17:56:23 +1000 Subject: [PATCH 1/5] Add routes to the active routing table if they don't exist in the active routing table even if they've already been added to the route- network-script --- manifests/route.pp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/manifests/route.pp b/manifests/route.pp index 27c7534a..c524d373 100644 --- a/manifests/route.pp +++ b/manifests/route.pp @@ -67,6 +67,18 @@ before => File["ifcfg-${interface}"], } + $routes = zip($ipaddress, $netmask, $gateway) + $routes.each |Array $route|{ + $ipaddress = $route[0] + $netmask = $route[1] + $gateway = $route[2] + + exec { "route: $route": + command => "/usr/sbin/ip route add $ipaddress/$netmask via $gateway dev $interface", + unless => "/usr/sbin/ip route show $ipaddress/$netmask via $gateway dev $interface | grep \\.\\*", + } + } + if $restart { File["route-${interface}"] { notify => Service['network'], From 3a00f86d5747736ab964aeb3893773db0d6da96b Mon Sep 17 00:00:00 2001 From: e1956711 Date: Sat, 22 Sep 2018 18:10:43 +1000 Subject: [PATCH 2/5] Puppet-lint fixes --- manifests/route.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/route.pp b/manifests/route.pp index c524d373..1f3bf45c 100644 --- a/manifests/route.pp +++ b/manifests/route.pp @@ -74,8 +74,8 @@ $gateway = $route[2] exec { "route: $route": - command => "/usr/sbin/ip route add $ipaddress/$netmask via $gateway dev $interface", - unless => "/usr/sbin/ip route show $ipaddress/$netmask via $gateway dev $interface | grep \\.\\*", + command => "/usr/sbin/ip route add ${ipaddress}/${netmask} via ${gateway} dev ${interface}", + unless => "/usr/sbin/ip route show ${ipaddress}/${netmask} via ${gateway} dev ${interface} | grep \\.\\*", } } From a24da5f22b76b79481df5c9cb53a43a7f7181be0 Mon Sep 17 00:00:00 2001 From: e1956711 Date: Sat, 22 Sep 2018 18:14:05 +1000 Subject: [PATCH 3/5] Another puppet-lint fix --- manifests/route.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/route.pp b/manifests/route.pp index 1f3bf45c..78fe49e9 100644 --- a/manifests/route.pp +++ b/manifests/route.pp @@ -73,7 +73,7 @@ $netmask = $route[1] $gateway = $route[2] - exec { "route: $route": + exec { "route: ${route}": command => "/usr/sbin/ip route add ${ipaddress}/${netmask} via ${gateway} dev ${interface}", unless => "/usr/sbin/ip route show ${ipaddress}/${netmask} via ${gateway} dev ${interface} | grep \\.\\*", } From 269be1c1871a5484d75f34262aeb139377f2b542 Mon Sep 17 00:00:00 2001 From: e1956711 Date: Mon, 1 Oct 2018 15:02:18 +1000 Subject: [PATCH 4/5] Fix for "Error while evaluating a Function Call, str2bool(): Requires string" --- manifests/route.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/route.pp b/manifests/route.pp index 78fe49e9..0997cfe0 100644 --- a/manifests/route.pp +++ b/manifests/route.pp @@ -67,7 +67,7 @@ before => File["ifcfg-${interface}"], } - $routes = zip($ipaddress, $netmask, $gateway) + $routes = zip($ipaddress, zip($netmask, $gateway)).map |x| {x.flatten} $routes.each |Array $route|{ $ipaddress = $route[0] $netmask = $route[1] From ae6e84c0b4f4351706461f130e6d23cd0bcb925b Mon Sep 17 00:00:00 2001 From: e1956711 Date: Mon, 1 Oct 2018 15:13:30 +1000 Subject: [PATCH 5/5] Fix for "Syntax error at '.'; expected '}'" --- manifests/route.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/route.pp b/manifests/route.pp index 0997cfe0..a8691691 100644 --- a/manifests/route.pp +++ b/manifests/route.pp @@ -67,7 +67,7 @@ before => File["ifcfg-${interface}"], } - $routes = zip($ipaddress, zip($netmask, $gateway)).map |x| {x.flatten} + $routes = map(zip($ipaddress, zip($netmask, $gateway))) |$x| {$x.flatten} $routes.each |Array $route|{ $ipaddress = $route[0] $netmask = $route[1]