observability-stack/.woodpecker.yml
2025-05-04 21:21:15 +03:00

38 lines
1.2 KiB
YAML

pipeline:
helm-check:
image: alpine/helm:3.13.2
commands:
- helm lint charts/grafana
- helm template charts/grafana -f manifest/grafana/values-int.yaml
validate-manifest:
image: bitnami/kubectl:latest
commands:
- echo "🔍 Validating grafana-int ArgoCD app"
- kubectl apply -f argocd-apps/grafana/grafana-int.yaml --dry-run=client
deploy-argocd-app:
image: bitnami/kubectl:latest
commands:
- echo "🚀 Applying grafana-int ArgoCD app"
- kubectl apply -f argocd-apps/grafana/grafana-int.yaml
create-cloudflare-cname:
image: alpine:latest
environment:
- CLOUDFLARE_TOKEN
- CLOUDFLARE_ZONE_ID
commands:
- apk add curl jq
- echo "🌐 Creating CNAME for grafana-int.dvirlabs.com"
- curl -X POST "https://api.cloudflare.com/client/v4/zones/$CLOUDFLARE_ZONE_ID/dns_records" \
-H "Authorization: Bearer $CLOUDFLARE_TOKEN" \
-H "Content-Type: application/json" \
--data '{
"type":"CNAME",
"name":"grafana-int",
"content":"b50bbf48-0a2f-47ce-b73e-336b6718318b.cfargotunnel.com",
"ttl":120,
"proxied":true
}'