2026-04-09 01:20:00 -07:00
|
|
|
# Example systemd unit — IT inventory read API (Phase 0 stub).
|
|
|
|
|
# Copy to /etc/systemd/system/sankofa-it-read-api.service, adjust paths and User=.
|
|
|
|
|
#
|
|
|
|
|
# sudo cp config/systemd/sankofa-it-read-api.service.example /etc/systemd/system/sankofa-it-read-api.service
|
|
|
|
|
# sudo systemctl daemon-reload && sudo systemctl enable --now sankofa-it-read-api
|
|
|
|
|
#
|
|
|
|
|
[Unit]
|
|
|
|
|
Description=Sankofa IT read API (live inventory JSON)
|
|
|
|
|
After=network.target
|
|
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
|
Type=simple
|
|
|
|
|
User=root
|
|
|
|
|
WorkingDirectory=/opt/proxmox
|
feat(it-ops): LAN bootstrap for read API, NPM proxy, Cloudflare DNS
- bootstrap-sankofa-it-read-api-lan.sh: rsync /opt/proxmox, systemd + env file,
repo .env keys, portal CT 7801 merge, weekly export timer; tolerate export exit 2
- upsert-it-read-api-proxy-host.sh, add-it-api-sankofa-dns.sh
- systemd example uses EnvironmentFile; docs, spec, AGENTS, read API README
Made-with: Cursor
2026-04-09 01:50:14 -07:00
|
|
|
# Production pattern (see scripts/deployment/bootstrap-sankofa-it-read-api-lan.sh):
|
|
|
|
|
EnvironmentFile=-/etc/sankofa-it-read-api.env
|
|
|
|
|
# Or inline (dev):
|
|
|
|
|
# Environment=IT_READ_API_HOST=127.0.0.1
|
|
|
|
|
# Environment=IT_READ_API_PORT=8787
|
2026-04-09 01:20:00 -07:00
|
|
|
# Environment=IT_READ_API_KEY=change-me
|
feat(it-ops): LAN bootstrap for read API, NPM proxy, Cloudflare DNS
- bootstrap-sankofa-it-read-api-lan.sh: rsync /opt/proxmox, systemd + env file,
repo .env keys, portal CT 7801 merge, weekly export timer; tolerate export exit 2
- upsert-it-read-api-proxy-host.sh, add-it-api-sankofa-dns.sh
- systemd example uses EnvironmentFile; docs, spec, AGENTS, read API README
Made-with: Cursor
2026-04-09 01:50:14 -07:00
|
|
|
# Optional: IT_READ_API_CORS_ORIGINS=https://portal.sankofa.nexus
|
2026-04-09 01:20:00 -07:00
|
|
|
ExecStart=/usr/bin/python3 /opt/proxmox/services/sankofa-it-read-api/server.py
|
|
|
|
|
Restart=on-failure
|
|
|
|
|
RestartSec=5
|
|
|
|
|
|
|
|
|
|
[Install]
|
|
|
|
|
WantedBy=multi-user.target
|