@kubernetes-models/autoscaler
Version:
Kubernetes Autoscaler models
36 lines (35 loc) • 1.96 kB
TypeScript
import { IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1EvictionRequirement } from "./EvictionRequirement.js";
import { IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1UpdateMode } from "./UpdateMode.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* PodUpdatePolicy describes the rules on how changes are applied to the pods.
*/
export interface IPodUpdatePolicy {
/**
* EvictionRequirements is a list of EvictionRequirements that need to
* evaluate to true in order for a Pod to be evicted. If more than one
* EvictionRequirement is specified, all of them need to be fulfilled to allow eviction.
*/
"evictionRequirements"?: Array<IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1EvictionRequirement>;
/**
* Minimal number of replicas which need to be alive for Updater to attempt
* pod eviction (pending other checks like PDB). Only positive values are
* allowed. Overrides global '--min-replicas' flag.
*/
"minReplicas"?: number;
/**
* Controls when autoscaler applies changes to the pod resources.
* The default is 'Recreate'.
*/
"updateMode"?: IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1UpdateMode;
}
/**
* PodUpdatePolicy describes the rules on how changes are applied to the pods.
*/
export declare class PodUpdatePolicy extends Model<IPodUpdatePolicy> implements IPodUpdatePolicy {
"evictionRequirements"?: Array<IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1EvictionRequirement>;
"minReplicas"?: number;
"updateMode"?: IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1UpdateMode;
constructor(data?: ModelData<IPodUpdatePolicy>);
}
export type { IPodUpdatePolicy as IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1PodUpdatePolicy, PodUpdatePolicy as IoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1PodUpdatePolicy };