Merge atheme and charybdis modules from parameterize
This commit is contained in:
parent
e8c6de331c
commit
f04fc7f5d1
4 changed files with 2446 additions and 0 deletions
121
atheme/manifests/init.pp
Normal file
121
atheme/manifests/init.pp
Normal file
|
@ -0,0 +1,121 @@
|
|||
# Use default values from charybdis if defined.
|
||||
#
|
||||
class atheme::params {
|
||||
|
||||
if $::charybdis::services_name {
|
||||
$services_name = $::charybdis::services_name
|
||||
} else {
|
||||
$services_name = 'ircservices.localdomain'
|
||||
}
|
||||
|
||||
if $::charybdis::network_name {
|
||||
$network_name = $::charybdis::network_name
|
||||
} else {
|
||||
$network_name = 'IRC Network'
|
||||
}
|
||||
|
||||
if $::charybdis::admin_name {
|
||||
$admin_name = $::charybdis::admin_name
|
||||
} else {
|
||||
$admin_name = 'Administrator'
|
||||
}
|
||||
|
||||
if $::charybdis::admin_email {
|
||||
$admin_email = $::charybdis::admin_email
|
||||
} else {
|
||||
$admin_email = 'root@localhost'
|
||||
}
|
||||
|
||||
if $::charybdis::server_name {
|
||||
$uplink_name = $::charybdis::server_name
|
||||
} else {
|
||||
$uplink_name = undef
|
||||
}
|
||||
|
||||
if $::charybdis::port {
|
||||
$uplink_port = $::charybdis::port
|
||||
} else {
|
||||
$uplink_port = '6667'
|
||||
}
|
||||
|
||||
if $::charybdis::services_password {
|
||||
$uplink_password = $::charybdis::services_password
|
||||
} else {
|
||||
$uplink_password = undef
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# Install Atheme IRC services.
|
||||
#
|
||||
class atheme(
|
||||
$sid='00B',
|
||||
$services_name=$atheme::params::services_name,
|
||||
$services_description='Atheme IRC Services',
|
||||
$network_name=$atheme::params::network_name,
|
||||
$admin_name=$atheme::params::admin_name,
|
||||
$admin_email=$atheme::params::admin_email,
|
||||
$hidehostsuffix='hiddendomain',
|
||||
$uplink_name=$atheme::params::uplink_name,
|
||||
$uplink_port=$atheme::params::uplink_port,
|
||||
$uplink_password=$atheme::params::uplink_password,
|
||||
$operators=[],
|
||||
) inherits atheme::params {
|
||||
|
||||
case $::operatingsystem {
|
||||
'ubuntu': { }
|
||||
default: {
|
||||
fail("atheme not supported on ${::operatingsystem}")
|
||||
}
|
||||
}
|
||||
|
||||
if ! $uplink_name {
|
||||
fail('Must define $uplink_name')
|
||||
}
|
||||
|
||||
if ! $uplink_password {
|
||||
fail('Must define $uplink_password')
|
||||
}
|
||||
|
||||
package { 'atheme-services':
|
||||
ensure => installed,
|
||||
}
|
||||
|
||||
file { '/etc/atheme/atheme.conf':
|
||||
ensure => present,
|
||||
mode => '0644',
|
||||
owner => 'root',
|
||||
group => 'root',
|
||||
content => template('atheme/atheme.conf.erb'),
|
||||
require => Package['atheme-services'],
|
||||
notify => Service['atheme-services'],
|
||||
}
|
||||
|
||||
augeas { 'atheme-enable':
|
||||
context => '/files/etc/default/atheme-services',
|
||||
changes => 'set ENABLED 1',
|
||||
notify => Service['atheme-services'],
|
||||
}
|
||||
|
||||
service { 'atheme-services':
|
||||
ensure => running,
|
||||
enable => true,
|
||||
hasstatus => false,
|
||||
}
|
||||
|
||||
file { '/var/log/atheme':
|
||||
ensure => directory,
|
||||
mode => '0640',
|
||||
owner => 'irc',
|
||||
group => 'irc',
|
||||
recurse => true,
|
||||
require => Service['atheme-services'],
|
||||
}
|
||||
|
||||
if defined(Service['charybdis']) {
|
||||
Service['atheme-services'] {
|
||||
require => Service['charybdis'],
|
||||
}
|
||||
}
|
||||
|
||||
}
|
1756
atheme/templates/atheme.conf.erb
Normal file
1756
atheme/templates/atheme.conf.erb
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue