diff --git a/puppet/manifests/init.pp b/puppet/manifests/init.pp index b361557..839ab44 100644 --- a/puppet/manifests/init.pp +++ b/puppet/manifests/init.pp @@ -711,29 +711,31 @@ class puppet::opencollab { fail("\$puppet_opencollab_pass must be set.") } - include wiki::opencollab + require wiki::opencollab package { "PyYAML": + ensure => installed, name => $::operatingsystem ? { debian => "python-yaml", ubuntu => "python-yaml", default => "PyYAML", }, - ensure => installed, - before => Class["wiki::opencollab"], + before => Cron["puppet-opencollab"], } file { "/etc/puppet/opencollab.conf": ensure => present, - mode => "0600", + mode => "0640", owner => "root", - group => "root", + group => "puppet", content => "[creds]\nurl = ${puppet_opencollab_url}\nusername = ${puppet_opencollab_user}\npassword = ${puppet_opencollab_pass}\n", + require => Package["puppetmaster"], + before => Cron["puppet-opencollab"], } case $::operatingsystem { - ubuntu: { $script = "/usr/local/bin/opencollab-puppet-uploader" } - default: { $script = "/usr/bin/opencollab-puppet-uploader" } + "ubuntu": { $script = "/usr/local/bin/opencollab-puppet-uploader" } + default: { $script = "/usr/bin/opencollab-puppet-uploader" } } if $puppet_opencollab_options { @@ -743,12 +745,19 @@ class puppet::opencollab { } cron { "opencollab-puppet-uploader": - ensure => present, + ensure => absent, command => "${script} ${script_options} /var/lib/puppet/yaml/facts/*.yaml", user => root, hour => 0, minute => 5, - require => [ Class["wiki::opencollab"], File["/etc/puppet/opencollab.conf"] ], + } + + cron { "puppet-opencollab": + ensure => present, + command => "${script} ${script_options} /var/lib/puppet/yaml/facts/*.yaml", + user => "puppet", + hour => "0", + minute => "5", } }