m 2 wiki-irc-bot: move to subdir, add patch

This commit is contained in:
makefu 2017-05-24 10:53:08 +02:00
parent 0f4ed34118
commit 847fc54141
2 changed files with 32 additions and 1 deletions

View file

@ -4,6 +4,10 @@ with lib;
let let
port = 18872; port = 18872;
in { in {
nixpkgs.config.packageOverrides = pkgs: with pkgs; {
logstash = pkgs.stdenv.lib.overrideDerivation pkgs.logstash (old: {
patches = [ ./irc-out-notice.patch ]; });
};
services.logstash = { services.logstash = {
enable = true; enable = true;
inputConfig = '' inputConfig = ''
@ -40,10 +44,11 @@ in {
file { path => "/tmp/logs.json" codec => "json_lines" } file { path => "/tmp/logs.json" codec => "json_lines" }
if [output] { if [output] {
irc { irc {
channels => [ "#nixos" , "#krebs" ] channels => [ "#krebs", "#nixos" ]
host => "irc.freenode.net" host => "irc.freenode.net"
nick => "nixos-users-wiki" nick => "nixos-users-wiki"
format => "%{output}" format => "%{output}"
notice => true
} }
} }
''; '';

View file

@ -0,0 +1,26 @@
index b63339d..8c8c747 100644
--- a/vendor/bundle/jruby/1.9/gems/logstash-output-irc-2.0.4/lib/logstash/outputs/irc.rb
+++ b/vendor/bundle/jruby/1.9/gems/logstash-output-irc-2.0.4/lib/logstash/outputs/irc.rb
@@ -48,6 +48,9 @@ class LogStash::Outputs::Irc < LogStash::Outputs::Base
# Static string after event
config :post_string, :validate => :string, :required => false
+ # Set this to true to send messages as notice
+ config :notice, :validate => :boolean, :default => false
+
public
def inject_bot(bot)
@@ -90,9 +93,9 @@ class LogStash::Outputs::Irc < LogStash::Outputs::Base
@bot.channels.each do |channel|
@logger.debug("Sending to...", :channel => channel, :text => text)
- channel.msg(pre_string) if !@pre_string.nil?
- channel.msg(text)
- channel.msg(post_string) if !@post_string.nil?
+ channel.send(pre_string, :notice => @notice) if !@pre_string.nil?
+ channel.send(text, :notice => @notice)
+ channel.send(post_string, :notice => @notice) if !@post_string.nil?
end # channels.each
end # def receive
end # class LogStash::Outputs::Irc