73 lines
1.7 KiB
Puppet
73 lines
1.7 KiB
Puppet
# Class: rhizo_base::ircd
|
|
#
|
|
# This module manages Irc Chat Support
|
|
#
|
|
# Parameters: none
|
|
#
|
|
# Actions:
|
|
#
|
|
# Requires:
|
|
#
|
|
# Sample Usage:
|
|
#
|
|
class rhizo_base::kiwi {
|
|
|
|
$site_name = $rhizo_base::site_name
|
|
|
|
package {
|
|
['make']:
|
|
ensure => installed,
|
|
require => Class['rhizo_base::apt'],
|
|
}
|
|
|
|
if ($lsbdistcodename == 'buster') {
|
|
|
|
package {
|
|
[ 'npm']:
|
|
ensure => installed,
|
|
require => Class['rhizo_base::apt'],
|
|
}
|
|
}
|
|
|
|
package {
|
|
['nodejs']:
|
|
ensure => $lsbdistcodename ? {
|
|
"stretch" => '0.10.48-1nodesource1~jessie1',
|
|
"buster" => '10.24.0~dfsg-1~deb10u3',
|
|
"bullseye"=> "12.22.5~dfsg-2~11u1"
|
|
},
|
|
require => Class['rhizo_base::apt'],
|
|
}
|
|
|
|
file { '/usr/share/kiwiirc':
|
|
ensure => directory,
|
|
}
|
|
|
|
file { '/usr/share/kiwiirc/config.js':
|
|
content => template('rhizo_base/config.js.erb'),
|
|
require => VcsRepo['/usr/share/kiwiirc']
|
|
}
|
|
|
|
exec { 'npm-install':
|
|
cwd => '/usr/share/kiwiirc',
|
|
command => '/usr/bin/npm install',
|
|
creates => '/usr/share/kiwiirc/node_modules',
|
|
require => VcsRepo['/usr/share/kiwiirc']
|
|
}
|
|
|
|
exec { 'build-script':
|
|
cwd => '/usr/share/kiwiirc',
|
|
command => '/usr/share/kiwiirc/kiwi build',
|
|
creates => '/usr/share/kiwiirc/client/assets/kiwi.js',
|
|
require => [ Exec['npm-install'], File['/usr/share/kiwiirc/config.js'] ]
|
|
}
|
|
|
|
vcsrepo { '/usr/share/kiwiirc':
|
|
ensure => present,
|
|
provider => git,
|
|
source => 'https://github.com/prawnsalad/KiwiIRC.git',
|
|
#revision => '0.9.3',
|
|
require => [ File['/usr/share/kiwiirc'], Package['git'] ],
|
|
notify => [ Exec['build-script'], ]
|
|
}
|
|
}
|