CloudMigrations: add parent folder name to alert rule resource (#96366)
This commit is contained in:
@@ -195,7 +195,7 @@ func (s *Service) getMigrationDataJSON(ctx context.Context, signedInUser *user.S
|
||||
}
|
||||
|
||||
// Obtain the names of parent elements for Dashboard and Folders data types
|
||||
parentNamesByType, err := s.getParentNames(ctx, signedInUser, dashs, folders, libraryElements)
|
||||
parentNamesByType, err := s.getParentNames(ctx, signedInUser, dashs, folders, libraryElements, alertRules)
|
||||
if err != nil {
|
||||
s.log.Error("Failed to get parent folder names", "err", err)
|
||||
}
|
||||
@@ -662,7 +662,14 @@ func (s *Service) getFolderNamesForFolderUIDs(ctx context.Context, signedInUser
|
||||
|
||||
// getParentNames finds the parent names for resources and returns a map of data type: {data UID : parentName}
|
||||
// for dashboards, folders and library elements - the parent is the parent folder
|
||||
func (s *Service) getParentNames(ctx context.Context, signedInUser *user.SignedInUser, dashboards []dashboards.Dashboard, folders []folder.CreateFolderCommand, libraryElements []libraryElement) (map[cloudmigration.MigrateDataType]map[string](string), error) {
|
||||
func (s *Service) getParentNames(
|
||||
ctx context.Context,
|
||||
signedInUser *user.SignedInUser,
|
||||
dashboards []dashboards.Dashboard,
|
||||
folders []folder.CreateFolderCommand,
|
||||
libraryElements []libraryElement,
|
||||
alertRules []alertRule,
|
||||
) (map[cloudmigration.MigrateDataType]map[string](string), error) {
|
||||
parentNamesByType := make(map[cloudmigration.MigrateDataType]map[string]string)
|
||||
for _, dataType := range currentMigrationTypes {
|
||||
parentNamesByType[dataType] = make(map[string]string)
|
||||
@@ -684,6 +691,11 @@ func (s *Service) getParentNames(ctx context.Context, signedInUser *user.SignedI
|
||||
parentFolderUIDsSet[*libraryElement.FolderUID] = struct{}{}
|
||||
}
|
||||
}
|
||||
for _, alertRule := range alertRules {
|
||||
if alertRule.FolderUID != "" {
|
||||
parentFolderUIDsSet[alertRule.FolderUID] = struct{}{}
|
||||
}
|
||||
}
|
||||
parentFolderUIDsSlice := make([]string, 0, len(parentFolderUIDsSet))
|
||||
for parentFolderUID := range parentFolderUIDsSet {
|
||||
parentFolderUIDsSlice = append(parentFolderUIDsSlice, parentFolderUID)
|
||||
@@ -708,6 +720,11 @@ func (s *Service) getParentNames(ctx context.Context, signedInUser *user.SignedI
|
||||
parentNamesByType[cloudmigration.LibraryElementDataType][libraryElement.UID] = foldersUIDsToFolderName[*libraryElement.FolderUID]
|
||||
}
|
||||
}
|
||||
for _, alertRule := range alertRules {
|
||||
if alertRule.FolderUID != "" {
|
||||
parentNamesByType[cloudmigration.AlertRuleType][alertRule.UID] = foldersUIDsToFolderName[alertRule.FolderUID]
|
||||
}
|
||||
}
|
||||
|
||||
return parentNamesByType, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user