class cron_puppet ( $code_path = "/etc/puppetlabs/code" ) { file { 'post-hook': ensure => file, path => "$code_path/.git/hooks/post-merge", source => 'puppet:///modules/cron_puppet/post-merge', mode => '0755', owner => root, group => root, } package { 'cronie': ensure => 'present', } cron { 'puppet-apply': ensure => present, command => "cd $code_path ; /usr/bin/git pull", user => root, minute => '*/30', require => File['post-hook'], } service { 'cronie': ensure => 'running', enable => true } }