(ctx *pulumi.Context, cluster *providers.ProviderInfo, ns *corev1.Namespace, environment string, ingressNginx *helm.Chart)
| 453 | } |
| 454 | |
| 455 | func deployGrafana(ctx *pulumi.Context, cluster *providers.ProviderInfo, ns *corev1.Namespace, environment string, ingressNginx *helm.Chart) error { |
| 456 | conf := config.New(ctx, "mcp-registry") |
| 457 | grafanaSecret, err := corev1.NewSecret(ctx, "grafana-secrets", &corev1.SecretArgs{ |
| 458 | Metadata: &metav1.ObjectMetaArgs{ |
| 459 | Name: pulumi.String("grafana-secrets"), |
| 460 | Namespace: ns.Metadata.Name(), |
| 461 | }, |
| 462 | StringData: pulumi.StringMap{ |
| 463 | "GF_AUTH_GOOGLE_CLIENT_SECRET": conf.RequireSecret("googleOauthClientSecret"), |
| 464 | }, |
| 465 | Type: pulumi.String("Opaque"), |
| 466 | }, pulumi.Provider(cluster.Provider)) |
| 467 | if err != nil { |
| 468 | return err |
| 469 | } |
| 470 | |
| 471 | grafanaPgCluster, err := apiextensions.NewCustomResource(ctx, "grafana-pg", &apiextensions.CustomResourceArgs{ |
| 472 | ApiVersion: pulumi.String("postgresql.cnpg.io/v1"), |
| 473 | Kind: pulumi.String("Cluster"), |
| 474 | Metadata: &metav1.ObjectMetaArgs{ |
| 475 | Name: pulumi.String("grafana-pg"), |
| 476 | Namespace: ns.Metadata.Name(), |
| 477 | Labels: pulumi.StringMap{ |
| 478 | "app": pulumi.String("grafana-pg"), |
| 479 | "environment": pulumi.String(environment), |
| 480 | }, |
| 481 | }, |
| 482 | OtherFields: map[string]any{ |
| 483 | "spec": map[string]any{ |
| 484 | "instances": 1, |
| 485 | "enablePDB": false, |
| 486 | "storage": map[string]any{ |
| 487 | "size": "10Gi", |
| 488 | }, |
| 489 | }, |
| 490 | }, |
| 491 | }, pulumi.Provider(cluster.Provider)) |
| 492 | if err != nil { |
| 493 | return err |
| 494 | } |
| 495 | |
| 496 | // Create VictoriaMetrics and VictoriaLogs datasources |
| 497 | datasourcesConfig := map[string]interface{}{ |
| 498 | "apiVersion": 1, |
| 499 | "datasources": []map[string]interface{}{ |
| 500 | { |
| 501 | "name": "VictoriaMetrics", |
| 502 | "type": "prometheus", |
| 503 | "url": "http://victoria-metrics-victoria-metrics-single-server:8428", |
| 504 | "access": "proxy", |
| 505 | "isDefault": true, |
| 506 | }, |
| 507 | { |
| 508 | "name": "VictoriaLogs", |
| 509 | "type": "victoriametrics-logs-datasource", |
| 510 | "url": "http://victoria-logs-victoria-logs-single-server:9428", |
| 511 | "access": "proxy", |
| 512 | "jsonData": map[string]interface{}{ |
no test coverage detected
searching dependent graphs…