From 4a51d054772743cede4843d0bedac99c7c08b863 Mon Sep 17 00:00:00 2001 From: Erik Sundell Date: Wed, 10 Oct 2018 13:38:21 +0200 Subject: [PATCH] stackdriver: add variable for gce authentication type --- pkg/tsdb/stackdriver/stackdriver.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkg/tsdb/stackdriver/stackdriver.go b/pkg/tsdb/stackdriver/stackdriver.go index 0395a7ca554..3e9bdfaee03 100644 --- a/pkg/tsdb/stackdriver/stackdriver.go +++ b/pkg/tsdb/stackdriver/stackdriver.go @@ -31,9 +31,10 @@ import ( ) var ( - slog log.Logger - legendKeyFormat *regexp.Regexp - metricNameFormat *regexp.Regexp + slog log.Logger + legendKeyFormat *regexp.Regexp + metricNameFormat *regexp.Regexp + gceAuthentication string ) // StackdriverExecutor executes queries for the Stackdriver datasource @@ -60,6 +61,7 @@ func init() { tsdb.RegisterTsdbQueryEndpoint("stackdriver", NewStackdriverExecutor) legendKeyFormat = regexp.MustCompile(`\{\{\s*(.+?)\s*\}\}`) metricNameFormat = regexp.MustCompile(`([\w\d_]+)\.googleapis\.com/(.+)`) + gceAuthentication = "gce" } // Query takes in the frontend queries, parses them into the Stackdriver query format @@ -92,7 +94,7 @@ func (e *StackdriverExecutor) executeTimeSeriesQuery(ctx context.Context, tsdbQu } authenticationType := e.dsInfo.JsonData.Get("authenticationType").MustString("jwt") - if authenticationType == "gce" { + if authenticationType == gceAuthentication { defaultProject, err := e.getDefaultProject(ctx) if err != nil { return nil, fmt.Errorf("Failed to retrieve default project from GCE metadata server. error: %v", err) @@ -585,11 +587,10 @@ func (e *StackdriverExecutor) createRequest(ctx context.Context, dsInfo *models. func (e *StackdriverExecutor) getDefaultProject(ctx context.Context) (string, error) { authenticationType := e.dsInfo.JsonData.Get("authenticationType").MustString("jwt") - if authenticationType == "gce" { + if authenticationType == gceAuthentication { defaultCredentials, err := google.FindDefaultCredentials(ctx, "https://www.googleapis.com/auth/monitoring.read") if err != nil { - return "raintank-production", nil - // return "", fmt.Errorf("Failed to retrieve default project from GCE metadata server. error: %v", err) + return "", fmt.Errorf("Failed to retrieve default project from GCE metadata server. error: %v", err) } else { logger.Info("projectName", "projectName", defaultCredentials.ProjectID) return defaultCredentials.ProjectID, nil