Manual merge of abusehelper and abusesa from parameterize branch
This commit is contained in:
parent
f517230310
commit
09ae1aa84b
10 changed files with 501 additions and 354 deletions
117
abusesa/manifests/live.pp
Normal file
117
abusesa/manifests/live.pp
Normal file
|
@ -0,0 +1,117 @@
|
|||
# Install AbuseSA Live.
|
||||
#
|
||||
# === Parameters
|
||||
#
|
||||
# $authurl:
|
||||
# Authentication path. Defaults to '/collab/?action=authcredentials'.
|
||||
#
|
||||
# $boshurl:
|
||||
# XMPP BOSH path. Defaults to '/bosh/'.
|
||||
#
|
||||
# $config:
|
||||
# Source URL of custom config file.
|
||||
#
|
||||
# $webhosts:
|
||||
# List of live virtual hosts.
|
||||
#
|
||||
class abusesa::live(
|
||||
$authurl='/collab/?action=authcredentials',
|
||||
$boshurl='/bosh/',
|
||||
$config=undef,
|
||||
$webhosts=undef,
|
||||
) {
|
||||
|
||||
if ! $abusesa_live_package {
|
||||
if $::abusesa_live_package_latest {
|
||||
$abusesa_live_package = $::abusesa_live_package_latest
|
||||
} else {
|
||||
fail('Must define $abusesa_live_package or $abusesa_live_package_latest')
|
||||
}
|
||||
}
|
||||
|
||||
file { '/usr/local/src/abusesa-live.tar.gz':
|
||||
ensure => present,
|
||||
mode => '0644',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
source => "puppet:///files/packages/${abusesa_live_package}",
|
||||
}
|
||||
util::extract::tar { '/usr/local/src/abusesa-live':
|
||||
ensure => latest,
|
||||
strip => '1',
|
||||
source => '/usr/local/src/abusesa-live.tar.gz',
|
||||
require => File['/usr/local/src/abusesa-live.tar.gz'],
|
||||
}
|
||||
python::setup::install { '/usr/local/src/abusesa-live':
|
||||
require => Util::Extract::Tar['/usr/local/src/abusesa-live'],
|
||||
}
|
||||
|
||||
$htdocs = $::operatingsystem ? {
|
||||
'ubuntu' => '/usr/local/share/abusesa-live/htdocs',
|
||||
default => '/usr/share/abusesa-live/htdocs',
|
||||
}
|
||||
|
||||
if $config {
|
||||
$config_content = undef
|
||||
} else {
|
||||
$config_content = template('abusesa/live/config.json.erb')
|
||||
}
|
||||
|
||||
file { "${htdocs}/config.json":
|
||||
ensure => present,
|
||||
mode => '0644',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
source => $config,
|
||||
content => $config_content,
|
||||
require => Python::Setup::Install['/usr/local/src/abusesa-live'],
|
||||
}
|
||||
|
||||
if $webhosts {
|
||||
apache::configfile { 'vsroom.conf':
|
||||
http => false,
|
||||
source => 'puppet:///modules/abusesa/vsroom-httpd.conf',
|
||||
}
|
||||
|
||||
abusesa::live::configwebhost { $webhosts:
|
||||
htdocs => $htdocs,
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
# Enable AbuseSA Live for virtual host.
|
||||
#
|
||||
define abusesa::live::configwebhost($htdocs) {
|
||||
|
||||
if ! defined(File["/srv/www/https/${name}/abusesa"]) {
|
||||
file { "/srv/www/https/${name}/abusesa":
|
||||
ensure => directory,
|
||||
mode => '0755',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
}
|
||||
}
|
||||
|
||||
file { "/srv/www/https/${name}/abusesa/live":
|
||||
ensure => link,
|
||||
target => $htdocs,
|
||||
}
|
||||
|
||||
file { "/srv/www/https/${name}/vsroom":
|
||||
ensure => directory,
|
||||
force => true,
|
||||
mode => '0755',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
}
|
||||
file { "/srv/www/https/${name}/vsroom/.htaccess":
|
||||
ensure => present,
|
||||
mode => '0644',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
content => "Redirect permanent /vsroom/ /abusesa/live/\n",
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue