Skip to content

Commit

Permalink
Merge pull request #470 from weaveworks/untyped-fqkinds
Browse files Browse the repository at this point in the history
fqkinds record lookup
  • Loading branch information
Kingdon Barrett committed Sep 6, 2023
2 parents cf0cd29 + 75287f0 commit 573fd62
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 49 deletions.
4 changes: 2 additions & 2 deletions src/cli/kubernetes/kubectlGet.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { HelmRelease } from 'types/flux/helmRelease';
import { HelmRepository } from 'types/flux/helmRepository';
import { Kustomization } from 'types/flux/kustomization';
import { OCIRepository } from 'types/flux/ociRepository';
import { Deployment, FullyQualifiedKinds, Kind, KubernetesObject, Pod } from 'types/kubernetes/kubernetesTypes';
import { Deployment, Kind, KubernetesObject, Pod, qualifyToolkitKind } from 'types/kubernetes/kubernetesTypes';
import { TelemetryError } from 'types/telemetryEventNames';
import { parseJson, parseJsonItems } from 'utils/jsonUtils';
import { invokeKubectlCommand } from './kubernetesToolsKubectl';
Expand Down Expand Up @@ -49,7 +49,7 @@ export async function getResourcesAllNamespaces<T extends KubernetesObject>(kind
return list as T[];
}

let fqKind = FullyQualifiedKinds[kind];
let fqKind = qualifyToolkitKind(kind);

const shellResult = await invokeKubectlCommand(`get ${fqKind} -A -o json`);
if (shellResult?.code !== 0) {
Expand Down
45 changes: 12 additions & 33 deletions src/types/kubernetes/kubernetesTypes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,41 +50,20 @@ export const enum Kind {
GitOpsTemplate = 'GitOpsTemplate',
}

export const enum FullyKind {
Bucket = 'Buckets.source.toolkit.fluxcd.io',
GitRepository = 'GitRepositories.source.toolkit.fluxcd.io',
OCIRepository = 'OCIRepositories.source.toolkit.fluxcd.io',
HelmRepository = 'HelmRepositories.source.toolkit.fluxcd.io',
HelmRelease = 'HelmReleases.helm.toolkit.fluxcd.io',
Kustomization = 'Kustomizations.kustomize.toolkit.fluxcd.io',
GitOpsTemplate = 'GitOpsTemplates.templates.weave.works',
List = '',
Deployment = '',
Node = '',
Pod = '',
Namespace = '',
ConfigMap = '',
}

type KindMapType = {
[id in Kind]: FullyKind;
const fullKinds: Record<string, string> = {
Bucket: 'Buckets.source.toolkit.fluxcd.io',
GitRepository: 'GitRepositories.source.toolkit.fluxcd.io',
OCIRepository: 'OCIRepositories.source.toolkit.fluxcd.io',
HelmRepository: 'HelmRepositories.source.toolkit.fluxcd.io',
HelmRelease: 'HelmReleases.helm.toolkit.fluxcd.io',
Kustomization: 'Kustomizations.kustomize.toolkit.fluxcd.io',
GitOpsTemplate: 'GitOpsTemplates.templates.weave.works',
};

export const FullyQualifiedKinds: KindMapType = {
Bucket: FullyKind.Bucket,
GitRepository: FullyKind.GitRepository,
OCIRepository: FullyKind.OCIRepository,
HelmRepository: FullyKind.HelmRepository,
HelmRelease: FullyKind.HelmRelease,
Kustomization: FullyKind.Kustomization,
GitOpsTemplate: FullyKind.GitOpsTemplate,
List: FullyKind.List,
Deployment: FullyKind.Deployment,
Node: FullyKind.Node,
Pod: FullyKind.Pod,
Namespace: FullyKind.Namespace,
ConfigMap: FullyKind.ConfigMap,
};
export function qualifyToolkitKind(kind: string): string {
return fullKinds[kind] || kind;
}


export const enum SourceKind {
Bucket = 'Bucket',
Expand Down
16 changes: 2 additions & 14 deletions src/ui/treeviews/nodes/treeNode.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { Command, MarkdownString, ThemeColor, ThemeIcon, TreeItem, TreeItemColla

import { CommandId } from 'types/extensionIds';
import { FileTypes } from 'types/fileTypes';
import { Kind, FullyQualifiedKinds, KubernetesObject } from 'types/kubernetes/kubernetesTypes';
import { KubernetesObject, qualifyToolkitKind } from 'types/kubernetes/kubernetesTypes';
import { asAbsolutePath } from 'utils/asAbsolutePath';
import { getResourceUri } from 'utils/getResourceUri';
import { KnownTreeNodeResources, createMarkdownTable } from 'utils/markdownUtils';
Expand Down Expand Up @@ -142,19 +142,7 @@ export class TreeNode extends TreeItem {
}

fullyQualifyKind(): string {
let stringKind = '';
if(this.resource) {
stringKind = this.resource.kind as string;
}
if (stringKind) {
let typedKind: Kind = stringKind as Kind;
let fqKind = FullyQualifiedKinds[typedKind];

if(fqKind !== '') {
stringKind = fqKind as string;
}
}
return stringKind;
return qualifyToolkitKind(this.resource?.kind || '');
}

// @ts-ignore
Expand Down

0 comments on commit 573fd62

Please sign in to comment.