diff --git a/public/app/features/dashboard-scene/saving/provisioned/utils/getProvisionedMeta.ts b/public/app/features/dashboard-scene/saving/provisioned/utils/getProvisionedMeta.ts index 2e49fa7920e..d51a215a79a 100644 --- a/public/app/features/dashboard-scene/saving/provisioned/utils/getProvisionedMeta.ts +++ b/public/app/features/dashboard-scene/saving/provisioned/utils/getProvisionedMeta.ts @@ -1,3 +1,4 @@ +import { config } from '@grafana/runtime'; import { folderAPI } from 'app/api/clients/folder'; import { AnnoKeyManagerIdentity, AnnoKeyManagerKind, ManagerKind } from 'app/features/apiserver/types'; import { dispatch } from 'app/store/store'; @@ -6,7 +7,7 @@ import { dispatch } from 'app/store/store'; * Get k8s dashboard metadata based on the selected folder */ export async function getProvisionedMeta(folderUid?: string) { - if (!folderUid) { + if (!folderUid || !config.featureToggles.provisioning) { return {}; } const folderQuery = await dispatch(folderAPI.endpoints.getFolder.initiate({ name: folderUid })).unwrap(); diff --git a/public/app/features/dashboard-scene/scene/DashboardScene.tsx b/public/app/features/dashboard-scene/scene/DashboardScene.tsx index 36a8572a65b..7810e80b1e8 100644 --- a/public/app/features/dashboard-scene/scene/DashboardScene.tsx +++ b/public/app/features/dashboard-scene/scene/DashboardScene.tsx @@ -751,6 +751,9 @@ export class DashboardScene extends SceneObjectBase impleme } isManagedRepository() { + if (!config.featureToggles.provisioning) { + return false; + } return Boolean(this.getManagerKind() === ManagerKind.Repo); } diff --git a/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx b/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx index b224c18fd35..d8671716331 100644 --- a/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx +++ b/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx @@ -79,7 +79,7 @@ export function ToolbarActions({ dashboard }: Props) { const isEditingAndShowingDashboard = isEditing && isShowingDashboard; const dashboardNewLayouts = config.featureToggles.dashboardNewLayouts; const folderRepo = useSelector((state) => selectFolderRepository(state, meta.folderUid)); - const isManaged = Boolean(dashboard.isManaged() || folderRepo); + const isManaged = Boolean(dashboard.isManagedRepository() || folderRepo); if (!isEditingPanel) { // This adds the presence indicators in enterprise @@ -219,7 +219,7 @@ export function ToolbarActions({ dashboard }: Props) { dashboard.onShowAddLibraryPanelDrawer(); DashboardInteractions.toolbarAddButtonClicked({ item: 'add_library_panel' }); }} - disabled={dashboard.isManaged()} + disabled={dashboard.isManagedRepository()} /> - {dashboard.isManaged() ? ( + {dashboard.isManagedRepository() ? ( ) : ( { } }; - const isProvisioned = dashboard instanceof DashboardScene && dashboard.isManaged(); + const isProvisioned = dashboard instanceof DashboardScene && dashboard.isManagedRepository(); return (
diff --git a/public/app/features/provisioning/hooks/useIsProvisionedNG.ts b/public/app/features/provisioning/hooks/useIsProvisionedNG.ts index 9b5ee9737f9..786290cff43 100644 --- a/public/app/features/provisioning/hooks/useIsProvisionedNG.ts +++ b/public/app/features/provisioning/hooks/useIsProvisionedNG.ts @@ -1,3 +1,4 @@ +import { config } from '@grafana/runtime'; import { useGetFrontendSettingsQuery } from 'app/api/clients/provisioning'; import { useUrlParams } from 'app/core/navigation/hooks'; @@ -12,8 +13,11 @@ export function useIsProvisionedNG(dashboard: DashboardScene): boolean { const folderRepository = useGetResourceRepository({ folderUid }); const { data } = useGetFrontendSettingsQuery(); + if (!config.featureToggles.provisioning) { + return false; + } return ( - dashboard.isManaged() || + dashboard.isManagedRepository() || Boolean(folderRepository) || Boolean(data?.items.some((item) => item.target === 'instance')) );