diff --git a/docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md b/docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md index 40481d03655..b6cb3ee1031 100644 --- a/docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md +++ b/docs/sources/setup-grafana/configure-grafana/feature-toggles/index.md @@ -131,7 +131,6 @@ Experimental features might be changed or removed without prior notice. | `featureToggleAdminPage` | Enable admin page for managing feature toggles from the Grafana front-end | | `permissionsFilterRemoveSubquery` | Alternative permission filter implementation that does not use subqueries for fetching the dashboard folder | | `influxdbSqlSupport` | Enable InfluxDB SQL query language support with new querying UI | -| `noBasicRole` | Enables a new role that has no permissions by default | | `angularDeprecationUI` | Display new Angular deprecation-related UI features | | `dashgpt` | Enable AI powered features in dashboards | | `sseGroupByDatasource` | Send query to the same datasource in a single request when using server side expressions | diff --git a/packages/grafana-data/src/types/featureToggles.gen.ts b/packages/grafana-data/src/types/featureToggles.gen.ts index ef71b57f296..345e9fbd3fd 100644 --- a/packages/grafana-data/src/types/featureToggles.gen.ts +++ b/packages/grafana-data/src/types/featureToggles.gen.ts @@ -117,7 +117,6 @@ export interface FeatureToggles { prometheusConfigOverhaulAuth?: boolean; configurableSchedulerTick?: boolean; influxdbSqlSupport?: boolean; - noBasicRole?: boolean; alertingNoDataErrorExecution?: boolean; angularDeprecationUI?: boolean; dashgpt?: boolean; diff --git a/pkg/services/featuremgmt/registry.go b/pkg/services/featuremgmt/registry.go index 6b0b64c29dc..1d0fdb4db77 100644 --- a/pkg/services/featuremgmt/registry.go +++ b/pkg/services/featuremgmt/registry.go @@ -687,14 +687,6 @@ var ( Owner: grafanaObservabilityMetricsSquad, RequiresRestart: false, }, - { - Name: "noBasicRole", - Description: "Enables a new role that has no permissions by default", - Stage: FeatureStageExperimental, - FrontendOnly: true, - Owner: grafanaAuthnzSquad, - RequiresRestart: true, - }, { Name: "alertingNoDataErrorExecution", Description: "Changes how Alerting state manager handles execution of NoData/Error", diff --git a/pkg/services/featuremgmt/toggles_gen.csv b/pkg/services/featuremgmt/toggles_gen.csv index 376a632aa10..1c075935770 100644 --- a/pkg/services/featuremgmt/toggles_gen.csv +++ b/pkg/services/featuremgmt/toggles_gen.csv @@ -98,7 +98,6 @@ permissionsFilterRemoveSubquery,experimental,@grafana/backend-platform,false,fal prometheusConfigOverhaulAuth,GA,@grafana/observability-metrics,false,false,false,false configurableSchedulerTick,experimental,@grafana/alerting-squad,false,false,true,false influxdbSqlSupport,experimental,@grafana/observability-metrics,false,false,false,false -noBasicRole,experimental,@grafana/grafana-authnz-team,false,false,true,true alertingNoDataErrorExecution,privatePreview,@grafana/alerting-squad,false,false,true,false angularDeprecationUI,experimental,@grafana/plugins-platform-backend,false,false,false,true dashgpt,experimental,@grafana/dashboards-squad,false,false,false,true diff --git a/pkg/services/featuremgmt/toggles_gen.go b/pkg/services/featuremgmt/toggles_gen.go index 8efbf55fb58..3240b125833 100644 --- a/pkg/services/featuremgmt/toggles_gen.go +++ b/pkg/services/featuremgmt/toggles_gen.go @@ -403,10 +403,6 @@ const ( // Enable InfluxDB SQL query language support with new querying UI FlagInfluxdbSqlSupport = "influxdbSqlSupport" - // FlagNoBasicRole - // Enables a new role that has no permissions by default - FlagNoBasicRole = "noBasicRole" - // FlagAlertingNoDataErrorExecution // Changes how Alerting state manager handles execution of NoData/Error FlagAlertingNoDataErrorExecution = "alertingNoDataErrorExecution" diff --git a/public/app/core/components/RolePicker/BuiltinRoleSelector.tsx b/public/app/core/components/RolePicker/BuiltinRoleSelector.tsx index 4b2739b6b17..075c7491fd7 100644 --- a/public/app/core/components/RolePicker/BuiltinRoleSelector.tsx +++ b/public/app/core/components/RolePicker/BuiltinRoleSelector.tsx @@ -1,23 +1,15 @@ import React from 'react'; import { SelectableValue } from '@grafana/data'; -import { config } from '@grafana/runtime'; import { Icon, RadioButtonList, Tooltip, useStyles2, useTheme2, PopoverContent } from '@grafana/ui'; -import { contextSrv } from 'app/core/core'; import { OrgRole } from 'app/types'; import { getStyles } from './styles'; -const noBasicRoleFlag = contextSrv.licensedAccessControlEnabled(); - -const noBasicRole = config.featureToggles.noBasicRole && noBasicRoleFlag; - -const BasicRoleOption: Array> = Object.values(OrgRole) - .filter((r) => noBasicRole || r !== OrgRole.None) - .map((r) => ({ - label: r === OrgRole.None ? 'No basic role' : r, - value: r, - })); +const BasicRoleOption: Array> = Object.values(OrgRole).map((r) => ({ + label: r === OrgRole.None ? 'No basic role' : r, + value: r, +})); interface Props { value?: OrgRole; diff --git a/public/app/core/components/RolePicker/RolePickerMenu.tsx b/public/app/core/components/RolePicker/RolePickerMenu.tsx index 54733ec4a29..1da2a057b52 100644 --- a/public/app/core/components/RolePicker/RolePickerMenu.tsx +++ b/public/app/core/components/RolePicker/RolePickerMenu.tsx @@ -1,10 +1,8 @@ import { css, cx } from '@emotion/css'; import React, { useEffect, useRef, useState } from 'react'; -import { config } from '@grafana/runtime'; import { Button, CustomScrollbar, HorizontalGroup, TextLink, useStyles2, useTheme2 } from '@grafana/ui'; import { getSelectStyles } from '@grafana/ui/src/components/Select/getSelectStyles'; -import { contextSrv } from 'app/core/core'; import { OrgRole, Role } from 'app/types'; import { BuiltinRoleSelector } from './BuiltinRoleSelector'; @@ -36,8 +34,7 @@ const fixedRoleGroupNames: Record = { current: 'Current org', }; -const noBasicRoleFlag = contextSrv.licensedAccessControlEnabled() && config.featureToggles.noBasicRole; -const tooltipMessage = noBasicRoleFlag ? ( +const tooltipMessage = ( <> You can now select the "No basic role" option and add permissions to your custom needs. You can find more information in  @@ -50,8 +47,6 @@ const tooltipMessage = noBasicRoleFlag ? ( . -) : ( - '' ); interface RolePickerMenuProps { diff --git a/public/app/features/org/UserInviteForm.tsx b/public/app/features/org/UserInviteForm.tsx index 86535bf40ba..6332c41e180 100644 --- a/public/app/features/org/UserInviteForm.tsx +++ b/public/app/features/org/UserInviteForm.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { locationUtil, SelectableValue } from '@grafana/data'; import { Stack } from '@grafana/experimental'; -import { config, locationService } from '@grafana/runtime'; +import { locationService } from '@grafana/runtime'; import { Button, LinkButton, @@ -19,13 +19,11 @@ import { Label, } from '@grafana/ui'; import { getConfig } from 'app/core/config'; -import { contextSrv } from 'app/core/core'; import { OrgRole, useDispatch } from 'app/types'; import { addInvitee } from '../invites/state/actions'; -const noBasicRoleFlag = contextSrv.licensedAccessControlEnabled() && config.featureToggles.noBasicRole; -const tooltipMessage = noBasicRoleFlag ? ( +const tooltipMessage = ( <> You can now select the "No basic role" option and add permissions to your custom needs. You can find more information in  @@ -38,16 +36,12 @@ const tooltipMessage = noBasicRoleFlag ? ( . -) : ( - '' ); -const roles: Array> = Object.values(OrgRole) - .filter((r) => noBasicRoleFlag || r !== OrgRole.None) - .map((r) => ({ - label: r === OrgRole.None ? 'No basic role' : r, - value: r, - })); +const roles: Array> = Object.values(OrgRole).map((r) => ({ + label: r === OrgRole.None ? 'No basic role' : r, + value: r, +})); export interface FormModel { role: OrgRole;