mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 22:11:33 +01:00
Check gatus uptime with healthchecks.io
This commit is contained in:
parent
4f31384329
commit
38fb2ec1d5
2 changed files with 27 additions and 10 deletions
|
|
@ -1,9 +1,6 @@
|
||||||
seb-password: ENC[AES256_GCM,data:laGJomW5c5TB3alpPgZKElQ3Y46OBxPrA0AxVNgx/09oSuG0EM63cnnkwZkrTeZxqjBH2UOryLqCr9DUr9mhZsovqNtZ2t8Uzg==,iv:GpBQNm1jspU8PCN+SzfAUKSps3YySg6JJVYOLOFetOI=,tag:2nARGI9XwzLfJFRhDyGBSw==,type:str]
|
seb-password: ENC[AES256_GCM,data:laGJomW5c5TB3alpPgZKElQ3Y46OBxPrA0AxVNgx/09oSuG0EM63cnnkwZkrTeZxqjBH2UOryLqCr9DUr9mhZsovqNtZ2t8Uzg==,iv:GpBQNm1jspU8PCN+SzfAUKSps3YySg6JJVYOLOFetOI=,tag:2nARGI9XwzLfJFRhDyGBSw==,type:str]
|
||||||
tailscale-auth-key: ENC[AES256_GCM,data:FKHQsrLhELUKUg/nuf/UakS14Qj8z3arRR3366Cc3wag8+lpLrVjKXT8a5ZFd4ZtIghrCSvyXUefAKcVmQ==,iv:jvuoo8DD7ls0WZA6ZrCbz3w4O8NCyXZjv1mscnx/T94=,tag:HczecDubwKkCVu04rqhh9w==,type:str]
|
tailscale-auth-key: ENC[AES256_GCM,data:FKHQsrLhELUKUg/nuf/UakS14Qj8z3arRR3366Cc3wag8+lpLrVjKXT8a5ZFd4ZtIghrCSvyXUefAKcVmQ==,iv:jvuoo8DD7ls0WZA6ZrCbz3w4O8NCyXZjv1mscnx/T94=,tag:HczecDubwKkCVu04rqhh9w==,type:str]
|
||||||
service-tailscale-auth-key: ENC[AES256_GCM,data:S1LXXdGd78y1LAAeBxQ/yC8ggm/Mq8JkXVx7umMEk6nlOx0NLHqklSJ8JX+QUhgmx9hoCBSKJ9q1DxbFzsw=,iv:uDAG/00sl/n+Tp11SmsEQFKWQ9KOxcWfvgnFnIUuMcw=,tag:3A8vv97+HmTzBVxH9hqEfg==,type:str]
|
service-tailscale-auth-key: ENC[AES256_GCM,data:S1LXXdGd78y1LAAeBxQ/yC8ggm/Mq8JkXVx7umMEk6nlOx0NLHqklSJ8JX+QUhgmx9hoCBSKJ9q1DxbFzsw=,iv:uDAG/00sl/n+Tp11SmsEQFKWQ9KOxcWfvgnFnIUuMcw=,tag:3A8vv97+HmTzBVxH9hqEfg==,type:str]
|
||||||
restic:
|
|
||||||
environment: ENC[AES256_GCM,data:0slVHi88t9iqM8kdp+iWngLO4+fsUztma0wGghFl1gCvgWCrF59N1x2KkrfsMynMOX5EsnokELWJvctpQyeJun/heSwVheH9MlYkx5USKjHIfc82hgcY/9PMpLK8gqCpbEw=,iv:EnNlyIBZgRT7d8o0KTDcPV5uNSfDwbmss3M5rxMwAns=,tag:wcMnfb8FqlInvHj4NI7V4g==,type:str]
|
|
||||||
password: ENC[AES256_GCM,data:/VY9RlJ6MTHhAPQ7BODp0M3rgoNFUIDDFkg++PoL,iv:LxubXHR6F1X6vkdbLmbNt/o1hYAULhSXQw8587jQkls=,tag:E67MoC5ViZyKaSPP4Mg3Kw==,type:str]
|
|
||||||
healthchecks-ping-key: ENC[AES256_GCM,data:j2AJZ0VvRxJMsy1VSA/7mOmCBka2KA==,iv:5LjD9u08wdU3W+RlL8UK5AaU9GSy+6FqTUTkIJkea2c=,tag:wKOjFncxgURIlQSCBLXLSw==,type:str]
|
healthchecks-ping-key: ENC[AES256_GCM,data:j2AJZ0VvRxJMsy1VSA/7mOmCBka2KA==,iv:5LjD9u08wdU3W+RlL8UK5AaU9GSy+6FqTUTkIJkea2c=,tag:wKOjFncxgURIlQSCBLXLSw==,type:str]
|
||||||
sops:
|
sops:
|
||||||
age:
|
age:
|
||||||
|
|
@ -25,7 +22,7 @@ sops:
|
||||||
V1F2cjlmRWNKWkN1U3hwNWl6U2lEb1kKgsj22mpgxpgA5oXTXhoA5DtkySqqcn17
|
V1F2cjlmRWNKWkN1U3hwNWl6U2lEb1kKgsj22mpgxpgA5oXTXhoA5DtkySqqcn17
|
||||||
OrpUiZmfOABXEZ0b5pnkAD06aW+7j2SqajYpvguxIrD9x1w562FmZA==
|
OrpUiZmfOABXEZ0b5pnkAD06aW+7j2SqajYpvguxIrD9x1w562FmZA==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-06-09T21:39:42Z"
|
lastmodified: "2025-06-19T22:27:27Z"
|
||||||
mac: ENC[AES256_GCM,data:25WhVN2xQjwzG+ntaTXStMDFZOc57PTaHyb1aWRZpQt5hKR9Ot+nhyx0PrzckgOCfBXBBlzetRBGj0akLhVEMKNXtsLzI6BIttqgH1RniZqM35wEOp63ZNYwpXCB23tYyNkoiDheb/yWDVuWMlJxj5vgYv1BFhPo2MbHGGcLDHU=,iv:2hWf8B6C0SdHiG2T1906zChuElhB/Ae0MPzr3mz1zD0=,tag:UELD567RvAcz02Fgcg74Hg==,type:str]
|
mac: ENC[AES256_GCM,data:HPVe70zuMv3AKwxJdBeY4LXlg+Yod6HeJmfPV/h9+ykA3z9jW4JniHzdtkTa9ZE//92zdkJgaQyJK560h+tCEoZSmLplS5Wig2t9oKI+NBl4z1me4waKXSgAmhlc4J2/j+QZcUcUHRkMrUFu69ioOHE2V41WQnQ7w6sCIm6ZSx8=,iv:TNFL5PlOpN824zPX9yOmM3cpYm6vKmlHX1IvuKTvtB8=,tag:QFxiRi36TAg//xkLTaWz9A==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.10.2
|
version: 3.10.2
|
||||||
|
|
|
||||||
|
|
@ -51,8 +51,16 @@ in
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
meta.ports.list = [ cfg.port ];
|
meta.ports.list = [ cfg.port ];
|
||||||
|
|
||||||
|
sops = {
|
||||||
|
secrets."healthchecks-ping-key" = { };
|
||||||
|
templates."gatus.env".content = ''
|
||||||
|
HEALTHCHECKS_PING_KEY=${config.sops.placeholder."healthchecks-ping-key"}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
services.gatus = {
|
services.gatus = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
environmentFile = config.sops.templates."gatus.env".path;
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
web.port = cfg.port;
|
web.port = cfg.port;
|
||||||
|
|
@ -110,11 +118,23 @@ in
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
in
|
in
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name = "Healthchecks.io";
|
||||||
|
group = "Monitoring";
|
||||||
|
url = "https://hc-ping.com/\${HEALTHCHECKS_PING_KEY}/gatus-uptime?create=1";
|
||||||
|
interval = "2h";
|
||||||
|
alerts = [ { type = "ntfy"; } ];
|
||||||
|
conditions = [ "[STATUS] == 200" ];
|
||||||
|
}
|
||||||
|
]
|
||||||
|
++ (
|
||||||
self.nixosConfigurations
|
self.nixosConfigurations
|
||||||
|> lib.mapAttrsToList (_: value: value.config.custom.services.gatus.endpoints)
|
|> lib.mapAttrsToList (_: value: value.config.custom.services.gatus.endpoints)
|
||||||
|> lib.map (entry: lib.mapAttrsToList (_: value: value) entry)
|
|> lib.map (entry: lib.mapAttrsToList (_: value: value) entry)
|
||||||
|> lib.concatLists
|
|> lib.concatLists
|
||||||
|> lib.map (entry: mkEndpoint entry);
|
|> lib.map (entry: mkEndpoint entry)
|
||||||
|
);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue