40 lines
917 B
Puppet
40 lines
917 B
Puppet
# a class to define some global facts
|
|
class profiles::base::facts {
|
|
|
|
# The path where external facts are stored
|
|
$facts_d_path = '/opt/puppetlabs/facter/facts.d'
|
|
|
|
# Ensure the directory exists
|
|
file { $facts_d_path:
|
|
ensure => directory,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
}
|
|
|
|
# cleanup old facts files
|
|
$fact_list = [ 'enc_role', 'enc_env' ]
|
|
$fact_list.each | String $item | {
|
|
file { "${facts_d_path}/${item}.txt":
|
|
ensure => absent,
|
|
}
|
|
}
|
|
|
|
# ensure the path to the custom store exists
|
|
file { '/root/.cache':
|
|
ensure => directory,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0750',
|
|
}
|
|
|
|
# create the file that will be read
|
|
file { '/root/.cache/custom_facts.yaml':
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0644',
|
|
content => template('profiles/base/facts/custom_facts.yaml.erb'),
|
|
}
|
|
}
|