summaryrefslogtreecommitdiffstats
path: root/files/etc/systemd/system/webmap-download@.service
blob: c0e826f69c0cfc997e3a5814b9012fe0e3cc6b27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
[Unit]
Description=Webmap updater service (download %I)
# Chaining logic from https://serverfault.com/questions/1079993/why-does-my-systemd-timer-only-trigger-once-when-the-unit-is-a-target#answer-1128671
# XXX Looks like Upholds= prevents running a single unit, as it causes
# webmap-update@%i.target to start upon `systemctl start webmap-download@foo.service`
After=network-online.target webmap-update@%i.target
Upholds=webmap-update@%i.target

[Service]
User=_webmap-download
Group=_webmap

Nice=15
IOSchedulingClass=idle

Type=oneshot
ExecStart=/usr/local/bin/webmap-download \
    --cachedir=/var/cache/webmap \
    --lockdir=%t/webmap-download \
    --no-exit-code \
    --quiet \
    -- %I

RuntimeDirectory=webmap-download
RuntimeDirectoryPreserve=yes

# Hardening
NoNewPrivileges=yes
ProtectHome=yes
ProtectSystem=strict
PrivateDevices=yes
ProtectControlGroups=yes
ProtectKernelModules=yes
ProtectKernelTunables=yes
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
ReadWritePaths=/var/cache/webmap

[Install]
WantedBy=webmap-update@%i.target