Move catalog to top-level module in extension api (#2527)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen authored and GitHub committed 2021-04-16 12:28:11 +03:00
1 parent fa531067b2
commit 4d8b7b0853
7 files changed
+17 -15

No files matched your search

@@ -1,9 +1,9 @@
import { LensRendererExtension, Store, Interface, Component } from "@k8slens/extensions";
import { LensRendererExtension, Interface, Component, Catalog} from "@k8slens/extensions";
import { MetricsFeature } from "./src/metrics-feature";
export default class ClusterMetricsFeatureExtension extends LensRendererExtension {
onActivate() {
const category = Store.catalogCategories.getForGroupKind<Store.KubernetesClusterCategory>("entity.k8slens.dev", "KubernetesCluster");
const category = Catalog.catalogCategories.getForGroupKind<Catalog.KubernetesClusterCategory>("entity.k8slens.dev", "KubernetesCluster");
if (!category) {
return;
@@ -12,7 +12,7 @@ export default class ClusterMetricsFeatureExtension extends LensRendererExtensio
category.on("contextMenuOpen", this.clusterContextMenuOpen.bind(this));
}
async clusterContextMenuOpen(cluster: Store.KubernetesCluster, ctx: Interface.CatalogEntityContextMenuContext) {
async clusterContextMenuOpen(cluster: Catalog.KubernetesCluster, ctx: Interface.CatalogEntityContextMenuContext) {
if (!cluster.status.active) {
return;
}
@@ -1,4 +1,4 @@
import { ClusterFeature, Store, K8sApi } from "@k8slens/extensions";
import { ClusterFeature, Catalog, K8sApi } from "@k8slens/extensions";
import semver from "semver";
import * as path from "path";
@@ -49,7 +49,7 @@ export class MetricsFeature extends ClusterFeature.Feature {
storageClass: null,
};
async install(cluster: Store.KubernetesCluster): Promise<void> {
async install(cluster: Catalog.KubernetesCluster): Promise<void> {
// Check if there are storageclasses
const storageClassApi = K8sApi.forCluster(cluster, K8sApi.StorageClass);
const scs = await storageClassApi.list();
@@ -62,11 +62,11 @@ export class MetricsFeature extends ClusterFeature.Feature {
super.applyResources(cluster, path.join(__dirname, "../resources/"));
}
async upgrade(cluster: Store.KubernetesCluster): Promise<void> {
async upgrade(cluster: Catalog.KubernetesCluster): Promise<void> {
return this.install(cluster);
}
async updateStatus(cluster: Store.KubernetesCluster): Promise<ClusterFeature.FeatureStatus> {
async updateStatus(cluster: Catalog.KubernetesCluster): Promise<ClusterFeature.FeatureStatus> {
try {
const statefulSet = K8sApi.forCluster(cluster, K8sApi.StatefulSet);
const prometheus = await statefulSet.get({name: "prometheus", namespace: "lens-metrics"});
@@ -87,7 +87,7 @@ export class MetricsFeature extends ClusterFeature.Feature {
return this.status;
}
async uninstall(cluster: Store.KubernetesCluster): Promise<void> {
async uninstall(cluster: Catalog.KubernetesCluster): Promise<void> {
const namespaceApi = K8sApi.forCluster(cluster, K8sApi.Namespace);
const clusterRoleBindingApi = K8sApi.forCluster(cluster, K8sApi.ClusterRoleBinding);
const clusterRoleApi = K8sApi.forCluster(cluster, K8sApi.ClusterRole);
+3 -3
View File
@@ -1,4 +1,4 @@
import { EventBus, Util, Store, App } from "@k8slens/extensions";
import { EventBus, Util, Catalog, App } from "@k8slens/extensions";
import ua from "universal-analytics";
import Analytics from "analytics-node";
import { machineIdSync } from "node-machine-id";
@@ -102,7 +102,7 @@ export class Tracker extends Util.Singleton {
}
protected reportData() {
const clustersList = Store.catalogEntities.getItemsForApiKind<Store.KubernetesCluster>("entity.k8slens.dev/v1alpha1", "KubernetesCluster");
const clustersList = Catalog.catalogEntities.getItemsForApiKind<Catalog.KubernetesCluster>("entity.k8slens.dev/v1alpha1", "KubernetesCluster");
this.event("generic-data", "report", {
appVersion: App.version,
@@ -117,7 +117,7 @@ export class Tracker extends Util.Singleton {
});
}
protected reportClusterData(cluster: Store.KubernetesCluster) {
protected reportClusterData(cluster: Catalog.KubernetesCluster) {
this.event("cluster-data", "report", {
id: cluster.metadata.id,
managed: cluster.metadata.source !== "local",