OSVauco/infrastructure/notifications/webhook-setup.md
Chris Christiansen 9fcb9c354a
Some checks are pending
Check Python Version Consistency / Check Python Version (push) Waiting to run
feat(core): Fresh initialization - Deploy v3.6.1 Singularity Architecture
2026-09-03 04:03:09 +00:00

52 lines
1.8 KiB
Markdown

# Webhook / Chat-app oppsett
Budsjett-alerts og deploy-notifikasjoner sendes til en valgfri chat-app
via en enkel webhook-URL lagret i Secret Manager.
## Kompatible apper
| App | Webhook-format | Instruksjon |
|---|---|---|
| Google Chat | `{"text": "..."}` | Rom → Apps → Webhooks → Legg til webhook |
| Slack | `{"text": "..."}` | Apps → Incoming Webhooks → Add to Slack |
| Discord | `{"content": "..."}` | Kanal-innstillinger → Integrations → Webhooks |
| Teams | `{"text": "..."}` | Kanal → Connectors → Incoming Webhook |
> **Discord-merk:** Discord bruker `content` i stedet for `text`. Oppdater
> `main.py` i `10-cost-guard.sh` og `cloudbuild.yaml` notify-steget til
> `{"content": "$MSG"}` hvis du bruker Discord.
## Legge til webhook URL
```bash
# Ny secret
gcloud secrets create webhook-url \
--data-file=<(echo -n "https://DIN-WEBHOOK-URL") \
--project=propane-will-491900-m5
# Oppdater eksisterende secret
gcloud secrets versions add webhook-url \
--data-file=<(echo -n "https://NY-WEBHOOK-URL") \
--project=propane-will-491900-m5
```
## Hva utløser varsler
| Hendelse | Avsender | Terskel |
|---|---|---|
| Dev-budsjett 70% nådd | Cloud Function (`10-cost-guard.sh`) | $52.50 av $75 |
| Dev-budsjett 90% nådd | Cloud Function | $67.50 av $75 |
| Prod-budsjett 50% nådd | Cloud Function | $250 av $500 |
| Prod-budsjett 80% nådd | Cloud Function | $400 av $500 |
| Budsjett 100% — auto-teardown | Cloud Function | Cloud Run stoppes |
| Deploy fullført | `cloudbuild.yaml` steg 5 | Hver push til main |
## Teste varsling manuelt
```bash
# Simuler 100% budsjett-alert (trigger auto-teardown)
gcloud pubsub topics publish billing-alert-auto-teardown \
--message='{"budgetAmount":75,"costAmount":75,"alertThresholdExceeded":1.0}' \
--project=propane-will-491900-m5
```