summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/deployment
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2017-06-04 06:20:54 +0200
committertv <tv@krebsco.de>2017-06-04 06:20:54 +0200
commit811ceaa243bf5241ca1189871c4426240962f04d (patch)
treef46006567b5f9279ebd9cb23de3eadb508f83c54 /makefu/2configs/deployment
parent4f58b884dda57db8106768a22a206d6605d6e3e5 (diff)
parente50bc4f3eb3dac13bba4ae6158e839a52455c3c3 (diff)
Merge remote-tracking branch 'prism/master'
Diffstat (limited to 'makefu/2configs/deployment')
-rw-r--r--makefu/2configs/deployment/hound/default.nix28
-rw-r--r--makefu/2configs/deployment/led-fader.nix3
-rw-r--r--makefu/2configs/deployment/wiki-irc-bot/default.nix (renamed from makefu/2configs/deployment/wiki-irc.nix)7
-rw-r--r--makefu/2configs/deployment/wiki-irc-bot/irc-out-notice.patch26
4 files changed, 62 insertions, 2 deletions
diff --git a/makefu/2configs/deployment/hound/default.nix b/makefu/2configs/deployment/hound/default.nix
new file mode 100644
index 000000000..0cfb5cdeb
--- /dev/null
+++ b/makefu/2configs/deployment/hound/default.nix
@@ -0,0 +1,28 @@
+{ config, pkgs, ... }:
+{
+ services.nginx.virtualHosts."wikisearch.krebsco.de" = {
+ forceSSL = true;
+ enableACME = true;
+ locations."/".proxyPass = "http://localhost:6080";
+ };
+ services.hound = {
+ enable = true;
+ listen = "127.0.0.1:6080";
+ # package = pkgs.hound.overrideDerivation(oldAttrs: {
+ # patches = [ ./keep-repo.patch ];
+ # });
+ config = ''{
+ "max-concurrent-indexers" : 2,
+ "dbpath" : "${config.services.hound.home}/data",
+ "repos" : {
+ "nixos-users-wiki": {
+ "url" : "https://github.com/nixos-users/wiki.wiki.git",
+ "url-pattern" : {
+ "base-url" : "{url}/{path}"
+ }
+ }
+ }
+ }'';
+ };
+
+}
diff --git a/makefu/2configs/deployment/led-fader.nix b/makefu/2configs/deployment/led-fader.nix
index a18416497..e4d62ae77 100644
--- a/makefu/2configs/deployment/led-fader.nix
+++ b/makefu/2configs/deployment/led-fader.nix
@@ -29,7 +29,8 @@ in {
environment = {
NIX_PATH = "/var/src";
};
- wantedBy = [ "multi-user.target" ];
+ after = [ (lib.optional config.services.mosqitto.enable "mosquitto.service") ];
+ wantedBy = [ "multi-user.target" ];
serviceConfig = {
# User = "nobody"; # need a user with permissions to run nix-shell
ExecStart = "${pkg}/bin/ampel 4 ${pkg}/share/times.json";
diff --git a/makefu/2configs/deployment/wiki-irc.nix b/makefu/2configs/deployment/wiki-irc-bot/default.nix
index dc7c8afe8..7ab31e698 100644
--- a/makefu/2configs/deployment/wiki-irc.nix
+++ b/makefu/2configs/deployment/wiki-irc-bot/default.nix
@@ -4,6 +4,10 @@ with lib;
let
port = 18872;
in {
+ nixpkgs.config.packageOverrides = pkgs: with pkgs; {
+ logstash = pkgs.stdenv.lib.overrideDerivation pkgs.logstash (old: {
+ patches = [ ./irc-out-notice.patch ]; });
+ };
services.logstash = {
enable = true;
inputConfig = ''
@@ -40,10 +44,11 @@ in {
file { path => "/tmp/logs.json" codec => "json_lines" }
if [output] {
irc {
- channels => [ "#nixos" , "#krebs" ]
+ channels => [ "#krebs", "#nixos" ]
host => "irc.freenode.net"
nick => "nixos-users-wiki"
format => "%{output}"
+ notice => true
}
}
'';
diff --git a/makefu/2configs/deployment/wiki-irc-bot/irc-out-notice.patch b/makefu/2configs/deployment/wiki-irc-bot/irc-out-notice.patch
new file mode 100644
index 000000000..040643f81
--- /dev/null
+++ b/makefu/2configs/deployment/wiki-irc-bot/irc-out-notice.patch
@@ -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