# # Definitions used throughout # $server = "puppet.example.com" define configfile(owner = root, group = root, mode, source, backup = false, recurse = false, ensure = file) { file { $name: mode => $mode, owner => $owner, group => $group, backup => $backup, recurse => $recurse, ensure => $ensure, source => "puppet://$server/config/$source" } } define yumrepo (enabled = true) { configfile { "/etc/yum.repos.d/$name.repo": mode => 644, source => "/yum/repos/$name.repo", ensure => $enabled ? { true => file, default => absent } } }