@@ -116,10 +116,11 @@ func (r *ServiceReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ct
116
116
return ctrl.Result {}, err
117
117
}
118
118
119
- workloadApplyConfiguration , err := buildWorkloadApplyConfiguration (service , models )
119
+ workloadApplyConfiguration , err := buildWorkloadApplyConfiguration (service , models , configs )
120
120
if err != nil {
121
121
return ctrl.Result {}, err
122
122
}
123
+
123
124
if err := setControllerReferenceForWorkload (service , workloadApplyConfiguration , r .Scheme ); err != nil {
124
125
return ctrl.Result {}, err
125
126
}
@@ -162,7 +163,7 @@ func (r *ServiceReconciler) SetupWithManager(mgr ctrl.Manager) error {
162
163
Complete (r )
163
164
}
164
165
165
- func buildWorkloadApplyConfiguration (service * inferenceapi.Service , models []* coreapi.OpenModel ) (* applyconfigurationv1.LeaderWorkerSetApplyConfiguration , error ) {
166
+ func buildWorkloadApplyConfiguration (service * inferenceapi.Service , models []* coreapi.OpenModel , configs * helper. GlobalConfigs ) (* applyconfigurationv1.LeaderWorkerSetApplyConfiguration , error ) {
166
167
workload := applyconfigurationv1 .LeaderWorkerSet (service .Name , service .Namespace )
167
168
168
169
leaderWorkerTemplate := applyconfigurationv1 .LeaderWorkerTemplate ()
@@ -193,7 +194,7 @@ func buildWorkloadApplyConfiguration(service *inferenceapi.Service, models []*co
193
194
leaderWorkerTemplate .WithWorkerTemplate (& podTemplateSpecApplyConfiguration )
194
195
195
196
// The core logic to inject additional configurations.
196
- injectModelProperties (leaderWorkerTemplate , models , service )
197
+ injectModelProperties (leaderWorkerTemplate , models , service , configs )
197
198
198
199
spec := applyconfigurationv1 .LeaderWorkerSetSpec ()
199
200
spec .WithLeaderWorkerTemplate (leaderWorkerTemplate )
@@ -215,17 +216,17 @@ func buildWorkloadApplyConfiguration(service *inferenceapi.Service, models []*co
215
216
return workload , nil
216
217
}
217
218
218
- func injectModelProperties (template * applyconfigurationv1.LeaderWorkerTemplateApplyConfiguration , models []* coreapi.OpenModel , service * inferenceapi.Service ) {
219
+ func injectModelProperties (template * applyconfigurationv1.LeaderWorkerTemplateApplyConfiguration , models []* coreapi.OpenModel , service * inferenceapi.Service , configs * helper. GlobalConfigs ) {
219
220
isMultiNodesInference := template .LeaderTemplate != nil
220
221
221
222
for i , model := range models {
222
223
source := modelSource .NewModelSourceProvider (model )
223
224
// Skip model-loader initContainer if llmaz.io/skip-model-loader annotation is set.
224
225
if ! helper .SkipModelLoader (service ) {
225
226
if isMultiNodesInference {
226
- source .InjectModelLoader (template .LeaderTemplate , i )
227
+ source .InjectModelLoader (template .LeaderTemplate , i , configs . InitContainerImage )
227
228
}
228
- source .InjectModelLoader (template .WorkerTemplate , i )
229
+ source .InjectModelLoader (template .WorkerTemplate , i , configs . InitContainerImage )
229
230
} else {
230
231
if isMultiNodesInference {
231
232
source .InjectModelEnvVars (template .LeaderTemplate )
0 commit comments