Loading manifests/module/files.pp 0 → 100644 +62 −0 Changes for manifests/module/files.pp: 62 added lines, 0 removed lines. Original line number Diff line number Diff line # == Define freeradius::module::files # # Create e file module configuration for FreeRADIUS # define freeradius::module::files ( $ensure = 'present', String $moddir = "\${modconfdir}/\${.:instance}", Optional[String] $key = undef, String $filename = "\${moddir}/authorize", Optional[String] $usersfile = undef, String $acctusersfile = "\${moddir}/accounting", String $preproxy_usersfile = "\${moddir}/pre-proxy", Array[Hash] $users = [], Optional[String] $source = undef, Optional[String] $content = undef, ) { $fr_moduleconfigpath = $::freeradius::params::fr_moduleconfigpath $fr_group = $::freeradius::params::fr_group $fr_service = $::freeradius::params::fr_service $manage_content = $content ? { undef => template('freeradius/users.erb'), default => $content, } $manage_dir = $ensure ? { 'present' => 'directory', default => 'absent', } if $filename =~ /^\$\{moddir\}\/(.+)$/ { $userspath = "${fr_moduleconfigpath}/${name}/${1}" $usersdir = "${fr_moduleconfigpath}/${name}" } else { $userspath = $filename $usersdir = dirname($filename) } freeradius::module {$name: ensure => $ensure, content => template('freeradius/files.erb'), } file {$usersdir: ensure => $manage_dir, owner => 'root', group => $fr_group, mode => '0750', require => Freeradius::Module[$name], } file {$userspath: ensure => $ensure, owner => 'root', group => $fr_group, mode => '0640', source => $source, content => $manage_content, require => File[$usersdir], notify => Service[$fr_service], } } templates/files.erb 0 → 100644 +39 −0 Changes for templates/files.erb: 39 added lines, 0 removed lines. Original line number Diff line number Diff line # This file is managed by Puppet. DO NOT EDIT. # # Livingston-style 'users' file # # See "man users" for more information. # <%- if @name == 'default' -%> files { <%- else -%> files <%= @name %> { <%- end -%> # Search for files in a subdirectory of mods-config which # matches this instance of the files module. moddir = <%= @moddir %> # The default key attribute to use for matches. The content # of this attribute is used to match the "name" of the # entry. #key = "%{%{Stripped-User-Name}:-%{User-Name}}" <%- if @key -%> key = "<%= @key %>" <%- end -%> # The old "users" style file is now located here. filename = <%= @filename %> # This is accepted for backwards compatibility # It will be removed in a future release. # usersfile = ${moddir}/authorize <%- if @usersfile -%> usersfile = <%= @usersfile %> <%- end -%> # These are accepted for backwards compatibility. # They will be renamed in a future release. acctusersfile = ${moddir}/accounting preproxy_usersfile = ${moddir}/pre-proxy } templates/users.erb 0 → 100644 +13 −0 Changes for templates/users.erb: 13 added lines, 0 removed lines. Original line number Diff line number Diff line # This file is automatically managed by puppet # <%- @users.each do |user| -%> <%- if user.is_a?(Hash) -%> <%- checks = user['check_items'] ? user['check_items'] : [] -%> <%- replies = user['reply_items'] ? user['reply_items'] : [] -%> <%= user['login'] %> <%= checks.join(", ") %> <%= "\t" + replies.join(",\n\t") %> <%- else -%> <%= user %> <%- end -%> <%- end -%> Loading
manifests/module/files.pp 0 → 100644 +62 −0 Changes for manifests/module/files.pp: 62 added lines, 0 removed lines. Original line number Diff line number Diff line # == Define freeradius::module::files # # Create e file module configuration for FreeRADIUS # define freeradius::module::files ( $ensure = 'present', String $moddir = "\${modconfdir}/\${.:instance}", Optional[String] $key = undef, String $filename = "\${moddir}/authorize", Optional[String] $usersfile = undef, String $acctusersfile = "\${moddir}/accounting", String $preproxy_usersfile = "\${moddir}/pre-proxy", Array[Hash] $users = [], Optional[String] $source = undef, Optional[String] $content = undef, ) { $fr_moduleconfigpath = $::freeradius::params::fr_moduleconfigpath $fr_group = $::freeradius::params::fr_group $fr_service = $::freeradius::params::fr_service $manage_content = $content ? { undef => template('freeradius/users.erb'), default => $content, } $manage_dir = $ensure ? { 'present' => 'directory', default => 'absent', } if $filename =~ /^\$\{moddir\}\/(.+)$/ { $userspath = "${fr_moduleconfigpath}/${name}/${1}" $usersdir = "${fr_moduleconfigpath}/${name}" } else { $userspath = $filename $usersdir = dirname($filename) } freeradius::module {$name: ensure => $ensure, content => template('freeradius/files.erb'), } file {$usersdir: ensure => $manage_dir, owner => 'root', group => $fr_group, mode => '0750', require => Freeradius::Module[$name], } file {$userspath: ensure => $ensure, owner => 'root', group => $fr_group, mode => '0640', source => $source, content => $manage_content, require => File[$usersdir], notify => Service[$fr_service], } }
templates/files.erb 0 → 100644 +39 −0 Changes for templates/files.erb: 39 added lines, 0 removed lines. Original line number Diff line number Diff line # This file is managed by Puppet. DO NOT EDIT. # # Livingston-style 'users' file # # See "man users" for more information. # <%- if @name == 'default' -%> files { <%- else -%> files <%= @name %> { <%- end -%> # Search for files in a subdirectory of mods-config which # matches this instance of the files module. moddir = <%= @moddir %> # The default key attribute to use for matches. The content # of this attribute is used to match the "name" of the # entry. #key = "%{%{Stripped-User-Name}:-%{User-Name}}" <%- if @key -%> key = "<%= @key %>" <%- end -%> # The old "users" style file is now located here. filename = <%= @filename %> # This is accepted for backwards compatibility # It will be removed in a future release. # usersfile = ${moddir}/authorize <%- if @usersfile -%> usersfile = <%= @usersfile %> <%- end -%> # These are accepted for backwards compatibility. # They will be renamed in a future release. acctusersfile = ${moddir}/accounting preproxy_usersfile = ${moddir}/pre-proxy }
templates/users.erb 0 → 100644 +13 −0 Changes for templates/users.erb: 13 added lines, 0 removed lines. Original line number Diff line number Diff line # This file is automatically managed by puppet # <%- @users.each do |user| -%> <%- if user.is_a?(Hash) -%> <%- checks = user['check_items'] ? user['check_items'] : [] -%> <%- replies = user['reply_items'] ? user['reply_items'] : [] -%> <%= user['login'] %> <%= checks.join(", ") %> <%= "\t" + replies.join(",\n\t") %> <%- else -%> <%= user %> <%- end -%> <%- end -%>