X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Fmanifests%2Finit.pp;h=84fc808d735283d09b5b004793c54243881a98cf;hb=c46d1f99d0294179797fb90e3b9fc5b44780bde5;hp=d97e1816a16fb4c376897dc90824d355fe598e8c;hpb=a2bea19ddf88b6abe62fe70650751c238826b028;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/manifests/init.pp b/modules/ferm/manifests/init.pp index d97e1816a..84fc808d7 100644 --- a/modules/ferm/manifests/init.pp +++ b/modules/ferm/manifests/init.pp @@ -1,28 +1,56 @@ class ferm { - define ferm_rule($domain="ip", $chain="INPUT", $rule, $description="", $prio="00") { + define rule($domain="ip", $chain="INPUT", $rule, $description="", $prio="00") { file { "/etc/ferm/dsa.d/${prio}_${name}": ensure => present, owner => root, group => root, - mode => 0600, + mode => 0400, content => template("ferm/ferm-rule.erb"), + notify => Exec["ferm restart"], } } + # realize (i.e. enable) all @ferm::rule virtual resources + Ferm::Rule <| |> + package { ferm: ensure => installed } file { - "/etc/ferm/dsa.d": + "/etc/ferm/dsa.d": + ensure => directory, + purge => true, + force => true, + recurse => true, + source => "puppet:///files/empty/", + require => Package["ferm"]; + "/etc/ferm/conf.d": ensure => directory, require => Package["ferm"]; - "/etc/ferm/dsa.d/me.conf": + "/etc/ferm/ferm.conf": + source => "puppet:///ferm/ferm.conf", + require => Package["ferm"], + mode => 0400, + notify => Exec["ferm restart"]; + "/etc/ferm/conf.d/me.conf": content => template("ferm/me.conf.erb"), require => Package["ferm"], + mode => 0400, + notify => Exec["ferm restart"]; + "/etc/ferm/conf.d/defs.conf": + content => template("ferm/defs.conf.erb"), + require => Package["ferm"], + mode => 0400, + notify => Exec["ferm restart"]; + "/etc/ferm/conf.d/interfaces.conf": + content => template("ferm/interfaces.conf.erb"), + require => Package["ferm"], + mode => 0400, notify => Exec["ferm restart"]; } exec { "ferm restart": - path => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin", + command => "/etc/init.d/ferm restart", refreshonly => true, } + }