blumeops/ansible/roles/devpi/templates/devpi.plist.j2
Erich Blume 596eedfbd0 Add devpi PyPI caching proxy role for indri
Set up devpi-server as a transparent PyPI caching proxy on indri,
accessible via Tailscale at pypi.tail8d86e.ts.net.

- Add ansible role with LaunchAgent (KeepAlive service via mise x)
- Add health checks to indri-services-check script
- Configure to listen on port 3141, data stored in ~/devpi

Note: Manual setup required on indri before provisioning:
1. Add devpi packages to ~/.config/mise/config.toml
2. Run mise install && mise x -- devpi-init --serverdir ~/devpi
3. Set up Tailscale service after ansible provisioning

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 22:20:51 -08:00

35 lines
1,005 B
Django/Jinja

<?xml version="1.0" encoding="UTF-8"?>
<!-- {{ ansible_managed }} -->
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>mcquack.eblume.devpi</string>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/opt/homebrew/bin:/usr/bin:/bin</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/opt/homebrew/opt/mise/bin/mise</string>
<string>x</string>
<string>--</string>
<string>devpi-server</string>
<string>--serverdir</string>
<string>{{ devpi_serverdir }}</string>
<string>--host</string>
<string>{{ devpi_host }}</string>
<string>--port</string>
<string>{{ devpi_port }}</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StandardErrorPath</key>
<string>{{ devpi_log_dir }}/mcquack.devpi.err.log</string>
<key>StandardOutPath</key>
<string>{{ devpi_log_dir }}/mcquack.devpi.out.log</string>
</dict>
</plist>