This module allows you to send managed Puppet reports into Skype, Slack and Telegram about status changes on your infrastructure on every Puppet run. Reports would be sent for you if the status equals changed or failed. Integration with PuppetBoard included!
It is vital to install this module into core modules folder of your Puppetserver (i.e /etc/puppetlabs/code/modules)!
You just need to add new webhook for your team here. No additional modifications required. Webhook would be in format https://hooks.slack.com/services/ABC/123/QWE
Simply add the class of the service you want to use into your manifest within Puppetserver node:
node 'puppetserver' {
$puppetboard_link = 'http://172.16.100.101/puppetboard/'
class { 'notifier::skyper':
chat_id => 'somechatid@thread.skype',
client_id => 'someclientid',
puppetboard => $puppetboard_link,
client_secret => 'someclientsecret'
}
class { 'notifier::slacker':
hook_url => 'https://hooks.slack.com/services/ABC/123/QWE',
username => 'Puppet Notifier',
channel => '#puppet-test',
puppetboard => $puppetboard_link,
icon_url => 'https://www.404techsupport.com/wp-content/uploads/2014/06/puppet-labs-featured.png'
}
class { 'notifier::telegramer':
token => 'your_bot_token',
chat_id => 'chat_id_from_api',
send_stickers => 'true',
puppetboard => $puppetboard_link
}
}
chat_id - your conversation ID from '/get name' command client_id - Application ID from BotFramework client_secret - Application Secret puppetboard - Link to your Puppetboard
hook_url - your Incoming Webhook URL channel - where to send reports username - bot name which send reports icon_url - small image which stands for bot avatar
token - access key from BotFather chat_id - conversation ID from API send_stickers - should your bot send telegram stickers with report based on his status or not. Remove this attribute to disable.
This module was tested on Puppet 5.2.0 with latest Puppetserver 5.1.4.
Feel free to create issues, PR and so on :)