Folders/K8s: Fix createdBy and updatedBy fields in response (#99569)

This commit is contained in:
Arati R.
2025-01-28 10:46:07 -06:00
committed by GitHub
parent d81b1bf803
commit 94a844977e
6 changed files with 143 additions and 72 deletions
+18 -15
View File
@@ -20,21 +20,24 @@ import (
internalfolders "github.com/grafana/grafana/pkg/registry/apis/folders"
"github.com/grafana/grafana/pkg/services/dashboards"
"github.com/grafana/grafana/pkg/services/folder"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/util"
)
type FolderUnifiedStoreImpl struct {
log log.Logger
k8sclient folderK8sHandler
log log.Logger
k8sclient folderK8sHandler
userService user.Service
}
// sqlStore implements the store interface.
var _ folder.Store = (*FolderUnifiedStoreImpl)(nil)
func ProvideUnifiedStore(k8sHandler *foldk8sHandler) *FolderUnifiedStoreImpl {
func ProvideUnifiedStore(k8sHandler *foldk8sHandler, userService user.Service) *FolderUnifiedStoreImpl {
return &FolderUnifiedStoreImpl{
k8sclient: k8sHandler,
log: log.New("folder-store"),
k8sclient: k8sHandler,
log: log.New("folder-store"),
userService: userService,
}
}
@@ -60,7 +63,7 @@ func (ss *FolderUnifiedStoreImpl) Create(ctx context.Context, cmd folder.CreateF
return nil, err
}
folder, err := internalfolders.UnstructuredToLegacyFolder(out)
folder, err := ss.UnstructuredToLegacyFolder(ctx, out)
if err != nil {
return nil, err
}
@@ -135,7 +138,7 @@ func (ss *FolderUnifiedStoreImpl) Update(ctx context.Context, cmd folder.UpdateF
return nil, err
}
return internalfolders.UnstructuredToLegacyFolder(out)
return ss.UnstructuredToLegacyFolder(ctx, out)
}
// If WithFullpath is true it computes also the full path of a folder.
@@ -178,7 +181,7 @@ func (ss *FolderUnifiedStoreImpl) Get(ctx context.Context, q folder.GetFolderQue
return nil, dashboards.ErrFolderNotFound
}
return internalfolders.UnstructuredToLegacyFolder(out)
return ss.UnstructuredToLegacyFolder(ctx, out)
}
func (ss *FolderUnifiedStoreImpl) GetParents(ctx context.Context, q folder.GetParentsQuery) ([]*folder.Folder, error) {
@@ -206,7 +209,7 @@ func (ss *FolderUnifiedStoreImpl) GetParents(ctx context.Context, q folder.GetPa
return nil, err
}
folder, err := internalfolders.UnstructuredToLegacyFolder(out)
folder, err := ss.UnstructuredToLegacyFolder(ctx, out)
if err != nil {
return nil, err
}
@@ -245,9 +248,9 @@ func (ss *FolderUnifiedStoreImpl) GetChildren(ctx context.Context, q folder.GetC
hits := make([]*folder.Folder, 0)
for _, item := range out.Items {
// convert item to legacy folder format
f, err := internalfolders.UnstructuredToLegacyFolder(&item)
f, err := ss.UnstructuredToLegacyFolder(ctx, &item)
if f == nil {
return nil, fmt.Errorf("unable covert unstructured item to legacy folder %w", err)
return nil, fmt.Errorf("unable to convert unstructured item to legacy folder %w", err)
}
// it we are at root level, skip subfolder
@@ -345,9 +348,9 @@ func (ss *FolderUnifiedStoreImpl) GetFolders(ctx context.Context, q folder.GetFo
m := map[string]*folder.Folder{}
for _, item := range out.Items {
// convert item to legacy folder format
f, err := internalfolders.UnstructuredToLegacyFolder(&item)
f, err := ss.UnstructuredToLegacyFolder(ctx, &item)
if f == nil {
return nil, fmt.Errorf("unable covert unstructured item to legacy folder %w", err)
return nil, fmt.Errorf("unable to convert unstructured item to legacy folder %w", err)
}
m[f.UID] = f
@@ -405,9 +408,9 @@ func (ss *FolderUnifiedStoreImpl) GetDescendants(ctx context.Context, orgID int6
nodes := map[string]*folder.Folder{}
for _, item := range out.Items {
// convert item to legacy folder format
f, err := internalfolders.UnstructuredToLegacyFolder(&item)
f, err := ss.UnstructuredToLegacyFolder(ctx, &item)
if f == nil {
return nil, fmt.Errorf("unable covert unstructured item to legacy folder %w", err)
return nil, fmt.Errorf("unable to convert unstructured item to legacy folder %w", err)
}
nodes[f.UID] = f