koopa-admin-log/configs/systemd/user/dossiers-ngi-branch-status.service

25 lines
1.1 KiB
Desktop File

[Unit]
Description=dossiers.ngi branch-status JSON + on-demand edition rebuild
Documentation=file:%h/src/koopa/koopa-admin-log/scripts/dossiers-ngi/README.md
After=default.target
[Service]
Type=oneshot
Nice=10
RemainAfterExit=no
# Full freezes per changed tip can take a while; skip overlap via flock
TimeoutStartSec=1h
Environment=TZ=Europe/Zurich
Environment=ADMIN_LOG=%h/src/koopa/koopa-admin-log
Environment=TDPD_ROOT=%h/git/src/ngi/tech-dossier-project-data
Environment=OUT=/var/www/monitoring-sites/dossiers.ngi.hacktivism.ch/branch-status.json
Environment=EDITIONS_ROOT=/var/www/monitoring-sites/dossiers.ngi.hacktivism.ch/editions
# Rebuild only when .edition-tip differs / missing (never force from timer)
Environment=REBUILD=1
EnvironmentFile=-%h/.config/dossiers-ngi/branch-status.env
# flock -n: second fire while busy exits 0 without stacking garbage
ExecStart=/usr/bin/flock -n %t/dossiers-ngi-branch-status.lock /usr/bin/python3 %h/src/koopa/koopa-admin-log/scripts/dossiers-ngi/branch-status-hourly.py --rebuild
SuccessExitStatus=0 1
[Install]
WantedBy=default.target