Provisioning: Show badge for all manager kinds (#103263)

* Provisioning: Display badge for all manager kinds

* Show the badge for folders

* Fix switch / case syntax to display correct manager kind

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>

---------

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
Co-authored-by: Igor Suleymanov <igor.suleymanov@grafana.com>
pull/104486/head
Alex Khomenko 4 months ago committed by GitHub
parent cbf25e994a
commit 1164230df6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 8
      public/app/core/components/NestedFolderPicker/FolderRepo.tsx
  2. 3
      public/app/features/dashboard-scene/scene/ManagedDashboardNavBarBadge.tsx
  3. 2
      public/app/features/dashboard-scene/scene/NavToolbarActions.tsx

@ -1,6 +1,5 @@
import { Badge } from '@grafana/ui';
import { t } from 'app/core/internationalization';
import { ManagerKind } from 'app/features/apiserver/types';
import { useIsProvisionedInstance } from 'app/features/provisioning/hooks/useIsProvisionedInstance';
import { NestedFolderDTO } from 'app/features/search/service/types';
import { FolderDTO, FolderListItemDTO } from 'app/types';
@ -11,12 +10,7 @@ export interface Props {
export function FolderRepo({ folder }: Props) {
const isProvisionedInstance = useIsProvisionedInstance();
if (
!folder ||
('parentUID' in folder && folder.parentUID) ||
folder.managedBy !== ManagerKind.Repo ||
isProvisionedInstance
) {
if (!folder || ('parentUID' in folder && folder.parentUID) || !folder.managedBy || isProvisionedInstance) {
return null;
}

@ -14,10 +14,13 @@ export default function ManagedDashboardNavBarBadge({ meta }: { meta: DashboardM
switch (kind) {
case ManagerKind.Terraform:
text = 'Terraform';
break;
case ManagerKind.Kubectl:
text = 'Kubectl';
break;
case ManagerKind.Plugin:
text = `Plugin: ${id}`;
break;
}
return <Badge color="darkgrey" icon="exchange-alt" text={text} key="provisioned-dashboard-button-badge" />;
}

@ -135,7 +135,7 @@ export function ToolbarActions({ dashboard }: Props) {
});
}
if (isManaged && meta.canEdit) {
if (dashboard.isManaged() && meta.canEdit) {
toolbarActions.push({
group: 'icon-actions',
condition: true,

Loading…
Cancel
Save