@@ -40,6 +40,7 @@ import (
4040 backendmetrics "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/backend/metrics"
4141 "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/common/config/loader"
4242 "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/datastore"
43+
4344 // Import the latency predictor package
4445 latencypredictor "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/latencypredictorasync"
4546 "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/metrics"
@@ -93,11 +94,11 @@ var (
9394 "refreshPrometheusMetricsInterval" ,
9495 runserver .DefaultRefreshPrometheusMetricsInterval ,
9596 "interval to flush prometheus metrics" )
96- logVerbosity = flag .Int ("v" , logging .DEFAULT , "number for the log level verbosity" )
97+ logVerbosity = flag .Int ("v" , logging .DEFAULT , "number for the log level verbosity" )
9798 secureServing = flag .Bool (
9899 "secureServing" , runserver .DefaultSecureServing , "Enables secure serving. Defaults to true." )
99100 healthChecking = flag .Bool ("healthChecking" , runserver .DefaultHealthChecking , "Enables health checking" )
100- certPath = flag .String (
101+ certPath = flag .String (
101102 "certPath" , "" , "The path to the certificate for secure serving. The certificate and private key files " +
102103 "are assumed to be named tls.crt and tls.key, respectively. If not set, and secureServing is enabled, " +
103104 "then a self-signed certificate is used." )
@@ -222,11 +223,11 @@ func (r *Runner) Run(ctx context.Context) error {
222223 // ===================================================================
223224 // == Latency Predictor Integration
224225 // ===================================================================
225- var predictor latencypredictor.PredictorInterface // Use the interface type
226+ var predictor latencypredictor.PredictorInterface // Use the interface type
226227 if * enableLatencyPredictor {
227228 setupLog .Info ("Latency predictor is enabled. Initializing..." )
228229 predictor = latencypredictor .New (latencypredictor .ConfigFromEnv (), ctrl .Log .WithName ("latency-predictor" ))
229-
230+
230231 // For the runnable, you'll need to type assert back to the concrete type
231232 concretePredictor := predictor .(* latencypredictor.Predictor )
232233 if err := mgr .Add (runnable .NoLeaderElection (& predictorRunnable {predictor : concretePredictor })); err != nil {
@@ -235,10 +236,9 @@ func (r *Runner) Run(ctx context.Context) error {
235236 }
236237 } else {
237238 setupLog .Info ("Latency predictor is disabled." )
238- predictor = nil // This will be a true nil interface
239+ predictor = nil // This will be a true nil interface
239240 }
240241
241-
242242 // ===================================================================
243243
244244 if len (* configText ) != 0 || len (* configFile ) != 0 {
@@ -281,18 +281,18 @@ func (r *Runner) Run(ctx context.Context) error {
281281
282282 // --- Setup ExtProc Server Runner ---
283283 serverRunner := & runserver.ExtProcServerRunner {
284- GrpcPort : * grpcPort ,
284+ GrpcPort : * grpcPort ,
285285 DestinationEndpointHintMetadataNamespace : * destinationEndpointHintMetadataNamespace ,
286- DestinationEndpointHintKey : * destinationEndpointHintKey ,
287- PoolNamespacedName : poolNamespacedName ,
288- Datastore : datastore ,
289- SecureServing : * secureServing ,
290- HealthChecking : * healthChecking ,
291- CertPath : * certPath ,
292- RefreshPrometheusMetricsInterval : * refreshPrometheusMetricsInterval ,
293- Director : director ,
294- SaturationDetector : saturationDetector ,
295- LatencyPredictor : predictor ,
286+ DestinationEndpointHintKey : * destinationEndpointHintKey ,
287+ PoolNamespacedName : poolNamespacedName ,
288+ Datastore : datastore ,
289+ SecureServing : * secureServing ,
290+ HealthChecking : * healthChecking ,
291+ CertPath : * certPath ,
292+ RefreshPrometheusMetricsInterval : * refreshPrometheusMetricsInterval ,
293+ Director : director ,
294+ SaturationDetector : saturationDetector ,
295+ LatencyPredictor : predictor ,
296296 }
297297 if err := serverRunner .SetupWithManager (ctx , mgr ); err != nil {
298298 setupLog .Error (err , "Failed to setup EPP controllers" )
@@ -321,13 +321,13 @@ func (r *Runner) Run(ctx context.Context) error {
321321 return nil
322322}
323323
324- func (r * Runner ) initializeScheduler (datastore datastore.Datastore , ) (* scheduling.Scheduler , error ) {
324+ func (r * Runner ) initializeScheduler (datastore datastore.Datastore ) (* scheduling.Scheduler , error ) {
325325 if r .schedulerConfig != nil {
326- return scheduling .NewSchedulerWithConfig (datastore , r .schedulerConfig ), nil
326+ return scheduling .NewSchedulerWithConfig (r .schedulerConfig ), nil
327327 }
328328
329329 // otherwise, no one configured from outside scheduler config. use existing configuration
330- scheduler := scheduling .NewScheduler (datastore )
330+ scheduler := scheduling .NewScheduler ()
331331 if schedulerV2 {
332332 queueScorerWeight := envutil .GetEnvInt ("QUEUE_SCORE_WEIGHT" , scorer .DefaultQueueScorerWeight , setupLog )
333333 kvCacheScorerWeight := envutil .GetEnvInt ("KV_CACHE_SCORE_WEIGHT" , scorer .DefaultKVCacheScorerWeight , setupLog )
@@ -337,7 +337,6 @@ func (r *Runner) initializeScheduler(datastore datastore.Datastore,) (*schedulin
337337 framework .NewWeightedScorer (scorer .NewKVCacheScorer (), kvCacheScorerWeight )).
338338 WithPicker (picker .NewMaxScorePicker ())
339339
340-
341340 if prefixCacheScheduling {
342341 prefixScorerWeight := envutil .GetEnvInt ("PREFIX_CACHE_SCORE_WEIGHT" , prefix .DefaultScorerWeight , setupLog )
343342 if err := schedulerProfile .AddPlugins (framework .NewWeightedScorer (prefix .New (loadPrefixCacheConfig ()), prefixScorerWeight )); err != nil {
@@ -346,11 +345,11 @@ func (r *Runner) initializeScheduler(datastore datastore.Datastore,) (*schedulin
346345 }
347346
348347 schedulerConfig := scheduling .NewSchedulerConfig (profile .NewSingleProfileHandler (), map [string ]* framework.SchedulerProfile {"schedulerv2" : schedulerProfile })
349- scheduler = scheduling .NewSchedulerWithConfig (datastore , schedulerConfig )
348+ scheduler = scheduling .NewSchedulerWithConfig (schedulerConfig )
350349 }
351350
352351 if reqHeaderBasedSchedulerForTesting {
353- scheduler = conformance_epp .NewReqHeaderBasedScheduler (datastore )
352+ scheduler = conformance_epp .NewReqHeaderBasedScheduler ()
354353 }
355354
356355 return scheduler , nil
0 commit comments