Puppet Class: bamboo::facts
- Defined in:
- manifests/facts.pp
Overview
Private class to manage Bamboo external facts
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'manifests/facts.pp', line 3
class bamboo::facts {
case $bamboo::facts_ensure {
'absent': { $file_ensure = 'absent' }
default: { $file_ensure = 'file' }
}
if $bamboo::create_facter_dir {
# Ensure facter's external fact directory exists
# https://docs.puppet.com/facter/3.5/custom_facts.html#external-facts
# Not using a file resource to avoid stepping on toes and defined() is
# parse-order dependent.
exec { "bamboo_${bamboo::facter_dir}":
command => "/bin/mkdir -p '${bamboo::facter_dir}'",
creates => $bamboo::facter_dir,
before => File["${bamboo::facter_dir}/bamboo_facts.txt"],
}
}
file { "${bamboo::facter_dir}/bamboo_facts.txt":
ensure => $file_ensure,
content => "bamboo_version=${bamboo::version}",
mode => '0444',
}
# When using the newer external facts directory, ensure the bamboo facts
# under /etc/puppetlabs/facter/facts.d/ are absent.
if ($bamboo::facter_dir == '/opt/puppetlabs/facter/facts.d') {
file { '/etc/puppetlabs/facter/facts.d/bamboo_facts.txt':
ensure => 'absent',
}
}
}
|