diff --git a/src/common/k8s-api/endpoints/horizontal-pod-autoscaler.api.ts b/src/common/k8s-api/endpoints/horizontal-pod-autoscaler.api.ts index aaaa5b38c2..28d566b8e4 100644 --- a/src/common/k8s-api/endpoints/horizontal-pod-autoscaler.api.ts +++ b/src/common/k8s-api/endpoints/horizontal-pod-autoscaler.api.ts @@ -72,6 +72,27 @@ export type HorizontalPodAutoscalerMetricSpec = | OptionVarient | OptionVarient; +type HorizontalPodAutoscalerBehavior = { + scaleUp?: HPAScalingRules, + scaleDown?: HPAScalingRules, +} + +type HPAScalingRules = { + stabilizationWindowSecond?: number, + selectPolicy?: ScalingPolicySelect, + policies?: HPAScalingPolicy[], +} + +type ScalingPolicySelect = string + +type HPAScalingPolicy = { + type: HPAScalingPolicyType, + value: number, + periodSeconds: number +} + +type HPAScalingPolicyType = string + export interface ContainerResourceMetricStatus { container: string; currentAverageUtilization?: number; @@ -132,6 +153,7 @@ export interface HorizontalPodAutoscalerSpec { minReplicas?: number; maxReplicas: number; metrics?: HorizontalPodAutoscalerMetricSpec[]; + behavior?: HorizontalPodAutoscalerBehavior; } export interface HorizontalPodAutoscalerStatus {