فهرست منبع

config: fix connstr for remote_cache (#17675)

fixes #17643 and adds test to check for commented out lines (but will only catch `;`, not `#`).
Kyle Brandt 6 سال پیش
والد
کامیت
49f0f0e89e
2فایلهای تغییر یافته به همراه19 افزوده شده و 1 حذف شده
  1. 1 1
      conf/defaults.ini
  2. 18 0
      pkg/setting/setting_test.go

+ 1 - 1
conf/defaults.ini

@@ -118,7 +118,7 @@ type = database
 # database: will use Grafana primary database.
 # redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=0`. Only addr is required.
 # memcache: 127.0.0.1:11211
-;connstr =
+connstr =
 
 #################################### Data proxy ###########################
 [dataproxy]

+ 18 - 0
pkg/setting/setting_test.go

@@ -1,10 +1,12 @@
 package setting
 
 import (
+	"bufio"
 	"os"
 	"path"
 	"path/filepath"
 	"runtime"
+	"strings"
 	"testing"
 
 	"gopkg.in/ini.v1"
@@ -30,6 +32,22 @@ func TestLoadingSettings(t *testing.T) {
 			So(cfg.RendererCallbackUrl, ShouldEqual, "http://localhost:3000/")
 		})
 
+		Convey("default.ini should have no semi-colon commented entries", func() {
+			file, err := os.Open("../../conf/defaults.ini")
+			if err != nil {
+				t.Errorf("failed to load defaults.ini file: %v", err)
+			}
+			defer file.Close()
+
+			scanner := bufio.NewScanner(file)
+			for scanner.Scan() {
+				// This only catches values commented out with ";" and will not catch those that are commented out with "#".
+				if strings.HasPrefix(scanner.Text(), ";") {
+					t.Errorf("entries in defaults.ini must not be commented or environment variables will not work: %v", scanner.Text())
+				}
+			}
+		})
+
 		Convey("Should be able to override via environment variables", func() {
 			os.Setenv("GF_SECURITY_ADMIN_USER", "superduper")