1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Fix injecting before app paths are set up

Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
Sebastian Malton 2022-12-05 13:40:27 -05:00
parent 8ad761b045
commit 7c221112a0

View File

@ -8,50 +8,50 @@ import getClusterByIdInjectable from "../../../common/cluster-store/get-by-id.in
import readFileInjectable from "../../../common/fs/read-file.injectable"; import readFileInjectable from "../../../common/fs/read-file.injectable";
import { loadConfigFromString } from "../../../common/kube-helpers"; import { loadConfigFromString } from "../../../common/kube-helpers";
import loggerInjectable from "../../../common/logger.injectable"; import loggerInjectable from "../../../common/logger.injectable";
import setupAppPathsInjectable from "../../app-paths/setup-app-paths.injectable";
import openDeleteClusterDialogInjectable from "../../components/delete-cluster-dialog/open.injectable"; import openDeleteClusterDialogInjectable from "../../components/delete-cluster-dialog/open.injectable";
import { beforeFrameStartsInjectionToken } from "../tokens"; import { beforeFrameStartsInjectionToken } from "../tokens";
const setupKubernetesClusterContextMenuOpenInjectable = getInjectable({ const setupKubernetesClusterContextMenuOpenInjectable = getInjectable({
id: "setup-kubernetes-cluster-context-menu-open", id: "setup-kubernetes-cluster-context-menu-open",
instantiate: (di) => { instantiate: (di) => ({
const catalogCategoryRegistry = di.inject(catalogCategoryRegistryInjectable); id: "setup-kubernetes-cluster-context-menu-open",
const openDeleteClusterDialog = di.inject(openDeleteClusterDialogInjectable); run: () => {
const readFile = di.inject(readFileInjectable); const catalogCategoryRegistry = di.inject(catalogCategoryRegistryInjectable);
const getClusterById = di.inject(getClusterByIdInjectable); const openDeleteClusterDialog = di.inject(openDeleteClusterDialogInjectable);
const logger = di.inject(loggerInjectable); const readFile = di.inject(readFileInjectable);
const getClusterById = di.inject(getClusterByIdInjectable);
const logger = di.inject(loggerInjectable);
return { catalogCategoryRegistry
id: "setup-kubernetes-cluster-context-menu-open", .getForGroupKind("entity.k8slens.dev", "KubernetesCluster")
run: () => { ?.on("contextMenuOpen", (entity, context) => {
catalogCategoryRegistry if (entity.metadata?.source == "local") {
.getForGroupKind("entity.k8slens.dev", "KubernetesCluster") context.menuItems.push({
?.on("contextMenuOpen", (entity, context) => { title: "Remove",
if (entity.metadata?.source == "local") { icon: "delete",
context.menuItems.push({ onClick: async () => {
title: "Remove", const clusterId = entity.getId();
icon: "delete", const cluster = getClusterById(entity.getId());
onClick: async () => {
const clusterId = entity.getId();
const cluster = getClusterById(entity.getId());
if (!cluster) { if (!cluster) {
return logger.warn("[KUBERNETES-CLUSTER]: cannot delete cluster, does not exist in store", { clusterId }); return logger.warn("[KUBERNETES-CLUSTER]: cannot delete cluster, does not exist in store", { clusterId });
} }
const result = loadConfigFromString(await readFile(cluster.kubeConfigPath)); const result = loadConfigFromString(await readFile(cluster.kubeConfigPath));
if (result.error) { if (result.error) {
logger.error("[KUBERNETES-CLUSTER]: failed to parse kubeconfig file", result.error); logger.error("[KUBERNETES-CLUSTER]: failed to parse kubeconfig file", result.error);
} else { } else {
openDeleteClusterDialog({ cluster, config: result.config }); openDeleteClusterDialog({ cluster, config: result.config });
} }
}, },
}); });
} }
}); });
}, },
}; runAfter: di.inject(setupAppPathsInjectable),
}, }),
injectionToken: beforeFrameStartsInjectionToken, injectionToken: beforeFrameStartsInjectionToken,
}); });