diff --git a/.vagrant-puppet/modules/icinga2/manifests/config.pp b/.vagrant-puppet/modules/icinga2/manifests/config.pp index 604d5772e..db804bc64 100644 --- a/.vagrant-puppet/modules/icinga2/manifests/config.pp +++ b/.vagrant-puppet/modules/icinga2/manifests/config.pp @@ -24,12 +24,8 @@ define icinga2::config ($source) { include icinga2 $path = "/etc/icinga2/${name}.conf" - $cmd = "mkdir-p-for-${path}" - exec { $cmd: - command => "mkdir -p \"\$(dirname \"\$(readlink -m '${path}')\")\"", - path => '/bin:/usr/bin', - } + parent_dirs { $path: } file { $path: source => "${source}/${name}.conf", @@ -37,7 +33,7 @@ define icinga2::config ($source) { group => 'icinga', notify => Service['icinga2'], require => [ - Exec[$cmd], + Parent_dirs[$path], User['icinga'] ], } diff --git a/.vagrant-puppet/modules/parent_dirs/manifests/init.pp b/.vagrant-puppet/modules/parent_dirs/manifests/init.pp new file mode 100644 index 000000000..e7a044dee --- /dev/null +++ b/.vagrant-puppet/modules/parent_dirs/manifests/init.pp @@ -0,0 +1,6 @@ +define parent_dirs { + exec { "parent_dirs-${name}": + command => "mkdir -p \"\$(dirname \"\$(readlink -m '${name}')\")\"", + path => '/bin:/usr/bin', + } +}