diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b6aa897d1fb..510c20c77f5 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -66,12 +66,16 @@ /scripts/go-workspace @grafana/grafana-app-platform-squad /hack/ @grafana/grafana-app-platform-squad +/pkg/apis/provisioning @grafana/grafana-git-ui-sync-team +/public/app/features/provisioning @grafana/grafana-git-ui-sync-team +/conf/provisioning/sample @grafana/grafana-git-ui-sync-team +/pkg/registry/apis/provisioning @grafana/grafana-git-ui-sync-team + /apps/alerting/ @grafana/alerting-backend /apps/playlist/ @grafana/grafana-app-platform-squad /pkg/api/ @grafana/grafana-backend-group /pkg/apis/ @grafana/grafana-app-platform-squad /pkg/apis/alerting_notifications @grafana/grafana-app-platform-squad @grafana/alerting-backend @grafana/alerting-frontend -/pkg/apis/provisioning @grafana/grafana-git-ui-sync-team /pkg/apis/query @grafana/grafana-datasources-core-services /pkg/apis/userstorage @grafana/grafana-app-platform-squad @grafana/plugins-platform-backend /pkg/bus/ @grafana/grafana-search-and-storage @@ -681,7 +685,6 @@ embed.go @grafana/grafana-as-code /pkg/registry/ @grafana/grafana-as-code /pkg/registry/apis/ @grafana/grafana-app-platform-squad /pkg/registry/apis/alerting @grafana/grafana-app-platform-squad @grafana/alerting-backend -/pkg/registry/apis/provisioning @grafana/grafana-git-ui-sync-team /pkg/registry/apis/query @grafana/grafana-datasources-core-services /pkg/registry/apis/userstorage @grafana/grafana-app-platform-squad @grafana/plugins-platform-backend /pkg/codegen/ @grafana/grafana-as-code diff --git a/pkg/api/folder_test.go b/pkg/api/folder_test.go index f0c6999f96f..729c36463f3 100644 --- a/pkg/api/folder_test.go +++ b/pkg/api/folder_test.go @@ -15,6 +15,7 @@ import ( clientrest "k8s.io/client-go/rest" "github.com/grafana/grafana/pkg/api/dtos" + "github.com/grafana/grafana/pkg/apimachinery/identity" "github.com/grafana/grafana/pkg/services/accesscontrol" "github.com/grafana/grafana/pkg/services/accesscontrol/actest" acmock "github.com/grafana/grafana/pkg/services/accesscontrol/mock" @@ -525,6 +526,9 @@ func (m mockClientConfigProvider) GetDirectRestConfig(c *contextmodel.ReqContext } func (m mockClientConfigProvider) DirectlyServeHTTP(w http.ResponseWriter, r *http.Request) {} +func (m mockClientConfigProvider) GetRestConfigForBackgroundWorker(func() identity.Requester) *clientrest.Config { + return nil +} func TestHTTPServer_FolderMetadataK8s(t *testing.T) { ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { diff --git a/pkg/registry/apis/provisioning/utils_test.go b/pkg/registry/apis/provisioning/utils_test.go index bec1da9d2c8..0108b22787b 100644 --- a/pkg/registry/apis/provisioning/utils_test.go +++ b/pkg/registry/apis/provisioning/utils_test.go @@ -30,6 +30,18 @@ func TestUtils(t *testing.T) { require.NotNil(t, obj) }) + t.Run("YAML Parsing", func(t *testing.T) { + obj, gvk, err := LoadYAMLOrJSON(bytes.NewReader([]byte("kind: xyz\npi: 3.1415"))) + require.NoError(t, err) + require.NotNil(t, gvk) + require.Equal(t, "xyz", obj.Object["kind"]) + require.Equal(t, 3.1415, obj.Object["pi"]) + + // // Tabs in the value + // _, _, err = LoadYAMLOrJSON(bytes.NewReader([]byte("kind: xyz\n\tpi: 3.1415"))) + // require.Equal(t, ErrYamlContainsTabs, err) + }) + t.Run("load playlist yaml", func(t *testing.T) { obj, gvk, err := LoadYAMLOrJSON(bytes.NewReader([]byte(` apiVersion: playlist.grafana.app/v0alpha1 @@ -37,7 +49,7 @@ kind: Playlist metadata: name: hello spec: - title: a title + title: a title `))) require.NoError(t, err)