CloudMigrations: Don't migrate dashboards that are soft-deleted (#90454)

* skip dashboards that are soft-deleted while building snapshots

* add unit test
This commit is contained in:
Michael Mandrus
2024-07-16 22:33:11 +03:00
committed by GitHub
parent 8e4ec47114
commit 83b309c724
2 changed files with 41 additions and 1 deletions
@@ -15,6 +15,7 @@ import (
"github.com/grafana/grafana/pkg/services/cloudmigration/slicesext"
"github.com/grafana/grafana/pkg/services/dashboards"
"github.com/grafana/grafana/pkg/services/datasources"
"github.com/grafana/grafana/pkg/services/featuremgmt"
"github.com/grafana/grafana/pkg/services/folder"
"github.com/grafana/grafana/pkg/services/user"
"github.com/grafana/grafana/pkg/util/retryer"
@@ -57,7 +58,13 @@ func (s *Service) getMigrationDataJSON(ctx context.Context, signedInUser *user.S
})
}
softDeleteEnabled := s.features.IsEnabledGlobally(featuremgmt.FlagDashboardRestore)
for _, dashboard := range dashboards {
if softDeleteEnabled && !dashboard.Deleted.IsZero() {
continue
}
dashboard.Data.Del("id")
migrationDataSlice = append(migrationDataSlice, cloudmigration.MigrateDataRequestItem{
Type: cloudmigration.DashboardDataType,