@@ -198,56 +198,39 @@ def build_dpu_operator_images() -> str:
198
198
registry = _ensure_local_registry_running (lh , delete_all = True )
199
199
reglocal .local_trust (lh )
200
200
201
- operator_image = f"{ registry } /{ OPERATOR_IMG } "
202
- daemon_image = f"{ registry } /{ DAEMON_IMG } "
203
- render_local_images_yaml (operator_image = operator_image , daemon_image = daemon_image , outfilename = f"{ REPO_DIR } /config/dev/local-images-template.yaml" )
204
-
205
201
lh .run_or_die (f"make -C { REPO_DIR } local-buildx" )
206
202
lh .run_or_die (f"make -C { REPO_DIR } local-pushx" )
207
203
208
204
return registry
209
205
210
206
211
- def start_dpu_operator (h : host .Host , client : K8sClient , operator_image : str , daemon_image : str , repo_wipe : bool = False ) -> None :
207
+ def start_dpu_operator (h : host .Host , client : K8sClient , repo_wipe : bool = False ) -> None :
212
208
logger .info (f"Deploying dpu operator containers on { h .hostname ()} " )
213
209
if repo_wipe :
214
210
h .run (f"rm -rf { REPO_DIR } " )
215
211
h .run_or_die (f"git clone { DPU_OPERATOR_REPO } " )
216
- render_local_images_yaml (operator_image = operator_image , daemon_image = daemon_image , outfilename = "/tmp/dpu-local-images-template.yaml" , pull_policy = "IfNotPresent" )
217
- h .copy_to ("/tmp/dpu-local-images-template.yaml" , f"{ REPO_DIR } /config/dev/local-images-template.yaml" )
218
212
213
+ REGISTRY = host .LocalHost ().hostname ()
219
214
h .run ("dnf install -y pip" )
220
215
h .run_or_die ("pip install yq" )
221
216
ensure_go_installed (h )
222
- reglocal .local_trust (h )
223
- h .run_or_die (f"podman pull { operator_image } " )
224
- h .run_or_die (f"podman pull { daemon_image } " )
225
217
if h .is_localhost ():
226
218
env = os .environ .copy ()
227
219
env ["KUBECONFIG" ] = client ._kc
228
- env ["REGISTRY" ] = host . LocalHost (). hostname ()
220
+ env ["REGISTRY" ] = REGISTRY
229
221
h .run (f"make -C { REPO_DIR } undeploy" , env = env )
230
222
ret = h .run (f"make -C { REPO_DIR } local-deploy" , env = env )
231
223
if not ret .success ():
232
224
logger .error_and_exit ("Failed to deploy dpu operator" )
233
225
else :
234
- h .run (f"cd { REPO_DIR } && export KUBECONFIG={ client ._kc } && make undeploy" )
235
- h .run_or_die (f"cd { REPO_DIR } && export KUBECONFIG={ client ._kc } && make local-deploy" )
226
+ env_cmds = f"export KUBECONFIG={ client ._kc } && export REGISTRY={ REGISTRY } "
227
+ h .run (f"cd { REPO_DIR } && { env_cmds } && make undeploy" )
228
+ h .run_or_die (f"cd { REPO_DIR } && { env_cmds } && make local-deploy" )
236
229
logger .info ("Waiting for all dpu operator pods to become ready" )
237
230
time .sleep (30 )
238
231
client .oc_run_or_die ("wait --for=condition=Ready pod --all -n openshift-dpu-operator --timeout=5m" )
239
232
240
233
241
- def render_local_images_yaml (operator_image : str , daemon_image : str , outfilename : str , pull_policy : str = "Always" ) -> None :
242
- with open ('./manifests/dpu/local-images-template.yaml.j2' ) as f :
243
- j2_template = jinja2 .Template (f .read ())
244
- rendered = j2_template .render (operator_image = operator_image , daemon_image = daemon_image , pull_policy = pull_policy )
245
- logger .info (rendered )
246
-
247
- with open (outfilename , "w" ) as outFile :
248
- outFile .write (rendered )
249
-
250
-
251
234
def ExtraConfigDpu (cc : ClustersConfig , cfg : ExtraConfigArgs , futures : dict [str , Future [Optional [host .Result ]]]) -> None :
252
235
[f .result () for (_ , f ) in futures .items ()]
253
236
logger .info ("Running post config step to start DPU operator on IPU" )
@@ -265,9 +248,6 @@ def ExtraConfigDpu(cc: ClustersConfig, cfg: ExtraConfigArgs, futures: dict[str,
265
248
logger .info ("Will not rebuild dpu-operator images" )
266
249
registry = _ensure_local_registry_running (lh , delete_all = False )
267
250
268
- operator_image = f"{ registry } /{ OPERATOR_IMG } "
269
- daemon_image = f"{ registry } /{ DAEMON_IMG } "
270
-
271
251
# Build and start vsp on DPU
272
252
vendor_plugin = init_vendor_plugin (acc )
273
253
if isinstance (vendor_plugin , IpuPlugin ):
@@ -280,7 +260,7 @@ def ExtraConfigDpu(cc: ClustersConfig, cfg: ExtraConfigArgs, futures: dict[str,
280
260
acc .run_or_die (cmd )
281
261
vendor_plugin .build_and_start (acc , client , registry )
282
262
283
- start_dpu_operator (acc , client , operator_image , daemon_image , repo_wipe = True )
263
+ start_dpu_operator (acc , client , repo_wipe = True )
284
264
285
265
# Disable firewall to ensure host-side can reach dpu
286
266
acc .run ("systemctl stop firewalld" )
@@ -320,8 +300,6 @@ def ExtraConfigDpuHost(cc: ClustersConfig, cfg: ExtraConfigArgs, futures: dict[s
320
300
else :
321
301
logger .info ("Will not rebuild dpu-operator images" )
322
302
registry = _ensure_local_registry_running (lh , delete_all = False )
323
- operator_image = f"{ registry } /{ OPERATOR_IMG } "
324
- daemon_image = f"{ registry } /{ DAEMON_IMG } "
325
303
326
304
# Need to trust the registry in OCP / Microshift
327
305
logger .info ("Ensuring local registry is trusted in OCP" )
@@ -331,7 +309,7 @@ def ExtraConfigDpuHost(cc: ClustersConfig, cfg: ExtraConfigArgs, futures: dict[s
331
309
vendor_plugin = init_vendor_plugin (h )
332
310
vendor_plugin .build_and_start (lh , client , registry )
333
311
334
- start_dpu_operator (lh , client , operator_image , daemon_image )
312
+ start_dpu_operator (lh , client )
335
313
336
314
def helper (h : host .Host , node : NodeConfig ) -> Optional [host .Result ]:
337
315
# Temporary workaround, remove once 4.16 installations are working
0 commit comments