garmin-collector
This commit is contained in:
parent
a9697956e4
commit
ff789db499
6 changed files with 142 additions and 0 deletions
46
modules/garmin-collector/default.nix
Normal file
46
modules/garmin-collector/default.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
fleetFlake,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
users.users.garmin-collector = {
|
||||
isSystemUser = true;
|
||||
group = "garmin-collector";
|
||||
extraGroups = ["garmin-collector"];
|
||||
home = "/var/lib/garmin-collector";
|
||||
};
|
||||
|
||||
users.groups.garmin-collector = {};
|
||||
|
||||
systemd.services.garmin-collector = {
|
||||
description = "Garmin collector pushing to Prometheus Pushgateway";
|
||||
wantedBy = ["multi-user.target"];
|
||||
environment = {
|
||||
PUSHGATEWAY_ADDRESS = config.services.prometheus.pushgateway.web.listen-address;
|
||||
};
|
||||
serviceConfig = {
|
||||
Group = "garmin-collector";
|
||||
User = "garmin-collector";
|
||||
WorkingDirectory = "/var/lib/garmin-collector";
|
||||
ExecStart = ''
|
||||
${lib.getExe fleetFlake.packages.${pkgs.system}.garmin-collector}
|
||||
'';
|
||||
EnvironmentFile = config.age.secrets.garmin-collector-environment.path;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.timers."garmin-collector" = {
|
||||
wantedBy = ["timers.target"];
|
||||
timerConfig = {
|
||||
OnBootSec = "5m";
|
||||
OnUnitActiveSec = "4h";
|
||||
Unit = "garmin-collector.service";
|
||||
};
|
||||
};
|
||||
|
||||
environment.persistence."/persist".directories = [
|
||||
"/var/lib/garmin-collector"
|
||||
];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue