1
1
Fork 1
mirror of https://github.com/oddlama/nix-config.git synced 2025-10-10 23:00:39 +02:00

feat: enable firefly-iii-data-importer

This commit is contained in:
oddlama 2025-04-27 22:49:39 +02:00
parent dfa462c0e6
commit 2d86a1b0bd
No known key found for this signature in database
GPG key ID: 14EFE510775FE39A
7 changed files with 42 additions and 0 deletions

View file

@ -114,6 +114,7 @@ in
globals.services.grafana.domain
globals.services.firefly.domain
globals.services.firefly-pico.domain
globals.services.firefly-data-importer.domain
globals.services.immich.domain
globals.services.influxdb.domain
globals.services.loki.domain

View file

@ -7,6 +7,7 @@
let
fireflyDomain = "firefly.${globals.domains.me}";
fireflyPicoDomain = "firefly-pico.${globals.domains.me}";
fireflyDataImporterDomain = "firefly-data-importer.${globals.domains.me}";
wardWebProxyCfg = nodes.ward-web-proxy.config;
in
{
@ -17,6 +18,7 @@ in
globals.services.firefly.domain = fireflyDomain;
globals.services.firefly-pico.domain = fireflyPicoDomain;
globals.services.firefly-data-importer.domain = fireflyDataImporterDomain;
globals.monitoring.http.firefly = {
url = "https://${fireflyDomain}";
expectedBodyRegex = "Firefly III";
@ -42,6 +44,13 @@ in
owner = "firefly-pico";
};
age.secrets.firefly-data-importer-app-key = {
generator.script = _: ''
echo "base64:$(head -c 32 /dev/urandom | base64)"
'';
owner = "firefly-data-importer";
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/firefly-iii";
@ -51,6 +60,10 @@ in
directory = "/var/lib/firefly-pico";
user = "firefly-pico";
}
{
directory = "/var/lib/firefly-iii-data-importer";
user = "firefly-iii-data-importer";
}
];
networking.hosts.${wardWebProxyCfg.wireguard.proxy-home.ipv4} = [
@ -89,6 +102,23 @@ in
};
};
services.firefly-iii-data-importer = {
enable = true;
enableNginx = true;
virtualHost = globals.services.firefly-data-importer.domain;
settings = {
LOG_CHANNEL = "syslog";
APP_ENV = "local";
APP_URL = "https://${globals.services.firefly-data-importer.domain}";
TZ = "Europe/Berlin";
FIREFLY_III_URL = config.services.firefly-iii.settings.APP_URL;
VANITY_URL = config.services.firefly-iii.settings.APP_URL;
TRUSTED_PROXIES = wardWebProxyCfg.wireguard.proxy-home.ipv4;
EXPECT_SECURE_URL = "true";
APP_KEY_FILE = config.age.secrets.firefly-data-importer-app-key.path;
};
};
services.nginx.commonHttpConfig = ''
log_format json_combined escape=json '{'
'"time": $msec,'