diff --git a/manifests/icinga2/objects.pp b/manifests/icinga2/objects.pp index ab4ef45..f58e889 100644 --- a/manifests/icinga2/objects.pp +++ b/manifests/icinga2/objects.pp @@ -1,7 +1,10 @@ # Icinga2 object definitions class profile::icinga2::objects { include profile::icinga2::objects::templates include profile::icinga2::objects::commands + include profile::icinga2::objects::users + include profile::icinga2::objects::notifications + include profile::icinga2::objects::common_checks include profile::icinga2::objects::static_checks } diff --git a/manifests/icinga2/objects/notifications.pp b/manifests/icinga2/objects/notifications.pp new file mode 100644 index 0000000..b1ae58d --- /dev/null +++ b/manifests/icinga2/objects/notifications.pp @@ -0,0 +1,15 @@ +# Icinga2 notifications +class profile::icinga2::objects::notifications { + $notification_file = '/etc/icinga2/conf.d/notifications.conf' + + $type = 'service' + $means = 'irc' + + ::icinga2::object::notification {"${means}-notify-all-${type}s": + import => ["${means}-${type}-notification"], + apply => true, + apply_target => $type, + users => ['root'], + target => $notification_file, + } +} diff --git a/manifests/icinga2/objects/users.pp b/manifests/icinga2/objects/users.pp new file mode 100644 index 0000000..6bbace9 --- /dev/null +++ b/manifests/icinga2/objects/users.pp @@ -0,0 +1,10 @@ +# Icinga2 users +class profile::icinga2::objects::users { + $user_file = '/etc/icinga2/conf.d/users.conf' + + ::icinga2::object::user {'root': + import => ['generic-user'], + email => 'root', + target => $user_file, + } +}