Files
Gardomatic/remote/production/api.service
T
kleiax 904d14b64c
CI / test (push) Canceled after 0s
Initial commit
2026-09-12 22:22:17 +02:00

35 lines
1.2 KiB
Desktop File

[Unit]
# Description is a human-readable name for the service.
Description=Gardomatic API service
# Wait until PostgreSQL is running and the network is "up" before starting the service.
After=postgresql.service
After=network-online.target
Wants=network-online.target
# Configure service start rate limiting. If the service is (re)started more than 5 times
# in 600 seconds then don't permit it to start anymore.
StartLimitIntervalSec=600
StartLimitBurst=5
[Service]
# Execute the API binary as the gardomatic user, loading its dedicated environment file
# and using its writable state directory.
Type=exec
User=gardomatic
Group=gardomatic
EnvironmentFile=/etc/gardomatic/gardomatic.env
WorkingDirectory=/var/lib/gardomatic
ExecStart=/usr/local/bin/gardomatic-api
# Automatically restart the service after a 5-second wait if it exits with a non-zero
# exit code. If it restarts more than 5 times in 600 seconds, then the rate limit we
# configured above will be hit and it won't be restarted anymore.
Restart=on-failure
RestartSec=5
[Install]
# Start the service automatically at boot time (the 'multi-user.target' describes a boot
# state when the system will accept logins).
WantedBy=multi-user.target