Commit Graph
8 Commits
Author SHA1 Message Date
maxime.killinger 6b17c8ab40 ci: temporary debug step for WATCHTOWER_TOKEN context resolution
🚀 Docker Build and Push / build-and-push (push) Successful in 2m57s
2026-08-28 23:09:12 +02:00
maxime.killinger 89a7d4d67d ci: read WATCHTOWER_TOKEN from vars, not secrets
🚀 Docker Build and Push / build-and-push (push) Successful in 6m4s
The token is stored as an instance-level Actions Variable
(Site Administration > Actions > Variables), not a Secret. secrets.WATCHTOWER_TOKEN
always resolved to empty, so the watchtower trigger request carried
no Authorization value and was rejected (401 Invalid token attempt).
2026-08-28 23:03:30 +02:00
maxime.killinger 3221c34081 ci: watchtower HTTP API now requires POST, not GET, on /v1/update
🚀 Docker Build and Push / build-and-push (push) Successful in 3m13s
The maintained fork (ghcr.io/nicholas-fedor/watchtower) returns 405
on GET; only POST is accepted.
2026-08-28 22:11:00 +02:00
maxime.killinger 842c8f71eb feat: add /alertmanager endpoint as Alertmanager -> Apprise bridge
🚀 Docker Build and Push / build-and-push (push) Successful in 3m30s
Reuses the same notification path as /crowdsec: formats the
Alertmanager webhook payload (firing/resolved, severity, instance,
summary/description) and forwards it to APPRISE_URL as {title, body}.
2026-08-28 22:05:30 +02:00
maxime.killinger bbcbb17302 docs: add logo to README
🚀 Docker Build and Push / build-and-push (push) Successful in 1m22s
2026-02-16 07:19:19 +01:00
maxime.killinger a75c21a0bf feat: deduplicate CrowdSec alert scenarios per IP
🚀 Docker Build and Push / build-and-push (push) Successful in 2m18s
- Use a set to collect scenarios for each IP address to prevent duplicate entries (e.g., multiple 'http-probing' lists).
- Sort scenarios alphabetically for consistent notification output.
- Improve notification readability by grouping repetitive alerts.
2026-01-03 10:26:37 +01:00
maxime.killinger d180cb700c refactor: optimize docker, robust config & country handling
🚀 Docker Build and Push / build-and-push (push) Successful in 59s
- optimize(docker): use distroless/python3-debian12 & multi-stage build
- feat(app): replace Gunicorn with Waitress (pure python)
- feat(countries): replace static list with pycountry (dynamic & complete)
- feat(config): enforce mandatory APPRISE_URL (fatal if missing)
- feat(logging): add structured logging and graceful shutdown signal handling
- docs: update README with required env var and correct usage
2025-12-31 18:46:21 +01:00
maxime.killinger eef8c3835e 🎉 Initial commit: CrowdSec notification service
🚀 Docker Build and Push / build-and-push (push) Successful in 48s
2025-12-31 18:16:07 +01:00