Plugins: Remove externalCorePlugins feature toggle (#108386)

remove externalCorePlugins feature toggle
This commit is contained in:
Will Browne
2025-07-21 13:55:30 +01:00
committed by GitHub
parent 5ec3a2b758
commit cd87bbbdea
12 changed files with 2 additions and 34 deletions
-4
View File
@@ -126,13 +126,9 @@ This feature is experimental and requires Grafana version 10.3.0 or later.
If you want to use a version of TestData different from the one shipped with Grafana, follow these steps:
1. Enable the [feature toggle](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/feature-toggles/) `externalCorePlugins`.
1. Set the configuration field `as_external` for the plugin to `true`. An example configuration would be:
```ini
[feature_toggles]
externalCorePlugins = true
[plugin.grafana-testdata-datasource]
as_external = true
```
@@ -2655,8 +2655,6 @@ If `true`, propagate the tracing context to the plugin backend and enable tracin
Load an external version of a core plugin if it has been installed.
Experimental. Requires the feature toggle `externalCorePlugins` to be enabled.
<hr>
### `[plugin.grafana-image-renderer]`
@@ -42,7 +42,6 @@ Most [generally available](https://grafana.com/docs/release-life-cycle/#general-
| `transformationsRedesign` | Enables the transformations redesign | Yes |
| `awsAsyncQueryCaching` | Enable caching for async queries for Redshift and Athena. Requires that the datasource has caching and async query support enabled | Yes |
| `dashgpt` | Enable AI powered features in dashboards | Yes |
| `externalCorePlugins` | Allow core plugins to be loaded as external | Yes |
| `panelMonitoring` | Enables panel monitoring through logs and measurements | Yes |
| `formatString` | Enable format string transformer | Yes |
| `kubernetesClientDashboardsFolders` | Route the folder and dashboard service requests to k8s | Yes |
@@ -257,11 +257,6 @@ export interface FeatureToggles {
*/
lokiRunQueriesInParallel?: boolean;
/**
* Allow core plugins to be loaded as external
* @default true
*/
externalCorePlugins?: boolean;
/**
* Automatic service account and token setup for plugins
*/
externalServiceAccounts?: boolean;
-1
View File
@@ -30,7 +30,6 @@ type PluginManagementCfg struct {
// Features contains the feature toggles used for the plugin management system.
type Features struct {
ExternalCorePluginsEnabled bool
SkipHostEnvVarsEnabled bool
SriChecksEnabled bool
PluginsCDNSyncLoaderEnabled bool
-7
View File
@@ -420,13 +420,6 @@ var (
FrontendOnly: false,
Owner: grafanaObservabilityLogsSquad,
},
{
Name: "externalCorePlugins",
Description: "Allow core plugins to be loaded as external",
Stage: FeatureStageGeneralAvailability,
Owner: grafanaPluginsPlatformSquad,
Expression: "true", // enabled by default
},
{
Name: "externalServiceAccounts",
Description: "Automatic service account and token setup for plugins",
-1
View File
@@ -54,7 +54,6 @@ aiGeneratedDashboardChanges,experimental,@grafana/dashboards-squad,false,false,t
reportingRetries,preview,@grafana/grafana-operator-experience-squad,false,true,false
sseGroupByDatasource,experimental,@grafana/observability-metrics,false,false,false
lokiRunQueriesInParallel,privatePreview,@grafana/observability-logs,false,false,false
externalCorePlugins,GA,@grafana/plugins-platform-backend,false,false,false
externalServiceAccounts,preview,@grafana/identity-access-team,false,false,false
panelMonitoring,GA,@grafana/dataviz-squad,false,false,true
enableNativeHTTPHistogram,experimental,@grafana/grafana-backend-services-squad,false,true,false
1 Name Stage Owner requiresDevMode RequiresRestart FrontendOnly
54 reportingRetries preview @grafana/grafana-operator-experience-squad false true false
55 sseGroupByDatasource experimental @grafana/observability-metrics false false false
56 lokiRunQueriesInParallel privatePreview @grafana/observability-logs false false false
externalCorePlugins GA @grafana/plugins-platform-backend false false false
57 externalServiceAccounts preview @grafana/identity-access-team false false false
58 panelMonitoring GA @grafana/dataviz-squad false false true
59 enableNativeHTTPHistogram experimental @grafana/grafana-backend-services-squad false true false
-4
View File
@@ -227,10 +227,6 @@ const (
// Enables running Loki queries in parallel
FlagLokiRunQueriesInParallel = "lokiRunQueriesInParallel"
// FlagExternalCorePlugins
// Allow core plugins to be loaded as external
FlagExternalCorePlugins = "externalCorePlugins"
// FlagExternalServiceAccounts
// Automatic service account and token setup for plugins
FlagExternalServiceAccounts = "externalServiceAccounts"
+2 -1
View File
@@ -1250,7 +1250,8 @@
"metadata": {
"name": "externalCorePlugins",
"resourceVersion": "1750434297879",
"creationTimestamp": "2023-09-22T08:50:13Z"
"creationTimestamp": "2023-09-22T08:50:13Z",
"deletionTimestamp": "2025-07-21T09:49:02Z"
},
"spec": {
"description": "Allow core plugins to be loaded as external",
@@ -223,10 +223,6 @@ func NewAsExternalStep(cfg *config.PluginManagementCfg) *AsExternal {
// Filter will filter out any plugins that are marked to be disabled.
func (c *AsExternal) Filter(cl plugins.Class, bundles []*plugins.FoundBundle) ([]*plugins.FoundBundle, error) {
if !c.cfg.Features.ExternalCorePluginsEnabled {
return bundles, nil
}
if cl == plugins.ClassCore {
res := []*plugins.FoundBundle{}
for _, bundle := range bundles {
@@ -68,9 +68,6 @@ func TestAsExternal(t *testing.T) {
t.Run("should skip a core plugin", func(t *testing.T) {
cfg := &config.PluginManagementCfg{
Features: config.Features{
ExternalCorePluginsEnabled: true,
},
PluginSettings: setting.PluginSettings{
"plugin1": map[string]string{
"as_external": "true",
@@ -30,7 +30,6 @@ func ProvidePluginManagementConfig(cfg *setting.Cfg, settingProvider setting.Pro
cfg.PluginsCDNURLTemplate,
cfg.AppURL,
config.Features{
ExternalCorePluginsEnabled: features.IsEnabledGlobally(featuremgmt.FlagExternalCorePlugins),
SkipHostEnvVarsEnabled: features.IsEnabledGlobally(featuremgmt.FlagPluginsSkipHostEnvVars),
SriChecksEnabled: features.IsEnabledGlobally(featuremgmt.FlagPluginsSriChecks),
PluginsCDNSyncLoaderEnabled: features.IsEnabledGlobally(featuremgmt.FlagPluginsCDNSyncLoader),