1
0

Add status page to monitoring-3

This commit is contained in:
clerie 2021-05-15 18:43:15 +02:00
parent 1caff12782
commit 6ee3387680
3 changed files with 59 additions and 0 deletions

View File

@ -120,6 +120,27 @@ in {
}; };
}; };
users.users.uptimestatus = {
description = "Uptime Status Service";
group = "uptimestatus";
home = "/var/lib/uptimestatus/";
useDefaultShell = true;
isSystemUser = true;
};
users.groups.uptimestatus = {};
systemd.services.uptimestatus = {
wantedBy = [ "multi-user.target" ];
serviceConfig = {
RuntimeDirectory = "uptimestatus";
StateDirectory = "uptimestatus";
User = "uptimestatus";
Group = "uptimestatus";
};
script = "gunicorn -w 4 -b [::1]:8235 uptimestatus:app";
path = with pkgs; [ (python38.withPackages (ps: [ ps.gunicorn uptimestatus ])) ];
};
services.nginx = { services.nginx = {
enable = true; enable = true;
@ -134,6 +155,11 @@ in {
forceSSL = true; forceSSL = true;
locations."/".proxyPass = "http://[::1]:3001/"; locations."/".proxyPass = "http://[::1]:3001/";
}; };
"status.monitoring.clerie.de" = {
enableACME = true;
forceSSL = true;
locations."/".proxyPass = "http://[::1]:8235/";
};
}; };
}; };

View File

@ -3,6 +3,7 @@ self: super: {
flask-excel = self.python3.pkgs.callPackage ./flask-excel {}; flask-excel = self.python3.pkgs.callPackage ./flask-excel {};
pyexcel-xlsx = self.python3.pkgs.callPackage ./pyexcel-xlsx {}; pyexcel-xlsx = self.python3.pkgs.callPackage ./pyexcel-xlsx {};
pyexcel-webio = self.python3.pkgs.callPackage ./pyexcel-webio {}; pyexcel-webio = self.python3.pkgs.callPackage ./pyexcel-webio {};
uptimestatus = self.python3.pkgs.callPackage ./uptimestatus {};
wetter = self.python3.pkgs.callPackage ./wetter { wetter = self.python3.pkgs.callPackage ./wetter {
inherit (self) python2 pkgconfig libsass; inherit (self) python2 pkgconfig libsass;
}; };

View File

@ -0,0 +1,32 @@
{
buildPythonPackage,
flask,
requests,
python3,
}:
let
src = fetchGit {
url = "https://git.clerie.de/clerie/uptime-status.git";
rev = "caacaced97617838bbd9b7b91a4e3d06e411139b";
};
pname = "uptimestatus";
version = "0.0.1";
in buildPythonPackage rec {
inherit src pname version;
propagatedBuildInputs = [
flask
requests
];
postInstall = ''
mkdir -p $out/${python3.sitePackages}/uptimestatus
cp -r uptimestatus/static $out/${python3.sitePackages}/uptimestatus/static
cp -r uptimestatus/templates $out/${python3.sitePackages}/uptimestatus/templates
'';
doCheck = false;
}