# Install vsroom. # class vsroom { require abusehelper file { "/usr/local/src/vsroom.tar.gz": ensure => present, mode => 0644, owner => root, group => root, source => "puppet:///files/packages/vsroom.tar.gz", links => follow, } util::extract::tar { "/usr/local/src/vsroom": strip => 1, source => "/usr/local/src/vsroom.tar.gz", require => File["/usr/local/src/vsroom.tar.gz"], before => Python::Setup::Install["/usr/local/src/vsroom"], } python::setup::install { "/usr/local/src/vsroom": python => $operatingsystem ? { centos => "python2.6", default => "python", }, require => $operatingsystem ? { centos => Package["python26"], default => undef, }, } file { "/usr/local/bin/vsroomctl": ensure => present, mode => 0755, owner => root, group => root, source => "/usr/local/src/vsroom/contrib/vsroomctl/vsroomctl", require => Util::Extract::Tar["/usr/local/src/vsroom"], } file { "/usr/local/bin/vsroompasswd": ensure => present, mode => 0755, owner => root, group => root, source => "/usr/local/src/vsroom/contrib/vsroompasswd/vsroompasswd", require => Util::Extract::Tar["/usr/local/src/vsroom"], } include user::system realize(User["vsroom"], Group["vsroom"]) if $vsroom_datadir { file { "${vsroom_datadir}": ensure => directory, mode => 0755, owner => root, group => root, } file { "/var/lib/vsroom": ensure => link, target => "${vsroom_datadir}", require => File["${vsroom_datadir}"], } } else { file { "/var/lib/vsroom": ensure => directory, mode => 0755, owner => root, group => root, } } file { "/var/lib/vsroom/.htpasswd": ensure => present, mode => 0640, owner => root, group => $apache::sslserver::group, require => File["/var/lib/vsroom"], } }