Dashboards: Remove panel plugin provider from migrations (#110477)

This commit is contained in:
Ryan McKinley
2025-09-04 14:17:22 +03:00
committed by GitHub
parent 3d009ff7ed
commit 8052ecb3ba
23 changed files with 143 additions and 518 deletions
@@ -8,10 +8,6 @@ import (
type TestDataSourceProvider struct{}
type TestPanelProvider struct {
customPanels []schemaversion.PanelPluginInfo
}
func (m *TestDataSourceProvider) GetDataSourceInfo(_ context.Context) []schemaversion.DataSourceInfo {
return []schemaversion.DataSourceInfo{
{
@@ -65,54 +61,7 @@ func (m *TestDataSourceProvider) GetDataSourceInfo(_ context.Context) []schemave
}
}
func (m *TestPanelProvider) GetPanels() []schemaversion.PanelPluginInfo {
if len(m.customPanels) > 0 {
return m.customPanels
}
// Default panels
return []schemaversion.PanelPluginInfo{
{
ID: "gauge",
Version: "1.0.0",
},
{
ID: "stat",
Version: "1.0.0",
},
{
ID: "table",
Version: "1.0.0",
},
// Note: grafana-singlestat-panel is not included to match frontend test environment
// This ensures both frontend and backend migrations produce the same result
}
}
func (m *TestPanelProvider) GetPanelPlugin(id string) schemaversion.PanelPluginInfo {
// check if it exists in the list of mocked panels
for _, panel := range m.GetPanels() {
if panel.ID == id {
return panel
}
}
return schemaversion.PanelPluginInfo{}
}
// GetTestDataSourceProvider returns a singleton instance of the test provider
func GetTestDataSourceProvider() *TestDataSourceProvider {
return &TestDataSourceProvider{}
}
// GetTestPanelProvider returns a singleton instance of the test panel provider
func GetTestPanelProvider() *TestPanelProvider {
return &TestPanelProvider{}
}
// GetTestPanelProviderWithCustomPanels returns a test panel provider with custom panels
func GetTestPanelProviderWithCustomPanels(customPanels []schemaversion.PanelPluginInfo) *TestPanelProvider {
return &TestPanelProvider{
customPanels: customPanels,
}
}