From c584bb39cec389d4c83ee55540c8b39b990b7c0e Mon Sep 17 00:00:00 2001 From: Ingolf Wagner Date: Mon, 16 Sep 2024 06:35:42 +0700 Subject: [PATCH] :sparkles: add service-taskchampion verify test --- machines/orbi/service-taskchampion.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/machines/orbi/service-taskchampion.nix b/machines/orbi/service-taskchampion.nix index 484a96d..bff8e10 100644 --- a/machines/orbi/service-taskchampion.nix +++ b/machines/orbi/service-taskchampion.nix @@ -8,6 +8,24 @@ { verify.closed.public.ports.taskchampion = [ config.services.taskchampion-sync-server.port ]; + verify.localCommands.taskchampion = + let + domain = "http://orbi.private:10222"; + curl = lib.getExe pkgs.curl; + grep = lib.getExe pkgs.gnugrep; + grepString = "TaskChampion sync server"; + in + '' + if ${curl} -s -o /dev/null -w "%{http_code}" ${domain} | ${grep} -q "200"; then + if ${curl} -s ${domain} | ${grep} -q "${grepString}"; then + echo "[ OK ] Die Seite hat Statuscode 200 und enthält den String '${grepString}'." + else + echo "[Fail] Der Statuscode ist 200, aber die Seite enthält den String '${grepString}' nicht." + fi + else + echo "[Fail] Die Seite hat keinen Statuscode 200." + fi + ''; networking.firewall.interfaces.wg0.allowedTCPPorts = [ config.services.taskchampion-sync-server.port