Skip to content

Commit 6cb5b5a

Browse files
authored
Merge pull request #6518 from azylinski/oss-mv-estimatorBuilder-from-ctx-to-orchestrator-init
Move estimatorBuilder from AutoscalingContext to Orchestrator Init
2 parents 5e9330c + 399b16e commit 6cb5b5a

File tree

10 files changed

+53
-35
lines changed

10 files changed

+53
-35
lines changed

cluster-autoscaler/context/autoscaling_context.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ import (
2424
"k8s.io/autoscaler/cluster-autoscaler/core/scaledown"
2525
"k8s.io/autoscaler/cluster-autoscaler/core/scaledown/pdb"
2626
"k8s.io/autoscaler/cluster-autoscaler/debuggingsnapshot"
27-
"k8s.io/autoscaler/cluster-autoscaler/estimator"
2827
"k8s.io/autoscaler/cluster-autoscaler/expander"
2928
processor_callbacks "k8s.io/autoscaler/cluster-autoscaler/processors/callbacks"
3029
"k8s.io/autoscaler/cluster-autoscaler/simulator/clustersnapshot"
@@ -52,8 +51,6 @@ type AutoscalingContext struct {
5251
ClusterSnapshot clustersnapshot.ClusterSnapshot
5352
// ExpanderStrategy is the strategy used to choose which node group to expand when scaling up
5453
ExpanderStrategy expander.Strategy
55-
// EstimatorBuilder is the builder function for node count estimator to be used.
56-
EstimatorBuilder estimator.EstimatorBuilder
5754
// ProcessorCallbacks is interface defining extra callback methods which can be called by processors used in extension points.
5855
ProcessorCallbacks processor_callbacks.ProcessorCallbacks
5956
// DebuggingSnapshotter is the interface for capturing the debugging snapshot
@@ -106,7 +103,6 @@ func NewAutoscalingContext(
106103
autoscalingKubeClients *AutoscalingKubeClients,
107104
cloudProvider cloudprovider.CloudProvider,
108105
expanderStrategy expander.Strategy,
109-
estimatorBuilder estimator.EstimatorBuilder,
110106
processorCallbacks processor_callbacks.ProcessorCallbacks,
111107
debuggingSnapshotter debuggingsnapshot.DebuggingSnapshotter,
112108
remainingPdbTracker pdb.RemainingPdbTracker,
@@ -119,7 +115,6 @@ func NewAutoscalingContext(
119115
PredicateChecker: predicateChecker,
120116
ClusterSnapshot: clusterSnapshot,
121117
ExpanderStrategy: expanderStrategy,
122-
EstimatorBuilder: estimatorBuilder,
123118
ProcessorCallbacks: processorCallbacks,
124119
DebuggingSnapshotter: debuggingSnapshotter,
125120
RemainingPdbTracker: remainingPdbTracker,

cluster-autoscaler/core/scaleup/orchestrator/orchestrator.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ type ScaleUpOrchestrator struct {
5151
resourceManager *resource.Manager
5252
clusterStateRegistry *clusterstate.ClusterStateRegistry
5353
scaleUpExecutor *scaleUpExecutor
54+
estimatorBuilder estimator.EstimatorBuilder
5455
taintConfig taints.TaintConfig
5556
initialized bool
5657
}
@@ -67,11 +68,13 @@ func (o *ScaleUpOrchestrator) Initialize(
6768
autoscalingContext *context.AutoscalingContext,
6869
processors *ca_processors.AutoscalingProcessors,
6970
clusterStateRegistry *clusterstate.ClusterStateRegistry,
71+
estimatorBuilder estimator.EstimatorBuilder,
7072
taintConfig taints.TaintConfig,
7173
) {
7274
o.autoscalingContext = autoscalingContext
7375
o.processors = processors
7476
o.clusterStateRegistry = clusterStateRegistry
77+
o.estimatorBuilder = estimatorBuilder
7578
o.taintConfig = taintConfig
7679
o.resourceManager = resource.NewManager(processors.CustomResourcesProcessor)
7780
o.scaleUpExecutor = newScaleUpExecutor(autoscalingContext, processors.ScaleStateNotifier)
@@ -490,7 +493,7 @@ func (o *ScaleUpOrchestrator) ComputeExpansionOption(
490493
option.SimilarNodeGroups = o.ComputeSimilarNodeGroups(nodeGroup, nodeInfos, schedulablePods, now)
491494

492495
estimateStart := time.Now()
493-
expansionEstimator := o.autoscalingContext.EstimatorBuilder(
496+
expansionEstimator := o.estimatorBuilder(
494497
o.autoscalingContext.PredicateChecker,
495498
o.autoscalingContext.ClusterSnapshot,
496499
estimator.NewEstimationContext(o.autoscalingContext.MaxNodesTotal, option.SimilarNodeGroups, currentNodeCount),

cluster-autoscaler/core/scaleup/orchestrator/orchestrator_test.go

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -975,7 +975,7 @@ func runSimpleScaleUpTest(t *testing.T, config *ScaleUpTestConfig) *ScaleUpTestR
975975
processors := NewTestProcessors(&context)
976976
processors.ScaleStateNotifier.Register(clusterState)
977977
orchestrator := New()
978-
orchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
978+
orchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
979979
expander := NewMockRepotingStrategy(t, config.ExpansionOptionToChoose)
980980
context.ExpanderStrategy = expander
981981

@@ -1078,7 +1078,7 @@ func TestScaleUpUnhealthy(t *testing.T) {
10781078

10791079
processors := NewTestProcessors(&context)
10801080
suOrchestrator := New()
1081-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1081+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
10821082
scaleUpStatus, err := suOrchestrator.ScaleUp([]*apiv1.Pod{p3}, nodes, []*appsv1.DaemonSet{}, nodeInfos)
10831083

10841084
assert.NoError(t, err)
@@ -1128,7 +1128,7 @@ func TestBinpackingLimiter(t *testing.T) {
11281128
processors.BinpackingLimiter = &MockBinpackingLimiter{}
11291129

11301130
suOrchestrator := New()
1131-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1131+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
11321132

11331133
expander := NewMockRepotingStrategy(t, nil)
11341134
context.ExpanderStrategy = expander
@@ -1178,7 +1178,7 @@ func TestScaleUpNoHelp(t *testing.T) {
11781178

11791179
processors := NewTestProcessors(&context)
11801180
suOrchestrator := New()
1181-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1181+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
11821182
scaleUpStatus, err := suOrchestrator.ScaleUp([]*apiv1.Pod{p3}, nodes, []*appsv1.DaemonSet{}, nodeInfos)
11831183
processors.ScaleUpStatusProcessor.Process(&context, scaleUpStatus)
11841184

@@ -1330,7 +1330,7 @@ func TestComputeSimilarNodeGroups(t *testing.T) {
13301330
assert.NoError(t, clusterState.UpdateNodes(nodes, nodeInfos, time.Now()))
13311331

13321332
suOrchestrator := &ScaleUpOrchestrator{}
1333-
suOrchestrator.Initialize(&ctx, &processors.AutoscalingProcessors{NodeGroupSetProcessor: nodeGroupSetProcessor}, clusterState, taints.TaintConfig{})
1333+
suOrchestrator.Initialize(&ctx, &processors.AutoscalingProcessors{NodeGroupSetProcessor: nodeGroupSetProcessor}, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
13341334
similarNodeGroups := suOrchestrator.ComputeSimilarNodeGroups(provider.GetNodeGroup(tc.nodeGroup), nodeInfos, tc.schedulablePods, now)
13351335

13361336
var gotSimilarNodeGroups []string
@@ -1400,7 +1400,7 @@ func TestScaleUpBalanceGroups(t *testing.T) {
14001400

14011401
processors := NewTestProcessors(&context)
14021402
suOrchestrator := New()
1403-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1403+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
14041404
scaleUpStatus, typedErr := suOrchestrator.ScaleUp(pods, nodes, []*appsv1.DaemonSet{}, nodeInfos)
14051405

14061406
assert.NoError(t, typedErr)
@@ -1462,7 +1462,7 @@ func TestScaleUpAutoprovisionedNodeGroup(t *testing.T) {
14621462
nodeInfos, _ := nodeinfosprovider.NewDefaultTemplateNodeInfoProvider(nil, false).Process(&context, nodes, []*appsv1.DaemonSet{}, taints.TaintConfig{}, time.Now())
14631463

14641464
suOrchestrator := New()
1465-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1465+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
14661466
scaleUpStatus, err := suOrchestrator.ScaleUp([]*apiv1.Pod{p1}, nodes, []*appsv1.DaemonSet{}, nodeInfos)
14671467
assert.NoError(t, err)
14681468
assert.True(t, scaleUpStatus.WasSuccessful())
@@ -1517,7 +1517,7 @@ func TestScaleUpBalanceAutoprovisionedNodeGroups(t *testing.T) {
15171517
nodeInfos, _ := nodeinfosprovider.NewDefaultTemplateNodeInfoProvider(nil, false).Process(&context, nodes, []*appsv1.DaemonSet{}, taints.TaintConfig{}, time.Now())
15181518

15191519
suOrchestrator := New()
1520-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1520+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
15211521
scaleUpStatus, err := suOrchestrator.ScaleUp([]*apiv1.Pod{p1, p2, p3}, nodes, []*appsv1.DaemonSet{}, nodeInfos)
15221522
assert.NoError(t, err)
15231523
assert.True(t, scaleUpStatus.WasSuccessful())
@@ -1572,7 +1572,7 @@ func TestScaleUpToMeetNodeGroupMinSize(t *testing.T) {
15721572
clusterState.UpdateNodes(nodes, nodeInfos, time.Now())
15731573

15741574
suOrchestrator := New()
1575-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1575+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
15761576
scaleUpStatus, err := suOrchestrator.ScaleUpToNodeGroupMinSize(nodes, nodeInfos)
15771577
assert.NoError(t, err)
15781578
assert.True(t, scaleUpStatus.WasSuccessful())
@@ -1685,3 +1685,14 @@ func simplifyScaleUpStatus(scaleUpStatus *status.ScaleUpStatus) ScaleUpStatusInf
16851685
PodsAwaitEvaluation: ExtractPodNames(scaleUpStatus.PodsAwaitEvaluation),
16861686
}
16871687
}
1688+
1689+
func newEstimatorBuilder() estimator.EstimatorBuilder {
1690+
estimatorBuilder, _ := estimator.NewEstimatorBuilder(
1691+
estimator.BinpackingEstimatorName,
1692+
estimator.NewThresholdBasedEstimationLimiter(nil),
1693+
estimator.NewDecreasingPodOrderer(),
1694+
nil,
1695+
)
1696+
1697+
return estimatorBuilder
1698+
}

cluster-autoscaler/core/scaleup/orchestrator/wrapper_orchestrator.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
"k8s.io/autoscaler/cluster-autoscaler/clusterstate"
2525
"k8s.io/autoscaler/cluster-autoscaler/context"
2626
"k8s.io/autoscaler/cluster-autoscaler/core/scaleup"
27+
"k8s.io/autoscaler/cluster-autoscaler/estimator"
2728
ca_processors "k8s.io/autoscaler/cluster-autoscaler/processors"
2829
"k8s.io/autoscaler/cluster-autoscaler/processors/provreq"
2930
"k8s.io/autoscaler/cluster-autoscaler/processors/status"
@@ -61,10 +62,11 @@ func (o *WrapperOrchestrator) Initialize(
6162
autoscalingContext *context.AutoscalingContext,
6263
processors *ca_processors.AutoscalingProcessors,
6364
clusterStateRegistry *clusterstate.ClusterStateRegistry,
65+
estimatorBuilder estimator.EstimatorBuilder,
6466
taintConfig taints.TaintConfig,
6567
) {
66-
o.scaleUpOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, taintConfig)
67-
o.provReqOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, taintConfig)
68+
o.scaleUpOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, estimatorBuilder, taintConfig)
69+
o.provReqOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, estimatorBuilder, taintConfig)
6870
}
6971

7072
// ScaleUp run scaleUp function for regular pods of pods from ProvisioningRequest.

cluster-autoscaler/core/scaleup/orchestrator/wrapper_orchestrator_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
apiv1 "k8s.io/api/core/v1"
2525
"k8s.io/autoscaler/cluster-autoscaler/clusterstate"
2626
"k8s.io/autoscaler/cluster-autoscaler/context"
27+
"k8s.io/autoscaler/cluster-autoscaler/estimator"
2728
ca_processors "k8s.io/autoscaler/cluster-autoscaler/processors"
2829
"k8s.io/autoscaler/cluster-autoscaler/processors/provreq"
2930
"k8s.io/autoscaler/cluster-autoscaler/processors/status"
@@ -78,6 +79,7 @@ func (f *fakeScaleUp) Initialize(
7879
autoscalingContext *context.AutoscalingContext,
7980
processors *ca_processors.AutoscalingProcessors,
8081
clusterStateRegistry *clusterstate.ClusterStateRegistry,
82+
estimatorBuilder estimator.EstimatorBuilder,
8183
taintConfig taints.TaintConfig,
8284
) {
8385
}

cluster-autoscaler/core/scaleup/scaleup.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
apiv1 "k8s.io/api/core/v1"
2222
"k8s.io/autoscaler/cluster-autoscaler/clusterstate"
2323
"k8s.io/autoscaler/cluster-autoscaler/context"
24+
"k8s.io/autoscaler/cluster-autoscaler/estimator"
2425
ca_processors "k8s.io/autoscaler/cluster-autoscaler/processors"
2526
"k8s.io/autoscaler/cluster-autoscaler/processors/status"
2627
"k8s.io/autoscaler/cluster-autoscaler/utils/errors"
@@ -36,6 +37,7 @@ type Orchestrator interface {
3637
autoscalingContext *context.AutoscalingContext,
3738
processors *ca_processors.AutoscalingProcessors,
3839
clusterStateRegistry *clusterstate.ClusterStateRegistry,
40+
estimatorBuilder estimator.EstimatorBuilder,
3941
taintConfig taints.TaintConfig,
4042
)
4143
// ScaleUp tries to scale the cluster up. Returns appropriate status or error if

cluster-autoscaler/core/static_autoscaler.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,6 @@ func NewStaticAutoscaler(
159159
autoscalingKubeClients,
160160
cloudProvider,
161161
expanderStrategy,
162-
estimatorBuilder,
163162
processorCallbacks,
164163
debuggingSnapshotter,
165164
remainingPdbTracker,
@@ -192,7 +191,7 @@ func NewStaticAutoscaler(
192191
if scaleUpOrchestrator == nil {
193192
scaleUpOrchestrator = orchestrator.New()
194193
}
195-
scaleUpOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, taintConfig)
194+
scaleUpOrchestrator.Initialize(autoscalingContext, processors, clusterStateRegistry, estimatorBuilder, taintConfig)
196195

197196
// Set the initial scale times to be less than the start time so as to
198197
// not start in cooldown mode.

cluster-autoscaler/core/static_autoscaler_test.go

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,8 @@ func setupAutoscaler(config *autoscalerSetupConfig) (*StaticAutoscaler, error) {
271271

272272
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
273273
suOrchestrator := orchestrator.New()
274-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
274+
275+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
275276

276277
autoscaler := &StaticAutoscaler{
277278
AutoscalingContext: &context,
@@ -362,7 +363,7 @@ func TestStaticAutoscalerRunOnce(t *testing.T) {
362363
clusterState := clusterstate.NewClusterStateRegistry(provider, clusterStateConfig, context.LogRecorder, NewBackoff(), nodegroupconfig.NewDefaultNodeGroupConfigProcessor(options.NodeGroupDefaults))
363364
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
364365
suOrchestrator := orchestrator.New()
365-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
366+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
366367

367368
autoscaler := &StaticAutoscaler{
368369
AutoscalingContext: &context,
@@ -561,7 +562,7 @@ func TestStaticAutoscalerRunOnceWithScaleDownDelayPerNG(t *testing.T) {
561562

562563
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
563564
suOrchestrator := orchestrator.New()
564-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
565+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
565566

566567
autoscaler := &StaticAutoscaler{
567568
AutoscalingContext: &context,
@@ -786,7 +787,7 @@ func TestStaticAutoscalerRunOnceWithAutoprovisionedEnabled(t *testing.T) {
786787

787788
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
788789
suOrchestrator := orchestrator.New()
789-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
790+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
790791

791792
autoscaler := &StaticAutoscaler{
792793
AutoscalingContext: &context,
@@ -936,7 +937,7 @@ func TestStaticAutoscalerRunOnceWithALongUnregisteredNode(t *testing.T) {
936937

937938
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
938939
suOrchestrator := orchestrator.New()
939-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
940+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
940941

941942
autoscaler := &StaticAutoscaler{
942943
AutoscalingContext: &context,
@@ -1084,7 +1085,7 @@ func TestStaticAutoscalerRunOncePodsWithPriorities(t *testing.T) {
10841085
clusterState := clusterstate.NewClusterStateRegistry(provider, clusterStateConfig, context.LogRecorder, NewBackoff(), nodegroupconfig.NewDefaultNodeGroupConfigProcessor(options.NodeGroupDefaults))
10851086
sdPlanner, sdActuator := newScaleDownPlannerAndActuator(&context, processors, clusterState)
10861087
suOrchestrator := orchestrator.New()
1087-
suOrchestrator.Initialize(&context, processors, clusterState, taints.TaintConfig{})
1088+
suOrchestrator.Initialize(&context, processors, clusterState, newEstimatorBuilder(), taints.TaintConfig{})
10881089

10891090
autoscaler := &StaticAutoscaler{
10901091
AutoscalingContext: &context,
@@ -2409,3 +2410,14 @@ func newScaleDownPlannerAndActuator(ctx *context.AutoscalingContext, p *ca_proce
24092410
wrapper := legacy.NewScaleDownWrapper(sd, actuator)
24102411
return wrapper, wrapper
24112412
}
2413+
2414+
func newEstimatorBuilder() estimator.EstimatorBuilder {
2415+
estimatorBuilder, _ := estimator.NewEstimatorBuilder(
2416+
estimator.BinpackingEstimatorName,
2417+
estimator.NewThresholdBasedEstimationLimiter(nil),
2418+
estimator.NewDecreasingPodOrderer(),
2419+
nil,
2420+
)
2421+
2422+
return estimatorBuilder
2423+
}

cluster-autoscaler/core/test/common.go

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import (
3131
"k8s.io/autoscaler/cluster-autoscaler/core/scaledown/deletiontracker"
3232
"k8s.io/autoscaler/cluster-autoscaler/core/scaledown/pdb"
3333
"k8s.io/autoscaler/cluster-autoscaler/debuggingsnapshot"
34-
"k8s.io/autoscaler/cluster-autoscaler/estimator"
3534
"k8s.io/autoscaler/cluster-autoscaler/expander"
3635
"k8s.io/autoscaler/cluster-autoscaler/expander/random"
3736
"k8s.io/autoscaler/cluster-autoscaler/metrics"
@@ -211,14 +210,6 @@ func NewScaleTestAutoscalingContext(
211210
if err != nil {
212211
return context.AutoscalingContext{}, err
213212
}
214-
// Ignoring error here is safe - if a test doesn't specify valid estimatorName,
215-
// it either doesn't need one, or should fail when it turns out to be nil.
216-
estimatorBuilder, _ := estimator.NewEstimatorBuilder(
217-
options.EstimatorName,
218-
estimator.NewThresholdBasedEstimationLimiter(nil),
219-
estimator.NewDecreasingPodOrderer(),
220-
/* EstimationAnalyserFunc */ nil,
221-
)
222213
predicateChecker, err := predicatechecker.NewTestPredicateChecker()
223214
if err != nil {
224215
return context.AutoscalingContext{}, err
@@ -240,7 +231,6 @@ func NewScaleTestAutoscalingContext(
240231
PredicateChecker: predicateChecker,
241232
ClusterSnapshot: clusterSnapshot,
242233
ExpanderStrategy: random.NewStrategy(),
243-
EstimatorBuilder: estimatorBuilder,
244234
ProcessorCallbacks: processorCallbacks,
245235
DebuggingSnapshotter: debuggingSnapshotter,
246236
RemainingPdbTracker: remainingPdbTracker,

cluster-autoscaler/provisioningrequest/checkcapacity/orchestrator.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2525
"k8s.io/autoscaler/cluster-autoscaler/clusterstate"
2626
"k8s.io/autoscaler/cluster-autoscaler/context"
27+
"k8s.io/autoscaler/cluster-autoscaler/estimator"
2728
"k8s.io/autoscaler/cluster-autoscaler/processors/status"
2829
"k8s.io/autoscaler/cluster-autoscaler/provisioningrequest/apis/autoscaling.x-k8s.io/v1beta1"
2930
provreq_pods "k8s.io/autoscaler/cluster-autoscaler/provisioningrequest/pods"
@@ -66,6 +67,7 @@ func (o *provReqOrchestrator) Initialize(
6667
autoscalingContext *context.AutoscalingContext,
6768
processors *ca_processors.AutoscalingProcessors,
6869
clusterStateRegistry *clusterstate.ClusterStateRegistry,
70+
estimatorBuilder estimator.EstimatorBuilder,
6971
taintConfig taints.TaintConfig,
7072
) {
7173
o.initialized = true

0 commit comments

Comments
 (0)