A community based topic aggregation platform built on atproto

fix(kagi-aggregator): pass env vars to cron jobs

Cron runs in a separate environment that doesn't inherit the container's
environment variables. This caused the COVES_API_KEY to be unavailable
when the cron job executed, resulting in failed runs.

Fix:
- Export COVES_* and PATH to /etc/environment at container startup
- Source /etc/environment in crontab before running the aggregator

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

Changed files
+7 -1
aggregators
+2 -1
aggregators/kagi-news/crontab
··· 1 1 # Run Kagi News aggregator daily at 1 PM UTC (after Kagi updates around noon) 2 - 0 13 * * * cd /app && /usr/local/bin/python -m src.main >> /var/log/cron.log 2>&1 2 + # Source environment variables exported by docker-entrypoint.sh 3 + 0 13 * * * . /etc/environment; cd /app && /usr/local/bin/python -m src.main >> /var/log/cron.log 2>&1 3 4 4 5 # Blank line required at end of crontab 5 6
+5
aggregators/kagi-news/docker-entrypoint.sh
··· 20 20 echo "API Key prefix: ${COVES_API_KEY:0:12}..." 21 21 echo "Cron schedule loaded from /etc/cron.d/kagi-aggregator" 22 22 23 + # Export environment variables for cron 24 + # Cron runs in a separate environment and doesn't inherit container env vars 25 + echo "Exporting environment variables for cron..." 26 + printenv | grep -E '^(COVES_|PATH=)' > /etc/environment 27 + 23 28 # Start cron in the background 24 29 echo "Starting cron daemon..." 25 30 cron