...
1
16
17 package v2beta1
18
19 import (
20 autoscalingv2beta1 "k8s.io/api/autoscaling/v2beta1"
21 "k8s.io/api/core/v1"
22 "k8s.io/apimachinery/pkg/runtime"
23 "k8s.io/kubernetes/pkg/apis/autoscaling"
24 "k8s.io/utils/pointer"
25 )
26
27 func addDefaultingFuncs(scheme *runtime.Scheme) error {
28 return RegisterDefaults(scheme)
29 }
30
31 func SetDefaults_HorizontalPodAutoscaler(obj *autoscalingv2beta1.HorizontalPodAutoscaler) {
32 if obj.Spec.MinReplicas == nil {
33 obj.Spec.MinReplicas = pointer.Int32(1)
34 }
35
36 if len(obj.Spec.Metrics) == 0 {
37 utilizationDefaultVal := int32(autoscaling.DefaultCPUUtilization)
38 obj.Spec.Metrics = []autoscalingv2beta1.MetricSpec{
39 {
40 Type: autoscalingv2beta1.ResourceMetricSourceType,
41 Resource: &autoscalingv2beta1.ResourceMetricSource{
42 Name: v1.ResourceCPU,
43 TargetAverageUtilization: &utilizationDefaultVal,
44 },
45 },
46 }
47 }
48 }
49
View as plain text