From 00d9916113e8bf1bab6eb7b9a763f652cefc1ae6 Mon Sep 17 00:00:00 2001 From: Nick Richmond <5732000+NWRichmond@users.noreply.github.com> Date: Wed, 12 Mar 2025 09:23:10 -0400 Subject: [PATCH] ExploreMetrics: Preinstall metrics drilldown app (#100094) * feat: preinstall metrics drilldown app * refactor: simplify * fix: read feature toggles before plugin settings --- pkg/setting/setting.go | 6 +++--- pkg/setting/setting_plugins.go | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkg/setting/setting.go b/pkg/setting/setting.go index c5805d8520d..ded7d7da530 100644 --- a/pkg/setting/setting.go +++ b/pkg/setting/setting.go @@ -1248,12 +1248,12 @@ func (cfg *Cfg) parseINIFile(iniFile *ini.File) error { panelsSection := iniFile.Section("panels") cfg.DisableSanitizeHtml = panelsSection.Key("disable_sanitize_html").MustBool(false) - if err := cfg.readPluginSettings(iniFile); err != nil { + // nolint:staticcheck + if err := cfg.readFeatureToggles(iniFile); err != nil { return err } - // nolint:staticcheck - if err := cfg.readFeatureToggles(iniFile); err != nil { + if err := cfg.readPluginSettings(iniFile); err != nil { return err } diff --git a/pkg/setting/setting_plugins.go b/pkg/setting/setting_plugins.go index 8a459cc7687..960ae2dc920 100644 --- a/pkg/setting/setting_plugins.go +++ b/pkg/setting/setting_plugins.go @@ -58,6 +58,9 @@ func (cfg *Cfg) readPluginSettings(iniFile *ini.File) error { if cfg.IsFeatureToggleEnabled("grafanaAdvisor") { // Use literal string to avoid circular dependency preinstallPlugins["grafana-advisor-app"] = InstallPlugin{"grafana-advisor-app", "", ""} } + if cfg.IsFeatureToggleEnabled("exploreMetricsUseExternalAppPlugin") { // Use literal string to avoid circular dependency + preinstallPlugins["grafana-metricsdrilldown-app"] = InstallPlugin{"grafana-metricsdrilldown-app", "", ""} + } // Add the plugins defined in the configuration for _, plugin := range rawInstallPlugins { parts := strings.Split(plugin, "@")