Some checks are pending
Check Python Version Consistency / Check Python Version (push) Waiting to run
52 lines
1.8 KiB
Markdown
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
|
|
```
|