]> gitweb.fluxo.info Git - puppet-shorewall.git/commitdiff
refactor things to use the concat module
authorMarcel Haerry <haerry@puzzle.ch>
Thu, 4 Aug 2011 11:39:27 +0000 (13:39 +0200)
committerMarcel Haerry <haerry@puzzle.ch>
Thu, 4 Aug 2011 11:39:27 +0000 (13:39 +0200)
23 files changed:
files/shorewall.conf
files/shorewall.conf.Debian
files/shorewall.conf.Debian.etch
files/shorewall.conf.Gentoo
files/shorewall.conf.Ubuntu.karmic
manifests/base.pp
manifests/blacklist.pp
manifests/entry.pp
manifests/host.pp
manifests/init.pp
manifests/interface.pp
manifests/managed_file.pp
manifests/masq.pp
manifests/nat.pp
manifests/params.pp
manifests/policy.pp
manifests/providers.pp
manifests/proxyarp.pp
manifests/rfc1918.pp
manifests/routestopped.pp
manifests/rule.pp
manifests/rule_section.pp
manifests/zone.pp

index 979e4ffb82193b87dc4a2bd1c4cbd3c7d4c8fea3..614e06289569e2245550107837649edf7a3c1c98 100644 (file)
@@ -78,7 +78,7 @@ SUBSYSLOCK=/var/lock/subsys/shorewall
 
 MODULESDIR=
 
-CONFIG_PATH=/var/lib/puppet/modules/shorewall:/etc/shorewall:/usr/share/shorewall
+CONFIG_PATH=/etc/shorewall/puppet:/etc/shorewall:/usr/share/shorewall
 
 RESTOREFILE=
 
index c3480174ce25e6b447b99ceaa9b302bf86489fc8..4d9b255df39339eed09460a1b219643721de8316 100644 (file)
@@ -79,7 +79,7 @@ SUBSYSLOCK=""
 MODULESDIR=
 
 # add puppet delivered files in front
-CONFIG_PATH=/var/lib/puppet/modules/shorewall:/etc/shorewall:/usr/share/shorewall
+CONFIG_PATH=/etc/shorewall/puppet:/etc/shorewall:/usr/share/shorewall
 
 RESTOREFILE=
 
index e5c722d14dba6ff99b32a5103147d0825c3a8dc1..590794591d4755b61626fc504f51f3f71a1912a8 100644 (file)
@@ -77,7 +77,7 @@ SUBSYSLOCK=""
 MODULESDIR=
 
 # add puppet delivered files in front
-CONFIG_PATH=/var/lib/puppet/modules/shorewall:/etc/shorewall:/usr/share/shorewall
+CONFIG_PATH=/etc/shorewall/puppet:/etc/shorewall:/usr/share/shorewall
 
 RESTOREFILE=
 
index 7d8049dae7cef342810b1d912b49c41288f8d357..b99f50cca92c6e7b4b86edc18a0ffd4f93b4c683 100644 (file)
@@ -77,7 +77,7 @@ SUBSYSLOCK="/var/lock/subsys/shorewall"
 MODULESDIR=
 
 # add puppet delivered files in front
-CONFIG_PATH=/var/lib/puppet/modules/shorewall:/etc/shorewall:/usr/share/shorewall
+CONFIG_PATH=/etc/shorewall/puppet:/etc/shorewall:/usr/share/shorewall
 
 RESTOREFILE=
 
index c3480174ce25e6b447b99ceaa9b302bf86489fc8..4d9b255df39339eed09460a1b219643721de8316 100644 (file)
@@ -79,7 +79,7 @@ SUBSYSLOCK=""
 MODULESDIR=
 
 # add puppet delivered files in front
-CONFIG_PATH=/var/lib/puppet/modules/shorewall:/etc/shorewall:/usr/share/shorewall
+CONFIG_PATH=/etc/shorewall/puppet:/etc/shorewall:/usr/share/shorewall
 
 RESTOREFILE=
 
index c5ad7906c2bbe320b0b52723537ec9a87ae5ed48..c9fa6608c4f004d4cd2eea5b8d2058d3d788b8fa 100644 (file)
@@ -4,9 +4,10 @@ class shorewall::base {
     }
 
     # This file has to be managed in place, so shorewall can find it
-    file { "/etc/shorewall/shorewall.conf":
-      # use OS specific defaults, but use Default if no other is found
-      source => [
+    file {
+      '/etc/shorewall/shorewall.conf':
+        # use OS specific defaults, but use Default if no other is found
+        source => [
             "puppet:///modules/site-shorewall/${fqdn}/shorewall.conf.$operatingsystem",
             "puppet:///modules/site-shorewall/${fqdn}/shorewall.conf",
             "puppet:///modules/site-shorewall/shorewall.conf.$operatingsystem.$lsbdistcodename",
@@ -19,6 +20,10 @@ class shorewall::base {
         require => Package[shorewall],
         notify => Service[shorewall],
         owner => root, group => 0, mode => 0644;
+      '/etc/shorewall/puppet':
+        ensure => directory,
+        require => Package[shorewall],
+        owner => root, group => 0, mode => 0644;
     }
 
     service{shorewall:
@@ -26,21 +31,6 @@ class shorewall::base {
         enable  => true,
         hasstatus => true,
         hasrestart => true,
-        subscribe => [
-            File["/var/lib/puppet/modules/shorewall/zones"],
-            File["/var/lib/puppet/modules/shorewall/interfaces"],
-            File["/var/lib/puppet/modules/shorewall/hosts"],
-            File["/var/lib/puppet/modules/shorewall/policy"],
-            File["/var/lib/puppet/modules/shorewall/rules"],
-            File["/var/lib/puppet/modules/shorewall/masq"],
-            File["/var/lib/puppet/modules/shorewall/proxyarp"],
-            File["/var/lib/puppet/modules/shorewall/nat"],
-            File["/var/lib/puppet/modules/shorewall/blacklist"],
-            File["/var/lib/puppet/modules/shorewall/rfc1918"],
-            File["/var/lib/puppet/modules/shorewall/routestopped"],
-            File["/var/lib/puppet/modules/shorewall/params"],
-            File["/var/lib/puppet/modules/shorewall/providers"],
-        ],
         require => Package[shorewall],
     }
 }
index 3700ace75625d3f0b03fae7e9ada4f16a4b08520..afbe216598997bb3825949e0c15d18614dc02d8d 100644 (file)
@@ -3,7 +3,7 @@ define shorewall::blacklist(
     $port = '-',
     $order='100'
 ){
-    shorewall::entry{"blacklist.d/${order}-${name}":
+    shorewall::entry{"blacklist-${order}-${name}":
         line => "${name} ${proto} ${port}",
     }           
 }
index 4e639bcfa434f79e6972c4a985beb8e35748ca90..c8fffc7210e05e1b062828f3af802a8888eef2b8 100644 (file)
@@ -2,12 +2,11 @@ define shorewall::entry(
     $ensure = present,
     $line
 ){
-   $target = "/var/lib/puppet/modules/shorewall/${name}"
-   $dir = dirname($target)
-   file { $target:
-        ensure => $ensure,
-        content => "${line}\n",
-        mode => 0600, owner => root, group => 0,
-        notify => Exec["concat_${dir}"],
-    }
+  $parts = split($name,'-')
+  concat::fragment{$name:
+    ensure => $ensure,
+    content => "${line}\n",
+    order => $parts[1],
+    target => "/etc/shorewall/puppet/${parts[0]}",
+  }
 }
index b431efe84ceda282c3cbee5b36578850179ffc5e..f40022324ed1ffd83e6f87f9c926c56385af193f 100644 (file)
@@ -3,7 +3,7 @@ define shorewall::host(
     $options = 'tcpflags,blacklist,norfc1918',
     $order='100'
 ){
-    shorewall::entry{"hosts.d/${order}-${name}":
+    shorewall::entry{"hosts-${order}-${name}":
         line => "${zone} ${name} ${options}"
     }
 }
index a5ed0af0fa73d22c14c2fb4449cc30735c0c8f72..2e6808958b44f950d8cd51cea28871056453461d 100644 (file)
@@ -1,8 +1,5 @@
 class shorewall { 
 
-  include common::moduledir
-  module_dir { "shorewall": }
-
   case $operatingsystem {
     gentoo: { include shorewall::gentoo }
     debian: { include shorewall::debian }
@@ -19,12 +16,6 @@ class shorewall {
     }
   }
 
-  file {"/var/lib/puppet/modules/shorewall":
-    ensure => directory,
-    force => true,
-    owner => root, group => 0, mode => 0755; 
-  }
-
   # See http://www.shorewall.net/3.0/Documentation.htm#Zones
   shorewall::managed_file{ zones: }
   # See http://www.shorewall.net/3.0/Documentation.htm#Interfaces
index 1cb5042d29b22f08546b8ac69ffb6be2fbb4f37c..1716a7e472a0e24a4a63f31df38bbca5a4f3b3aa 100644 (file)
@@ -20,7 +20,7 @@ define shorewall::interface(
         }
     }
 
-    shorewall::entry { "interfaces.d/${order}-${name}":
+    shorewall::entry { "interfaces-${order}-${name}":
         line => "${zone} ${name} ${broadcast} ${options_real}",
     }
 }
index 548d6f6d895569f8e95c3d095108c9bb104aa808..2f02c51d30c720690d24b008b9949cbf8f99862c 100644 (file)
@@ -1,17 +1,15 @@
 define shorewall::managed_file () {
-    $dir = "/var/lib/puppet/modules/shorewall/${name}.d"
-    concatenated_file { "/var/lib/puppet/modules/shorewall/$name":
-        dir => $dir,
-        mode => 0600,
-    }       
-    file {
-        "${dir}/000-header":
-            source => "puppet:///modules/shorewall/boilerplate/${name}.header",
-            mode => 0600, owner => root, group => 0,
-            notify => Exec["concat_${dir}"];
-        "${dir}/999-footer":
-            source => "puppet:///modules/shorewall/boilerplate/${name}.footer",
-            mode => 0600, owner => root, group => 0,
-            notify => Exec["concat_${dir}"];
-    }       
+  concat{ "/etc/shorewall/puppet/$name":
+    notify => Service['shorewall'],
+    require => File['/etc/shorewall/puppet'],
+    owner => root, group => 0, mode => 0600;
+  }       
+  concat::fragment {
+    "${name}-header":
+      source => "puppet:///modules/shorewall/boilerplate/${name}.header",
+      order => '000';
+    "${name}-footer":
+      source => "puppet:///modules/shorewall/boilerplate/${name}.footer",
+      order => '999';
+  }       
 } 
index a9c9840fa3dc3c9204675fc3bc3488178abfd960..fb097e5ea3062027e37752d348a2f5736ac5e00f 100644 (file)
@@ -10,7 +10,7 @@ define shorewall::masq(
     $mark = '',
     $order='100'
 ){
-    shorewall::entry{"masq.d/${order}-${name}":
+    shorewall::entry{"masq-${order}-${name}":
         line => "# ${name}\n${interface} ${source} ${address} ${proto} ${port} ${ipsec} ${mark}"
     }
 }
index e69c1c0c86cc7450e325f46e470a524cdbc96574..e29b78499c76d03b3292e8faeb688c12e41fa35d 100644 (file)
@@ -5,7 +5,7 @@ define shorewall::nat(
     $local = 'yes',
     $order='100'
 ){
-    shorewall::entry{"nat.d/${order}-${name}":
+    shorewall::entry{"nat-${order}-${name}":
         line => "${name} ${interface} ${internal} ${all} ${local}"
     }           
 }
index 0a1ae116fc774b47f7fbc6485c29086c5ce2824d..3bc56630584c8c0c48ad04f8253f4ac9471761a9 100644 (file)
@@ -1,5 +1,5 @@
 define shorewall::params($value, $order='100'){
-    shorewall::entry{"params.d/${order}-${name}":
+    shorewall::entry{"params-${order}-${name}":
         line => "${name}=${value}",
     }
 }
index cdaab711c06c34c7ae9e4d3f63eb16d19191e07f..efee05b58705b984a3a8a79218e87a20aaedb914 100644 (file)
@@ -5,7 +5,7 @@ define shorewall::policy(
     $limitburst = '-',
     $order
 ){
-    shorewall::entry{"policy.d/${order}-${name}":
+    shorewall::entry{"policy-${order}-${name}":
         line => "# ${name}\n${sourcezone} ${destinationzone} ${policy} ${shloglevel} ${limitburst}",
     }
 }
index 860363e5530245c53612d60b4fc6e2e94adc92ff..a02a49468ba0bdf7c4e42cce80538703935c496f 100644 (file)
@@ -9,7 +9,7 @@ define shorewall::providers(
     $copy = '',
     $order='100'
 ){
-    shorewall::entry{"providers.d/${order}-${name}":
+    shorewall::entry{"providers-${order}-${name}":
         line => "# ${name}\n${provider} ${number} ${mark} ${duplicate} ${interface} ${gateway} ${options} ${copy}"
     }
 }
index 75c853bd51afc8e211d3a977765c43d9ac2da8a4..1af554fb3562ad9c3893965ec65be053c3732b1c 100644 (file)
@@ -5,7 +5,7 @@ define shorewall::proxyarp(
     $persistent = no,
     $order='100'
     ){
-    shorewall::entry{"proxyarp.d/${order}-${name}":
+    shorewall::entry{"proxyarp-${order}-${name}":
         line => "# ${name}\n${name} ${interface} ${external} ${haveroute} ${persistent}"
     }
 }
index 6c2719c21dfbd03a920d04140d0fa4a5f8b7b20e..31dce5dc4bcf6a5553d7e2adb5762c950841e26b 100644 (file)
@@ -2,7 +2,7 @@ define shorewall::rfc1918(
     $action = 'logdrop',
     $order='100'
 ){
-    shorewall::entry{"rfc1918.d/${order}-${name}":
+    shorewall::entry{"rfc1918-${order}-${name}":
         line => "${name} ${action}"
     }   
 }
index dab539c54f71a7fd95c1c3b4e89aea660c1f1958..0b53a1b0b23bc1cc6fd188bee4911cb4d520da08 100644 (file)
@@ -8,7 +8,7 @@ define shorewall::routestopped(
         '' => $name,
         default => $interface,
     }   
-    shorewall::entry{"routestopped.d/${order}-${name}":
+    shorewall::entry{"routestopped-${order}-${name}":
         line => "${real_interface} ${host} ${options}",
     }           
 }
index 8394970cfe8ec8e2743bc06dec7ae879dcd53b99..2fe91e2733a33b2aed6c31435b428df906b84658 100644 (file)
@@ -13,8 +13,8 @@ define shorewall::rule(
     $mark = '',
     $order
 ){
-    shorewall::entry{"rules.d/${order}-${name}":
-        ensure => $ensure,
-        line => "# ${name}\n${action} ${source} ${destination} ${proto} ${destinationport} ${sourceport} ${originaldest} ${ratelimit} ${user} ${mark}",
-    }
+  shorewall::entry{"rules-${order}-${name}":
+    ensure => $ensure,
+    line => "# ${name}\n${action} ${source} ${destination} ${proto} ${destinationport} ${sourceport} ${originaldest} ${ratelimit} ${user} ${mark}",
+  }
 }
index a885eae2a3bd4623b9d96ae8b429fbd8467db00f..82984ca2244b0bfd52bf2b13676c5f31a7b3686a 100644 (file)
@@ -1,7 +1,7 @@
 define shorewall::rule_section(
     $order
 ){
-    shorewall::entry{"rules.d/${order}-${name}":
+    shorewall::entry{"rules-${order}-${name}":
         line => "SECTION ${name}",
     }       
 }
index fa83b0b6558813d27f0b7e09f83d66d367304c00..81e57711a1edca0d5dab446a3047506dcd9dc43c 100644 (file)
@@ -7,7 +7,7 @@ define shorewall::zone(
     $order = 100
 ){
     $real_name = $parent ? { '-' => $name, default => "${name}:${parent}" }
-    shorewall::entry { "zones.d/${order}-${name}":
+    shorewall::entry { "zones-${order}-${name}":
         line => "${real_name} ${type} ${options} ${in} ${out}"
     }
 }