Add Grafana deploy annotations to all CD workflows
Posts an annotation to Grafana after each successful deploy, tagged with "deploy" and the service name. Annotations appear as vertical markers on dashboards, making it easy to correlate deploys with metric changes. Uses GRAFANA_SERVICE_TOKEN from SOPS secrets — must be added via sops infrastructure/secrets.infra.env. Gracefully skips if the token is not configured. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f6b89a2b7e
commit
6c482238e8
3 changed files with 30 additions and 0 deletions
10
.github/workflows/cd-apps.yml
vendored
10
.github/workflows/cd-apps.yml
vendored
|
|
@ -110,3 +110,13 @@ jobs:
|
|||
# Clean up
|
||||
docker image prune -af
|
||||
docker compose ps
|
||||
|
||||
# Annotate deploy in Grafana
|
||||
GRAFANA_TOKEN=$(grep GRAFANA_SERVICE_TOKEN app.env | cut -d= -f2-)
|
||||
if [ -n "$GRAFANA_TOKEN" ]; then
|
||||
docker compose exec -T grafana wget -q -O /dev/null \
|
||||
--header="Authorization: Bearer $GRAFANA_TOKEN" \
|
||||
--header="Content-Type: application/json" \
|
||||
--post-data='{"text":"Deploy '${{ github.sha }}'","tags":["deploy","apps"]}' \
|
||||
http://localhost:3000/api/annotations || true
|
||||
fi
|
||||
|
|
|
|||
10
.github/workflows/cd-brouter.yml
vendored
10
.github/workflows/cd-brouter.yml
vendored
|
|
@ -64,3 +64,13 @@ jobs:
|
|||
docker pull ghcr.io/trails-cool/brouter:latest
|
||||
docker compose up -d brouter
|
||||
docker image prune -af
|
||||
|
||||
# Annotate deploy in Grafana
|
||||
GRAFANA_TOKEN=$(grep GRAFANA_SERVICE_TOKEN .env | cut -d= -f2- 2>/dev/null)
|
||||
if [ -n "$GRAFANA_TOKEN" ]; then
|
||||
docker compose exec -T grafana wget -q -O /dev/null \
|
||||
--header="Authorization: Bearer $GRAFANA_TOKEN" \
|
||||
--header="Content-Type: application/json" \
|
||||
--post-data='{"text":"Deploy brouter ${{ github.sha }}","tags":["deploy","brouter"]}' \
|
||||
http://localhost:3000/api/annotations || true
|
||||
fi
|
||||
|
|
|
|||
10
.github/workflows/cd-infra.yml
vendored
10
.github/workflows/cd-infra.yml
vendored
|
|
@ -85,3 +85,13 @@ jobs:
|
|||
fi
|
||||
|
||||
docker compose ps
|
||||
|
||||
# Annotate deploy in Grafana
|
||||
GRAFANA_TOKEN=$(grep GRAFANA_SERVICE_TOKEN .env | cut -d= -f2-)
|
||||
if [ -n "$GRAFANA_TOKEN" ]; then
|
||||
docker compose exec -T grafana wget -q -O /dev/null \
|
||||
--header="Authorization: Bearer $GRAFANA_TOKEN" \
|
||||
--header="Content-Type: application/json" \
|
||||
--post-data='{"text":"Deploy infra ${{ github.sha }}","tags":["deploy","infra"]}' \
|
||||
http://localhost:3000/api/annotations || true
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue