summaryrefslogtreecommitdiffstats
path: root/files/etc/systemd/system/webmap-download@.service
blob: 2c5a3e498356f28adbb8843783439edb74a52d92 (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
[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/lock/webmap/download \
    --no-exit-code \
    --quiet \
    -- %I

# 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
ReadWritePaths=%t/lock/webmap/download

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