## confdroid_selinux::params.pp # Module name: confdroid_selinux # Author: 12ww1160 (12ww1160@ConfDroid.com) # @summary Class holds all parameters for the confdroid_selinux module and is # inherited by all classes except defines. # @param [String] sx_pkg_ensure # which [package type](https://confdroid.com/2017/05/puppet-type-package/) # to choose, i.e. `latest` or `present`. # @param [Array[String]] sx_reqpackages # List of packages required for selinux management. The default list includes # the following packages: `selinux-policy`, `policycoreutils`, # `setroubleshoot-server`, `policycoreutils-python`. # @param [String] sx_selinux_status The desired selinux status. Used for both # managing the configuration file as well as the command line (setenforce). # Valid values are `enforcing` and `permissive`. While the configuration file # supports another option 'disabled', this option is not available on # commandline. Note that changing the active selinux status from `disabled` # to any the other types requires a manual reboot to re-label the file system. # This module does not do that for you to avoid unexpected outages. # @param [String] sx_selinux_type The desired selinux type. Valid options are # `targeted`, `minimum` and `mls`. ############################################################################## class confdroid_selinux::params ( Array[String] $sx_reqpackages = ['selinux-policy','policycoreutils','setroubleshoot-server','policycoreutils-python'], String $sx_pkg_ensure = 'latest', String $sx_selinux_status = 'enforcing', String $sx_selinux_type = 'targeted', ) { # default facts $fqdn = $facts['networking']['fqdn'] $hostname = $facts['networking']['hostname'] $domain = $facts['networking']['domain'] $os_name = $facts['os']['name'] $os_release = $facts['os']['release']['major'] # directories $sx_main_dir = '/etc/selinux' # files $sx_main_file = "${sx_main_dir}/config" $sx_main_file_erb = 'confdroid_selinux/main/selinux_config.erb' # includes must be last include confdroid_selinux::main::config }