Plugins: Remove externalCorePlugins feature toggle (#108386)
remove externalCorePlugins feature toggle
This commit is contained in:
-4
@@ -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;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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
|
||||
|
||||
|
@@ -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"
|
||||
|
||||
@@ -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),
|
||||
|
||||
Reference in New Issue
Block a user