class dashboard { $dashboard_login = 'dashboard' $dashboard_home_dir = "/var/lib/${dashboard_login}" $dashboard_dir = "${dashboard_home_dir}/dashboard" $dashboard_bindir = "${dashboard_home_dir}/bin" $dashboard_wwwdir = "/var/www/vhosts/dashboard.${::domain}" user { $dashboard_login: comment => 'dashboard system user', home => $dashboard_home_dir, } git::snapshot { $dashboard_dir: source => "git://git.${::domain}/web/generators/dashboard", } package { 'php-cli': } file { $dashboard_wwwdir: ensure => directory, owner => $dashboard_login, group => $dashboard_login, } file { $dashboard_bindir: ensure => directory, } file { "${dashboard_bindir}/make_report": mode => '0755', content => template('dashboard/make_report'), } apache::vhost::base { "dashboard.${::domain}": location => $dashboard_wwwdir, } cron { 'update dashboard': command => "${dashboard_bindir}/make_report", user => $dashboard_login, hour => '*/2', minute => '15', } }