discgod_server.py now runs as a launchd LaunchAgent (RunAtLoad + KeepAlive) on :5057 — starts on login/boot, respawns on crash. Documented in the README. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
|
|
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
<!--
|
|
discgod ingest server — launchd agent for the Ultra (ultra.local).
|
|
|
|
Runs discgod_server.py on :5057 as the johnking user (required for local
|
|
Postgres peer auth to discogs_full), starts at login/boot, and is kept alive
|
|
if it ever crashes.
|
|
|
|
Install:
|
|
cp deploy/com.monsterrobot.discgod.plist ~/Library/LaunchAgents/
|
|
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.monsterrobot.discgod.plist
|
|
launchctl kickstart -k gui/$(id -u)/com.monsterrobot.discgod
|
|
Stop / remove:
|
|
launchctl bootout gui/$(id -u)/com.monsterrobot.discgod
|
|
Logs: server/discgod_server.log
|
|
-->
|
|
<plist version="1.0">
|
|
<dict>
|
|
<key>Label</key>
|
|
<string>com.monsterrobot.discgod</string>
|
|
|
|
<key>ProgramArguments</key>
|
|
<array>
|
|
<string>/opt/homebrew/bin/python3</string>
|
|
<string>/Users/johnking/discgod/server/discgod_server.py</string>
|
|
</array>
|
|
|
|
<key>WorkingDirectory</key>
|
|
<string>/Users/johnking/discgod/server</string>
|
|
|
|
<key>EnvironmentVariables</key>
|
|
<dict>
|
|
<key>DISCGOD_DB</key>
|
|
<string>discogs_full</string>
|
|
<key>DISCGOD_PORT</key>
|
|
<string>5057</string>
|
|
<key>PATH</key>
|
|
<string>/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
|
|
</dict>
|
|
|
|
<key>RunAtLoad</key>
|
|
<true/>
|
|
|
|
<key>KeepAlive</key>
|
|
<true/>
|
|
|
|
<key>ThrottleInterval</key>
|
|
<integer>10</integer>
|
|
|
|
<key>StandardOutPath</key>
|
|
<string>/Users/johnking/discgod/server/discgod_server.log</string>
|
|
<key>StandardErrorPath</key>
|
|
<string>/Users/johnking/discgod/server/discgod_server.log</string>
|
|
</dict>
|
|
</plist>
|