simp-rake-helpers 3.7.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +5 -0
  3. data/CHANGELOG.md +10 -0
  4. data/lib/simp/rake/helpers/version.rb +1 -1
  5. data/lib/simp/rake/pupmod/helpers.rb +64 -48
  6. data/lib/simp/rake/rubygem.rb +1 -0
  7. data/spec/lib/simp/rake/pupmod/fixtures/othermod/Gemfile +18 -0
  8. data/spec/lib/simp/rake/pupmod/fixtures/othermod/README.md +83 -0
  9. data/spec/lib/simp/rake/pupmod/fixtures/othermod/Rakefile +32 -0
  10. data/spec/lib/simp/rake/pupmod/fixtures/othermod/examples/init.pp +12 -0
  11. data/spec/lib/simp/rake/pupmod/fixtures/othermod/manifests/init.pp +48 -0
  12. data/spec/lib/simp/rake/pupmod/fixtures/othermod/metadata.json +15 -0
  13. data/spec/lib/simp/rake/pupmod/fixtures/othermod/spec/classes/init_spec.rb +6 -0
  14. data/spec/lib/simp/rake/pupmod/fixtures/othermod/spec/spec_helper.rb +1 -0
  15. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/CHANGELOG +11 -0
  16. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/CONTRIBUTORS +1 -0
  17. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/Gemfile +40 -0
  18. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/LICENSE +25 -0
  19. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/README.md +139 -0
  20. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/Rakefile +3 -0
  21. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/build/rpm_metadata/requires +7 -0
  22. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/data/common.yaml +2 -0
  23. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/hiera.yaml +10 -0
  24. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config.pp +7 -0
  25. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/auditing.pp +15 -0
  26. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/firewall.pp +14 -0
  27. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/logging.pp +16 -0
  28. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/pki.pp +16 -0
  29. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/selinux.pp +15 -0
  30. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/config/tcpwrappers.pp +16 -0
  31. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/init.pp +110 -0
  32. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/install.pp +11 -0
  33. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/manifests/service.pp +15 -0
  34. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/metadata.json +50 -0
  35. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/acceptance/nodesets/centos-combined-x64.yml +22 -0
  36. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/acceptance/nodesets/default.yml +1 -0
  37. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/acceptance/suites/default/class_spec.rb +32 -0
  38. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/acceptance/suites/default/nodesets +1 -0
  39. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/classes/init_spec.rb +87 -0
  40. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/spec_helper.rb +92 -0
  41. data/spec/lib/simp/rake/pupmod/fixtures/simpmod/spec/spec_helper_acceptance.rb +45 -0
  42. data/spec/lib/simp/rake/pupmod/helpers_spec.rb +56 -4
  43. metadata +49 -8
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "other-othermod",
3
+ "version": "0.1.0",
4
+ "author": "other",
5
+ "summary": null,
6
+ "license": "Apache-2.0",
7
+ "source": "",
8
+ "project_page": null,
9
+ "issues_url": null,
10
+ "dependencies": [
11
+ {"name":"puppetlabs-stdlib","version_requirement":">= 1.0.0"}
12
+ ],
13
+ "data_provider": null
14
+ }
15
+
@@ -0,0 +1,6 @@
1
+ require 'spec_helper'
2
+ describe 'othermod' do
3
+ context 'with default values for all parameters' do
4
+ it { should contain_class('othermod') }
5
+ end
6
+ end
@@ -0,0 +1 @@
1
+ require 'puppetlabs_spec_helper/module_spec_helper'
@@ -0,0 +1,11 @@
1
+ * Tue Jan 2 1970 Second Author <email1@domain.com> - 0.1.0
2
+ - Fix number 3
3
+ - Fix number 4
4
+
5
+ * Mon Jan 1 1970 First Author <email2@domain.com> - 0.1.0
6
+ - Fix number 1
7
+ - Fix number 2
8
+
9
+ * Mon Jan 1 1970 First Last <email@domain.com> - 0.0.1
10
+ - First release
11
+ - Updated CHANGELOG
@@ -0,0 +1,40 @@
1
+ # NOTE: SIMP Puppet rake tasks support ruby 2.1.9
2
+ # ------------------------------------------------------------------------------
3
+ gem_sources = ENV.fetch('GEM_SERVERS','https://rubygems.org').split(/[, ]+/)
4
+
5
+ gem_sources.each { |gem_source| source gem_source }
6
+
7
+ group :test do
8
+ gem 'rake'
9
+ gem 'puppet', ENV.fetch('PUPPET_VERSION', '~>4.8.0') # Default to SIMP 6
10
+ gem 'rspec'
11
+ gem 'rspec-puppet'
12
+ gem 'puppet-strings'
13
+ gem 'hiera-puppet-helper'
14
+ gem 'puppetlabs_spec_helper'
15
+ gem 'metadata-json-lint'
16
+ gem 'puppet-lint-empty_string-check', :require => false
17
+ gem 'puppet-lint-trailing_comma-check', :require => false
18
+ gem 'simp-rspec-puppet-facts', ENV.fetch('SIMP_RSPEC_PUPPET_FACTS_VERSION', '~> 1.3')
19
+ gem 'simp-rake-helpers', ENV.fetch('SIMP_RAKE_HELPERS_VERSION', '~> 3.5')
20
+ end
21
+
22
+ group :development do
23
+ gem 'travis'
24
+ gem 'travis-lint'
25
+ gem 'travish'
26
+ gem 'puppet-blacksmith'
27
+ gem 'guard-rake'
28
+ gem 'pry'
29
+ gem 'pry-doc'
30
+
31
+ # `listen` is a dependency of `guard`
32
+ # from `listen` 3.1+, `ruby_dep` requires Ruby version >= 2.2.3, ~> 2.2
33
+ gem 'listen', '~> 3.0.6'
34
+ end
35
+
36
+ group :system_tests do
37
+ gem 'beaker'
38
+ gem 'beaker-rspec'
39
+ gem 'simp-beaker-helpers', ENV.fetch('SIMP_BEAKER_HELPERS_VERSION', '~> 1.7')
40
+ end
@@ -0,0 +1,25 @@
1
+ simpmod - A module fixture that models a simp module
2
+
3
+ Per Section 105 of the Copyright Act of 1976, these works are not entitled to
4
+ domestic copyright protection under US Federal law.
5
+
6
+ The US Government retains the right to pursue copyright protections outside of
7
+ the United States.
8
+
9
+ The United States Government has unlimited rights in this software and all
10
+ derivatives thereof, pursuant to the contracts under which it was developed and
11
+ the License under which it falls.
12
+
13
+ ---
14
+
15
+ Licensed under the Apache License, Version 2.0 (the "License");
16
+ you may not use this file except in compliance with the License.
17
+ You may obtain a copy of the License at
18
+
19
+ http://www.apache.org/licenses/LICENSE-2.0
20
+
21
+ Unless required by applicable law or agreed to in writing, software
22
+ distributed under the License is distributed on an "AS IS" BASIS,
23
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
24
+ See the License for the specific language governing permissions and
25
+ limitations under the License.
@@ -0,0 +1,139 @@
1
+ **FIXME**: Ensure the badges are correct and complete, then remove this message!
2
+
3
+ [![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) [![Build Status](https://travis-ci.org/simp/pupmod-simp-simpmod.svg)](https://travis-ci.org/simp/pupmod-simp-simpmod) [![SIMP compatibility](https://img.shields.io/badge/SIMP%20compatibility-6.*-orange.svg)](https://img.shields.io/badge/SIMP%20compatibility-6.*-orange.svg)
4
+
5
+ #### Table of Contents
6
+
7
+ 1. [Description](#description)
8
+ 2. [Setup - The basics of getting started with simpmod](#setup)
9
+ * [What simpmod affects](#what-simpmod-affects)
10
+ * [Setup requirements](#setup-requirements)
11
+ * [Beginning with simpmod](#beginning-with-simpmod)
12
+ 3. [Usage - Configuration options and additional functionality](#usage)
13
+ 4. [Reference - An under-the-hood peek at what the module is doing and how](#reference)
14
+ 5. [Limitations - OS compatibility, etc.](#limitations)
15
+ 6. [Development - Guide for contributing to the module](#development)
16
+ * [Acceptance Tests - Beaker env variables](#acceptance-tests)
17
+
18
+ ## Description
19
+
20
+ **FIXME:** Ensure the *Description* section is correct and complete, then remove this message!
21
+
22
+ Start with a one- or two-sentence summary of what the module does and/or what
23
+ problem it solves. This is your 30-second elevator pitch for your module.
24
+ Consider including OS and Puppet version compatability, and any other
25
+ information users will need to quickly assess the module's viability within
26
+ their environment.
27
+
28
+ You can give more descriptive information in a second paragraph. This paragraph
29
+ should answer the questions: "What does this module *do*?" and "Why would I use
30
+ it?" If your module has a range of functionality (installation, configuration,
31
+ management, etc.), this is the time to mention it.
32
+
33
+ ### This is a SIMP module
34
+
35
+ This module is a component of the [System Integrity Management
36
+ Platform](https://github.com/NationalSecurityAgency/SIMP), a
37
+ compliance-management framework built on Puppet.
38
+
39
+ If you find any issues, they may be submitted to our [bug
40
+ tracker](https://simp-project.atlassian.net/).
41
+
42
+ **FIXME:** Ensure the *This is a SIMP module* section is correct and complete, then remove this message!
43
+
44
+ This module is optimally designed for use within a larger SIMP ecosystem, but
45
+ it can be used independently:
46
+
47
+ * When included within the SIMP ecosystem, security compliance settings will
48
+ be managed from the Puppet server.
49
+ * If used independently, all SIMP-managed security subsystems are disabled by
50
+ default and must be explicitly opted into by administrators. Please review
51
+ the parameters in
52
+ [`simp/simp_options`](https://github.com/simp/pupmod-simp-simp_options) for
53
+ details.
54
+
55
+ ## Setup
56
+
57
+ ### What simpmod affects
58
+
59
+ **FIXME:** Ensure the *What simpmod affects* section is correct and complete, then remove this message!
60
+
61
+ If it's obvious what your module touches, you can skip this section. For
62
+ example, folks can probably figure out that your mysql_instance module affects
63
+ their MySQL instances.
64
+
65
+ If there's more that they should know about, though, this is the place to
66
+ mention:
67
+
68
+ * A list of files, packages, services, or operations that the module will
69
+ alter, impact, or execute.
70
+ * Dependencies that your module automatically installs.
71
+ * Warnings or other important notices.
72
+
73
+ ### Setup Requirements **OPTIONAL**
74
+
75
+ **FIXME:** Ensure the *Setup Requirements* section is correct and complete, then remove this message!
76
+
77
+ If your module requires anything extra before setting up (pluginsync enabled,
78
+ etc.), mention it here.
79
+
80
+ If your most recent release breaks compatibility or requires particular steps
81
+ for upgrading, you might want to include an additional "Upgrading" section
82
+ here.
83
+
84
+ ### Beginning with simpmod
85
+
86
+ **FIXME:** Ensure the *Beginning with simpmod* section is correct and complete, then remove this message!
87
+
88
+ The very basic steps needed for a user to get the module up and running. This
89
+ can include setup steps, if necessary, or it can be an example of the most
90
+ basic use of the module.
91
+
92
+ ## Usage
93
+
94
+ **FIXME:** Ensure the *Usage* section is correct and complete, then remove this message!
95
+
96
+ This section is where you describe how to customize, configure, and do the
97
+ fancy stuff with your module here. It's especially helpful if you include usage
98
+ examples and code samples for doing things with your module.
99
+
100
+ ## Reference
101
+
102
+ **FIXME:** Ensure the *Reference* section is correct and complete, then remove this message! If there is pre-generated YARD documentation for this module, ensure the text links to it and remove references to inline documentation.
103
+
104
+ Please refer to the inline documentation within each source file, or to the
105
+ module's generated YARD documentation for reference material.
106
+
107
+ ## Limitations
108
+
109
+ **FIXME:** Ensure the *Limitations* section is correct and complete, then remove this message!
110
+
111
+ SIMP Puppet modules are generally intended for use on Red Hat Enterprise Linux
112
+ and compatible distributions, such as CentOS. Please see the
113
+ [`metadata.json` file](./metadata.json) for the most up-to-date list of
114
+ supported operating systems, Puppet versions, and module dependencies.
115
+
116
+ ## Development
117
+
118
+ **FIXME:** Ensure the *Development* section is correct and complete, then remove this message!
119
+
120
+ Please read our [Contribution Guide](http://simp-doc.readthedocs.io/en/stable/contributors_guide/index.html).
121
+
122
+ ### Acceptance tests
123
+
124
+ This module includes [Beaker](https://github.com/puppetlabs/beaker) acceptance
125
+ tests using the SIMP [Beaker Helpers](https://github.com/simp/rubygem-simp-beaker-helpers).
126
+ By default the tests use [Vagrant](https://www.vagrantup.com/) with
127
+ [VirtualBox](https://www.virtualbox.org) as a back-end; Vagrant and VirtualBox
128
+ must both be installed to run these tests without modification. To execute the
129
+ tests run the following:
130
+
131
+ ```shell
132
+ bundle install
133
+ bundle exec rake beaker:suites
134
+ ```
135
+
136
+ **FIXME:** Ensure the *Acceptance tests* section is correct and complete, including any module-specific instructions, and remove this message!
137
+
138
+ Please refer to the [SIMP Beaker Helpers documentation](https://github.com/simp/rubygem-simp-beaker-helpers/blob/master/README.md)
139
+ for more information.
@@ -0,0 +1,3 @@
1
+ require 'simp/rake/pupmod/helpers'
2
+
3
+ Simp::Rake::Pupmod::Helpers.new(File.dirname(__FILE__))
@@ -0,0 +1,7 @@
1
+ # Drop all Requires, Obsoletes, and Provides statements in here
2
+ Requires: pupmod-puppetlabs-stdlib >= 4.13.1-0
3
+ Requires: pupmod-puppetlabs-stdlib < 5.0.0-0
4
+ Requires: pupmod-simp-simplib >= 3.3.1-0
5
+ Requires: pupmod-simp-simplib < 4.0.0-0
6
+ Requires: pupmod-simp-iptables >= 6.0.1-0
7
+ Requires: pupmod-simp-iptables < 7.0.0-0
@@ -0,0 +1,2 @@
1
+ ---
2
+ # simpmod::parameter_name: 'value'
@@ -0,0 +1,10 @@
1
+ ---
2
+ version: 4
3
+ datadir: data
4
+ hierarchy:
5
+ - name: "OS family"
6
+ backend: yaml
7
+ path: "os/%{facts.os.family}"
8
+
9
+ - name: "common"
10
+ backend: yaml
@@ -0,0 +1,7 @@
1
+ # == Class simpmod::config
2
+ #
3
+ # This class is called from simpmod for service config.
4
+ #
5
+ class simpmod::config {
6
+ assert_private()
7
+ }
@@ -0,0 +1,15 @@
1
+ # == Class simpmod::config::auditing
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that auditing rules are defined.
5
+ #
6
+ class simpmod::config::auditing {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's auditing settings are defined here.
10
+ $msg = "FIXME: define the ${module_name} module's auditing settings."
11
+
12
+ notify{ 'FIXME: auditing': message => $msg } # FIXME: remove this and add logic
13
+ err( $msg ) # FIXME: remove this and add logic
14
+
15
+ }
@@ -0,0 +1,14 @@
1
+ # == Class simpmod::config::firewall
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that firewall rules are defined.
5
+ #
6
+ class simpmod::config::firewall {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's firewall settings are defined here.
10
+ iptables::listen::tcp_stateful { 'allow_simpmod_tcp_connections':
11
+ trusted_nets => $::simpmod::trusted_nets,
12
+ dports => $::simpmod::tcp_listen_port
13
+ }
14
+ }
@@ -0,0 +1,16 @@
1
+ # == Class simpmod::config::logging
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that logging rules are defined.
5
+ #
6
+ class simpmod::config::logging {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's logging settings are defined here.
10
+ $msg = "FIXME: define the ${module_name} module's logging settings."
11
+
12
+ notify{ 'FIXME: logging': message => $msg } # FIXME: remove this and add logic
13
+ err( $msg ) # FIXME: remove this and add logic
14
+
15
+ }
16
+
@@ -0,0 +1,16 @@
1
+ # == Class simpmod::config::config::pki
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that pki rules are defined.
5
+ #
6
+ class simpmod::config::pki {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's pki settings are defined here.
10
+ $msg = "FIXME: define the ${module_name} module's pki settings."
11
+
12
+ notify{ 'FIXME: pki': message => $msg } # FIXME: remove this and add logic
13
+ err( $msg ) # FIXME: remove this and add logic
14
+
15
+ }
16
+
@@ -0,0 +1,15 @@
1
+ # == Class simpmod::config::selinux
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that selinux rules are defined.
5
+ #
6
+ class simpmod::config::selinux {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's selinux settings are defined here.
10
+ $msg = "FIXME: define the ${module_name} module's selinux settings."
11
+
12
+ notify{ 'FIXME: selinux': message => $msg } # FIXME: remove this and add logic
13
+ err( $msg ) # FIXME: remove this and add logic
14
+
15
+ }
@@ -0,0 +1,16 @@
1
+ # == Class simpmod::config::tcpwrappers
2
+ #
3
+ # This class is meant to be called from simpmod.
4
+ # It ensures that tcpwrappers rules are defined.
5
+ #
6
+ class simpmod::config::tcpwrappers {
7
+ assert_private()
8
+
9
+ # FIXME: ensure your module's tcpwrappers settings are defined here.
10
+ $msg = "FIXME: define the ${module_name} module's tcpwrappers settings."
11
+
12
+ notify{ 'FIXME: tcpwrappers': message => $msg } # FIXME: remove this, add logic
13
+ err( $msg ) # FIXME: remove this, add logic
14
+
15
+ }
16
+
@@ -0,0 +1,110 @@
1
+ # Full description of SIMP module 'simpmod' here.
2
+ #
3
+ # === Welcome to SIMP!
4
+ # This module is a component of the System Integrity Management Platform, a
5
+ # managed security compliance framework built on Puppet.
6
+ #
7
+ # ---
8
+ # *FIXME:* verify that the following paragraph fits this module's characteristics!
9
+ # ---
10
+ #
11
+ # This module is optimally designed for use within a larger SIMP ecosystem, but
12
+ # it can be used independently:
13
+ #
14
+ # * When included within the SIMP ecosystem, security compliance settings will
15
+ # be managed from the Puppet server.
16
+ #
17
+ # * If used independently, all SIMP-managed security subsystems are disabled by
18
+ # default, and must be explicitly opted into by administrators. Please
19
+ # review the +trusted_nets+ and +$enable_*+ parameters for details.
20
+ #
21
+ # @param service_name
22
+ # The name of the simpmod service
23
+ #
24
+ # @param package_name
25
+ # The name of the simpmod package
26
+ #
27
+ # @param trusted_nets
28
+ # A whitelist of subnets (in CIDR notation) permitted access
29
+ #
30
+ # @param enable_auditing
31
+ # If true, manage auditing for simpmod
32
+ #
33
+ # @param enable_firewall
34
+ # If true, manage firewall rules to acommodate simpmod
35
+ #
36
+ # @param enable_logging
37
+ # If true, manage logging configuration for simpmod
38
+ #
39
+ # @param enable_pki
40
+ # If true, manage PKI/PKE configuration for simpmod
41
+ #
42
+ # @param enable_selinux
43
+ # If true, manage selinux to permit simpmod
44
+ #
45
+ # @param enable_tcpwrappers
46
+ # If true, manage TCP wrappers configuration for simpmod
47
+ #
48
+ # @author simp
49
+ #
50
+ class simpmod (
51
+ String $service_name = 'simpmod',
52
+ String $package_name = 'simpmod',
53
+ Simplib::Port $tcp_listen_port = 9999,
54
+ Simplib::Netlist $trusted_nets = simplib::lookup('simp_options::trusted_nets', {'default_value' => ['127.0.0.1/32'] }),
55
+ Boolean $enable_pki = simplib::lookup('simp_options::pki', { 'default_value' => false }),
56
+ Boolean $enable_auditing = simplib::lookup('simp_options::auditd', { 'default_value' => false }),
57
+ Boolean $enable_firewall = simplib::lookup('simp_options::firewall', { 'default_value' => false }),
58
+ Boolean $enable_logging = simplib::lookup('simp_options::syslog', { 'default_value' => false }),
59
+ Boolean $enable_selinux = simplib::lookup('simp_options::selinux', { 'default_value' => false }),
60
+ Boolean $enable_tcpwrappers = simplib::lookup('simp_options::tcpwrappers', { 'default_value' => false })
61
+
62
+ ) {
63
+
64
+ $oses = load_module_metadata( $module_name )['operatingsystem_support'].map |$i| { $i['operatingsystem'] }
65
+ unless $::operatingsystem in $oses { fail("${::operatingsystem} not supported") }
66
+
67
+ include '::simpmod::install'
68
+ include '::simpmod::config'
69
+ include '::simpmod::service'
70
+ Class[ '::simpmod::install' ]
71
+ -> Class[ '::simpmod::config' ]
72
+ ~> Class[ '::simpmod::service' ]
73
+ -> Class[ '::simpmod' ]
74
+
75
+ if $enable_pki {
76
+ include '::simpmod::config::pki'
77
+ Class[ '::simpmod::config::pki' ]
78
+ -> Class[ '::simpmod::service' ]
79
+ }
80
+
81
+ if $enable_auditing {
82
+ include '::simpmod::config::auditing'
83
+ Class[ '::simpmod::config::auditing' ]
84
+ -> Class[ '::simpmod::service' ]
85
+ }
86
+
87
+ if $enable_firewall {
88
+ include '::simpmod::config::firewall'
89
+ Class[ '::simpmod::config::firewall' ]
90
+ -> Class[ '::simpmod::service' ]
91
+ }
92
+
93
+ if $enable_logging {
94
+ include '::simpmod::config::logging'
95
+ Class[ '::simpmod::config::logging' ]
96
+ -> Class[ '::simpmod::service' ]
97
+ }
98
+
99
+ if $enable_selinux {
100
+ include '::simpmod::config::selinux'
101
+ Class[ '::simpmod::config::selinux' ]
102
+ -> Class[ '::simpmod::service' ]
103
+ }
104
+
105
+ if $enable_tcpwrappers {
106
+ include '::simpmod::config::tcpwrappers'
107
+ Class[ '::simpmod::config::tcpwrappers' ]
108
+ -> Class[ '::simpmod::service' ]
109
+ }
110
+ }