1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/packages/utility-features/kube-api/src/endpoints/replication-controller.api.ts
Jari Kolehmainen 2792985191 chore: kube-api lint fixes
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2023-05-26 14:15:19 -04:00

31 lines
1.1 KiB
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 { ReplicationController } from "@k8slens/kube-object";
import type { Scale } from "@k8slens/kube-object";
export class ReplicationControllerApi extends KubeApi<ReplicationController> {
constructor(deps: KubeApiDependencies, opts?: DerivedKubeApiOptions) {
super(deps, {
...(opts ?? {}),
objectConstructor: ReplicationController,
});
}
protected getScaleApiUrl(params: NamespacedResourceDescriptor) {
return `${this.formatUrlForNotListing(params)}/scale`;
}
getScale(params: NamespacedResourceDescriptor): Promise<Scale> {
return this.request.get(this.getScaleApiUrl(params));
}
scale(params: NamespacedResourceDescriptor, replicas: number): Promise<Scale> {
return this.scaleResource(params, { spec: { replicas } });
}
}