File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 5454 require => Package[' iptables' ],
5555 }
5656 }
57+ ' Gentoo' : {
58+ class { "${title}::gentoo" :
59+ ensure => $ensure ,
60+ enable => $enable ,
61+ package_name => $package_name ,
62+ service_name => $service_name ,
63+ require => Package[' iptables' ],
64+ }
65+ }
5766 default: {}
5867 }
5968}
Original file line number Diff line number Diff line change 1+ # = Class: firewall::linux::gentoo
2+ #
3+ # Manages `iptables` and `ip6tables` services, and creates files used for
4+ # persistence, on Arch Linux systems.
5+ #
6+ # == Parameters:
7+ #
8+ # [*ensure*]
9+ # Ensure parameter passed onto Service[] resources.
10+ # Default: running
11+ #
12+ # [*enable*]
13+ # Enable parameter passed onto Service[] resources.
14+ # Default: true
15+ #
16+ class firewall::linux::gentoo (
17+ $ensure = ' running' ,
18+ $enable = true ,
19+ $service_name = $::firewall::params::service_name,
20+ $package_name = $::firewall::params::package_name,
21+ ) inherits ::firewall::params {
22+ if $package_name {
23+ package { $package_name:
24+ ensure => present ,
25+ }
26+ }
27+
28+ service { $service_name:
29+ ensure => $ensure ,
30+ enable => $enable ,
31+ hasstatus => true ,
32+ }
33+
34+ file { '/var/lib/iptables/rules-save' :
35+ ensure => present ,
36+ before => Service[$service_name ],
37+ }
38+
39+ file { '/var/lib/iptables/rules-save6' :
40+ ensure => present ,
41+ before => Service[$service_name ],
42+ }
43+ }
Original file line number Diff line number Diff line change 5656 }
5757 }
5858 }
59+ ' Gentoo' : {
60+ $service_name = [' iptables' ,' ip6tables' ]
61+ $package_name = ' net-firewall/iptables'
62+ }
5963 default: {
6064 $package_name = undef
6165 $service_name = ' iptables'
Original file line number Diff line number Diff line change 22 "name" : " puppetlabs-firewall" ,
33 "version" : " 1.4.0" ,
44 "author" : " Puppet Labs" ,
5- "summary" : " Manages Firewalls such as iptable " ,
5+ "summary" : " Manages Firewalls such as iptables " ,
66 "license" : " Apache-2.0" ,
77 "source" : " https://github.com/puppetlabs/puppetlabs-firewall" ,
88 "project_page" : " http://github.com/puppetlabs/puppetlabs-firewall" ,
6060 " 12.04" ,
6161 " 14.04"
6262 ]
63+ },
64+ {
65+ "operatingsystem" : " Gentoo" ,
66+ "operatingsystemrelease" : [
67+ " 1.0"
68+ ]
6369 }
6470 ],
6571 "requirements" : [
7379 }
7480 ],
7581 "dependencies" : [
76-
82+
7783 ]
7884}
Original file line number Diff line number Diff line change 1+ require 'spec_helper'
2+
3+ describe 'firewall::linux::gentoo' , :type => :class do
4+ let ( :facts ) do
5+ {
6+ :osfamily => 'Gentoo' ,
7+ :operatingsystem => 'Gentoo'
8+ }
9+ end
10+ it { should contain_service ( 'iptables' ) . with (
11+ :ensure => 'running' ,
12+ :enable => 'true'
13+ ) }
14+ it { should contain_service ( 'ip6tables' ) . with (
15+ :ensure => 'running' ,
16+ :enable => 'true'
17+ ) }
18+ it { should contain_package ( 'net-firewall/iptables' ) . with (
19+ :ensure => 'present'
20+ ) }
21+
22+ context 'ensure => stopped' do
23+ let ( :params ) { { :ensure => 'stopped' } }
24+ it { should contain_service ( 'iptables' ) . with (
25+ :ensure => 'stopped'
26+ ) }
27+ it { should contain_service ( 'ip6tables' ) . with (
28+ :ensure => 'stopped'
29+ ) }
30+ end
31+
32+ context 'enable => false' do
33+ let ( :params ) { { :enable => 'false' } }
34+ it { should contain_service ( 'iptables' ) . with (
35+ :enable => 'false'
36+ ) }
37+ it { should contain_service ( 'ip6tables' ) . with (
38+ :enable => 'false'
39+ ) }
40+ end
41+ end
You can’t perform that action at this time.
0 commit comments