feat(kubernetes-plugin): add pv and pvc rendering (#31355)
* feat: add persistent volumes rendering Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add pv status Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add volume status and volume type Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add test for pv Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add persistent volume claims Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add persistent volume status pending Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add persistent volume metadata Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add persistent volume claims metadata Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: add persistent volume claims test code Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: changeset Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: remove gcp and gke.io Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: yarn build:api-reports Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: update pv to table drawer like pod Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * feat: update pvc to table drawer like pod Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: remove user event at test code Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: exclude pv,pvc from default objects Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: remove duplication import for pv Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: yarn build:api-reports Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: retrigger required checks Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: retrigger required checks Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: retrigger required checks Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> * chore: retrigger required checks Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com> --------- Signed-off-by: 김병준 <kingbj0429@gmail.com> Signed-off-by: KoB <63000843+kingbj940429@users.noreply.github.com>
This commit is contained in:
@@ -17,6 +17,8 @@ import type { V1Deployment } from '@kubernetes/client-node';
|
||||
import type { V1Ingress } from '@kubernetes/client-node';
|
||||
import type { V1Job } from '@kubernetes/client-node';
|
||||
import type { V1LimitRange } from '@kubernetes/client-node';
|
||||
import type { V1PersistentVolume } from '@kubernetes/client-node';
|
||||
import type { V1PersistentVolumeClaim } from '@kubernetes/client-node';
|
||||
import type { V1Pod } from '@kubernetes/client-node';
|
||||
import type { V1ReplicaSet } from '@kubernetes/client-node';
|
||||
import type { V1ResourceQuota } from '@kubernetes/client-node';
|
||||
@@ -267,7 +269,9 @@ export type FetchResponse =
|
||||
| StatefulSetsFetchResponse
|
||||
| DaemonSetsFetchResponse
|
||||
| PodStatusFetchResponse
|
||||
| SecretsFetchResponse;
|
||||
| SecretsFetchResponse
|
||||
| PersistentVolumeFetchResponse
|
||||
| PersistentVolumeClaimsFetchResponse;
|
||||
|
||||
// @public (undocumented)
|
||||
export interface GroupedResponses extends DeploymentResources {
|
||||
@@ -284,6 +288,10 @@ export interface GroupedResponses extends DeploymentResources {
|
||||
// (undocumented)
|
||||
jobs: V1Job[];
|
||||
// (undocumented)
|
||||
persistentVolumeClaims: V1PersistentVolumeClaim[];
|
||||
// (undocumented)
|
||||
persistentVolumes: V1PersistentVolume[];
|
||||
// (undocumented)
|
||||
secrets: V1Secret[];
|
||||
// (undocumented)
|
||||
services: V1Service[];
|
||||
@@ -385,6 +393,22 @@ export interface ObjectsByEntityResponse {
|
||||
items: ClusterObjects[];
|
||||
}
|
||||
|
||||
// @public (undocumented)
|
||||
export interface PersistentVolumeClaimsFetchResponse {
|
||||
// (undocumented)
|
||||
resources: Array<V1PersistentVolumeClaim>;
|
||||
// (undocumented)
|
||||
type: 'persistentvolumeclaims';
|
||||
}
|
||||
|
||||
// @public (undocumented)
|
||||
export interface PersistentVolumeFetchResponse {
|
||||
// (undocumented)
|
||||
resources: Array<V1PersistentVolume>;
|
||||
// (undocumented)
|
||||
type: 'persistentvolumes';
|
||||
}
|
||||
|
||||
// @public (undocumented)
|
||||
export interface PodFetchResponse {
|
||||
// (undocumented)
|
||||
|
||||
@@ -31,6 +31,8 @@ import type {
|
||||
V1Service,
|
||||
V1StatefulSet,
|
||||
V1Secret,
|
||||
V1PersistentVolume,
|
||||
V1PersistentVolumeClaim,
|
||||
} from '@kubernetes/client-node';
|
||||
import { Entity } from '@backstage/catalog-model';
|
||||
|
||||
@@ -142,7 +144,9 @@ export type FetchResponse =
|
||||
| StatefulSetsFetchResponse
|
||||
| DaemonSetsFetchResponse
|
||||
| PodStatusFetchResponse
|
||||
| SecretsFetchResponse;
|
||||
| SecretsFetchResponse
|
||||
| PersistentVolumeFetchResponse
|
||||
| PersistentVolumeClaimsFetchResponse;
|
||||
|
||||
/** @public */
|
||||
export interface PodFetchResponse {
|
||||
@@ -246,6 +250,18 @@ export interface SecretsFetchResponse {
|
||||
resources: Array<V1Secret>;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export interface PersistentVolumeFetchResponse {
|
||||
type: 'persistentvolumes';
|
||||
resources: Array<V1PersistentVolume>;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export interface PersistentVolumeClaimsFetchResponse {
|
||||
type: 'persistentvolumeclaims';
|
||||
resources: Array<V1PersistentVolumeClaim>;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
export type KubernetesFetchError = StatusError | RawFetchError;
|
||||
|
||||
@@ -311,4 +327,6 @@ export interface GroupedResponses extends DeploymentResources {
|
||||
customResources: any[];
|
||||
statefulsets: V1StatefulSet[];
|
||||
daemonSets: V1DaemonSet[];
|
||||
persistentVolumes: V1PersistentVolume[];
|
||||
persistentVolumeClaims: V1PersistentVolumeClaim[];
|
||||
}
|
||||
|
||||
@@ -64,6 +64,12 @@ export const groupResponses = (
|
||||
case 'daemonsets':
|
||||
prev.daemonSets.push(...next.resources);
|
||||
break;
|
||||
case 'persistentvolumes':
|
||||
prev.persistentVolumes.push(...next.resources);
|
||||
break;
|
||||
case 'persistentvolumeclaims':
|
||||
prev.persistentVolumeClaims.push(...next.resources);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
return prev;
|
||||
@@ -82,6 +88,8 @@ export const groupResponses = (
|
||||
customResources: [],
|
||||
statefulsets: [],
|
||||
daemonSets: [],
|
||||
persistentVolumes: [],
|
||||
persistentVolumeClaims: [],
|
||||
} as GroupedResponses,
|
||||
);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user