Merge remote-tracking branch 'gum/master'
This commit is contained in:
commit
7e7499d863
@ -27,6 +27,8 @@ in
|
|||||||
<stockholm/krebs/2configs/shack/muellshack.nix>
|
<stockholm/krebs/2configs/shack/muellshack.nix>
|
||||||
# provide light control api
|
# provide light control api
|
||||||
<stockholm/krebs/2configs/shack/node-light.nix>
|
<stockholm/krebs/2configs/shack/node-light.nix>
|
||||||
|
# light.shack web-ui
|
||||||
|
<stockholm/krebs/2configs/shack/light.shack.nix>
|
||||||
# send mail if muell was not handled
|
# send mail if muell was not handled
|
||||||
<stockholm/krebs/2configs/shack/muell_mail.nix>
|
<stockholm/krebs/2configs/shack/muell_mail.nix>
|
||||||
# send mail if muell was not handled
|
# send mail if muell was not handled
|
||||||
|
12
krebs/2configs/shack/light.shack.nix
Normal file
12
krebs/2configs/shack/light.shack.nix
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
let
|
||||||
|
light-shack-src = pkgs.fetchgit {
|
||||||
|
url = "https://git.shackspace.de/rz/standby.shack";
|
||||||
|
rev = "e1b90a0a";
|
||||||
|
sha256 = "07fmz63arc5rxa0a3778srwz0jflp4ad6xnwkkc56hwybby0bclh";
|
||||||
|
};
|
||||||
|
web-dir = "${light-shack-src}/client/www/";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.nginx.virtualHosts."light.shack".locations."/".root = web-dir;
|
||||||
|
}
|
@ -4,8 +4,8 @@ let
|
|||||||
pkg = pkgs.callPackage (
|
pkg = pkgs.callPackage (
|
||||||
pkgs.fetchgit {
|
pkgs.fetchgit {
|
||||||
url = "https://git.shackspace.de/rz/muell_mail";
|
url = "https://git.shackspace.de/rz/muell_mail";
|
||||||
rev = "57b67c95052d90044137b2c89007a371dc389afd";
|
rev = "c3e43687879f95e01a82ef176fa15678543b2eb8";
|
||||||
sha256 = "1grkzs6fxjnc2bv4kskj63d5sb4qxz6yyr85nj0da9hn7qkk4jkj";
|
sha256 = "0hgchwam5ma96s2v6mx2jfkh833psadmisjbm3k3153rlxp46frx";
|
||||||
}) { mkYarnPackage = pkgs.yarn2nix-moretea.mkYarnPackage; };
|
}) { mkYarnPackage = pkgs.yarn2nix-moretea.mkYarnPackage; };
|
||||||
home = "/var/lib/muell_mail";
|
home = "/var/lib/muell_mail";
|
||||||
cfg = toString <secrets/shack/muell_mail.js>;
|
cfg = toString <secrets/shack/muell_mail.js>;
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
DynamicUser = true;
|
DynamicUser = true;
|
||||||
StateDirectory = "alertbot";
|
StateDirectory = "alertbot";
|
||||||
ExecStart = ''${pkgs.alertmanager-bot-telegram}/bin/alertmanager-bot \
|
ExecStart = ''${pkgs.alertmanager-bot-telegram}/bin/alertmanager-bot \
|
||||||
--alertmanager.url=http://alert.prometheus.shack --log.level=debug \
|
--alertmanager.url=http://alert.prometheus.shack --log.level=info \
|
||||||
--store=bolt --bolt.path=/var/lib/alertbot/bot.db \
|
--store=bolt --bolt.path=/var/lib/alertbot/bot.db \
|
||||||
--listen.addr="0.0.0.0:16320" \
|
--listen.addr="0.0.0.0:16320" \
|
||||||
--template.paths=${./templates}/shack.tmpl'';
|
--template.paths=${./templates}/shack.tmpl'';
|
||||||
|
@ -41,40 +41,7 @@ in {
|
|||||||
bind-address = ":${toString collectd-port}";
|
bind-address = ":${toString collectd-port}";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
krebs.kapacitor =
|
|
||||||
let
|
|
||||||
echoToIrc = pkgs.writeDash "echo_irc" ''
|
|
||||||
set -euf
|
|
||||||
data="$(${pkgs.jq}/bin/jq -r .message)"
|
|
||||||
export LOGNAME=${irc-nick}
|
|
||||||
${pkgs.irc-announce}/bin/irc-announce \
|
|
||||||
${irc-server} 6667 ${irc-nick} \#noise "$data" >/dev/null
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
alarms = {
|
|
||||||
cpu_deadman.database = db;
|
|
||||||
cpu_deadman.text = ''
|
|
||||||
var data = batch
|
|
||||||
|query(${"'''"}
|
|
||||||
SELECT mean("value") AS mean
|
|
||||||
FROM "collectd_db"."default"."cpu_value"
|
|
||||||
WHERE "type_instance" = 'idle' AND "type" = 'percent' fill(0)
|
|
||||||
${"'''"})
|
|
||||||
.period(10m)
|
|
||||||
.every(1m)
|
|
||||||
.groupBy('host')
|
|
||||||
data |alert()
|
|
||||||
.crit(lambda: "mean" < 50)
|
|
||||||
.stateChangesOnly()
|
|
||||||
.exec('${echoToIrc}')
|
|
||||||
data |deadman(1.0,5m)
|
|
||||||
.stateChangesOnly()
|
|
||||||
.exec('${echoToIrc}')
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
networking.firewall.extraCommands = ''
|
networking.firewall.extraCommands = ''
|
||||||
iptables -A INPUT -i retiolum -p udp --dport ${toString collectd-port} -j ACCEPT
|
iptables -A INPUT -i retiolum -p udp --dport ${toString collectd-port} -j ACCEPT
|
||||||
iptables -A INPUT -i retiolum -p tcp --dport ${toString influx-port} -j ACCEPT
|
iptables -A INPUT -i retiolum -p tcp --dport ${toString influx-port} -j ACCEPT
|
||||||
|
25
makefu/5pkgs/tt-rss/default.nix
Normal file
25
makefu/5pkgs/tt-rss/default.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "tt-rss";
|
||||||
|
version = "2020-09-23";
|
||||||
|
rev = "d0ed7890df";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://git.tt-rss.org/git/tt-rss/archive/${rev}.tar.gz";
|
||||||
|
sha256 = "1b2fczd41bqg9bq37r99svrqswr9qrp35m6gn3nz032yqcwc22ij";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -ra * $out/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Web-based news feed (RSS/Atom) aggregator";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
homepage = "https://tt-rss.org";
|
||||||
|
maintainers = with maintainers; [ globin zohl ];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user