Puppet Class: ircecho
- Defined in:
- modules/ircecho/manifests/init.pp
Overview
SPDX-License-Identifier: Apache-2.0 IRC echo class To use this class, you must define some parameters; here's an example (leading hashes on channel names are added for you if missing): $ircecho_logs =
"/var/log/nagios/irc.log" =>
["wikimedia-operations","#wikimedia-tech"],
"/var/log/nagios/irc2.log" => "#irc2",
$ircecho_nick = “icinga-wm” $ircecho_server = “irc.libera.chat 6667”
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'modules/ircecho/manifests/init.pp', line 12
class ircecho (
$ircecho_logs,
$ircecho_nick,
$ircecho_server = 'irc.libera.chat +6697',
$ident_passwd_file = undef,
$ensure = 'present',
) {
if debian::codename::eq('buster') {
ensure_packages(['python-pyinotify', 'python-irc'])
file { '/usr/local/bin/ircecho':
ensure => 'present',
source => 'puppet:///modules/ircecho/ircecho.py',
owner => 'root',
group => 'root',
mode => '0755',
notify => Service['ircecho'],
}
file { '/usr/local/lib/python2.7/dist-packages/ib3_auth.py':
ensure => 'present',
source => 'puppet:///modules/ircecho/ib3_auth.py',
owner => 'root',
group => 'root',
mode => '0755',
notify => Service['ircecho'],
}
} else {
ensure_packages(['python3-pyinotify', 'python3-irc'])
file { '/usr/local/bin/ircecho':
ensure => 'present',
source => 'puppet:///modules/ircecho/ircecho3.py',
owner => 'root',
group => 'root',
mode => '0755',
notify => Service['ircecho'],
}
file { '/usr/local/lib/python3.11/dist-packages/ib3_auth.py':
ensure => 'present',
source => 'puppet:///modules/ircecho/ib3_auth.py',
owner => 'root',
group => 'root',
mode => '0755',
notify => Service['ircecho'],
}
}
file { '/etc/default/ircecho':
ensure => 'present',
content => template('ircecho/default.erb'),
owner => 'root',
mode => '0755',
notify => Service['ircecho'],
}
systemd::service { 'ircecho':
ensure => $ensure,
content => systemd_template('ircecho'),
service_params => {
hasrestart => true,
},
require => File['/usr/local/bin/ircecho'],
}
profile::auto_restarts::service { 'ircecho':
ensure => $ensure,
}
}
|