From 41c9af4532fa4e6615dd221430d250e43c9cd712 Mon Sep 17 00:00:00 2001
From: Massimiliano Adamo <maxadamo@gmail.com>
Date: Thu, 19 Jan 2023 11:05:31 +0100
Subject: [PATCH] code clean up

---
 functions/fw_builder_public_ips.pp | 26 +++++++++++---------------
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git a/functions/fw_builder_public_ips.pp b/functions/fw_builder_public_ips.pp
index 4dc000d..9b4cc7e 100644
--- a/functions/fw_builder_public_ips.pp
+++ b/functions/fw_builder_public_ips.pp
@@ -28,29 +28,25 @@ function fw_builder::fw_builder_public_ips(
   if $facts_fw_conf =~ Undef or $facts_ipsets =~ Undef {
     $public_ipsets = []
   # if public is empty it's seen as empty string
-  } elsif $facts_fw_conf['public'] =~ String {
+  } elsif $facts_fw_conf['public'] =~ String or  $facts_fw_conf['public'] =~ Undef {
+    warning('fw_builder public key exists but it\'s empty')
     $public_ipsets = []
   } else {
     # if public is present and contains some value
     if 'public' in $facts_fw_conf {
 
-      if $facts_fw_conf['public'] =~ Undef {
-        warning('fw_builder public key exists but it\'s empty')
-        $public_ipsets = []
-      } else {
-        $facts_fw_conf_public = $facts_fw_conf['public']
+      $facts_fw_conf_public = $facts_fw_conf['public']
 
-        # create a list of lists with all the ipsets in public
-        $unflattened_public_ipsets = $facts_fw_conf_public.map |$app_key, $app_value| {
-          if 'ipset' in keys($facts_fw_conf_public[$app_key]) {
-            $facts_fw_conf_public[$app_key]['ipset']
-          }
+      # create a list of lists with all the ipsets in public
+      $unflattened_public_ipsets = $facts_fw_conf_public.map |$app_key, $app_value| {
+        if 'ipset' in keys($facts_fw_conf_public[$app_key]) {
+          $facts_fw_conf_public[$app_key]['ipset']
         }
-
-        # flatten the list of list into a list with unique elements, and remove any Undef
-        $public_ipsets_with_undef = unique(flatten($unflattened_public_ipsets))
-        $public_ipsets = $public_ipsets_with_undef.filter |$item| { $item !~ Undef }
       }
+
+      # flatten the list of list into a list with unique elements, and remove any Undef
+      $public_ipsets_with_undef = unique(flatten($unflattened_public_ipsets))
+      $public_ipsets = $public_ipsets_with_undef.filter |$item| { $item !~ Undef }
     } else {
       $public_ipsets = []
     }
-- 
GitLab