From b9be2815d3120eb0b94128d47ea49170dfea334d Mon Sep 17 00:00:00 2001 From: Yuriy Tseretyan Date: Fri, 26 Aug 2022 14:08:12 -0400 Subject: [PATCH] Chore: Fix cue loader to use absolute path (#54257) --- pkg/framework/coremodel/helpers.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkg/framework/coremodel/helpers.go b/pkg/framework/coremodel/helpers.go index a7942b2e26e..20d111edba2 100644 --- a/pkg/framework/coremodel/helpers.go +++ b/pkg/framework/coremodel/helpers.go @@ -9,9 +9,10 @@ import ( "cuelang.org/go/cue" "cuelang.org/go/cue/load" - "github.com/grafana/grafana/pkg/cuectx" "github.com/grafana/thema/kernel" tload "github.com/grafana/thema/load" + + "github.com/grafana/grafana/pkg/cuectx" ) // Embed for all framework-related CUE files in this directory @@ -54,13 +55,22 @@ func doLoadFrameworkCUE(ctx *cue.Context) (v cue.Value, err error) { } over := make(map[string]load.Source) - err = tload.ToOverlay(prefix, m, over) + + absolutePath := prefix + if !filepath.IsAbs(absolutePath) { + absolutePath, err = filepath.Abs(absolutePath) + if err != nil { + return + } + } + + err = tload.ToOverlay(absolutePath, m, over) if err != nil { return } bi := load.Instances(nil, &load.Config{ - Dir: prefix, + Dir: absolutePath, Package: "coremodel", Overlay: over, })