mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
28 lines
875 B
TypeScript
28 lines
875 B
TypeScript
/**
|
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
*/
|
|
|
|
import type { DerivedKubeApiOptions, KubeApiDependencies, NamespacedResourceDescriptor } from "../kube-api";
|
|
import { KubeApi } from "../kube-api";
|
|
import { ReplicaSet } from "@k8slens/kube-object";
|
|
|
|
export class ReplicaSetApi extends KubeApi<ReplicaSet> {
|
|
constructor(deps: KubeApiDependencies, opts?: DerivedKubeApiOptions) {
|
|
super(deps, {
|
|
...(opts ?? {}),
|
|
objectConstructor: ReplicaSet,
|
|
});
|
|
}
|
|
|
|
async getReplicas(params: NamespacedResourceDescriptor): Promise<number> {
|
|
const { status } = await this.getResourceScale(params);
|
|
|
|
return status.replicas;
|
|
}
|
|
|
|
scale(params: NamespacedResourceDescriptor, replicas: number) {
|
|
return this.scaleResource(params, { spec: { replicas } });
|
|
}
|
|
}
|