@@ -348,6 +348,44 @@ then
348348 record_service_stage_success
349349fi
350350
351+ if [ " $BOOTSTRAP_INPLACE " = true ] && [ ! -f cmdbootline-nto-bootstrap.done ]; then
352+ record_service_stage_start " cmdbootline-nto-bootstrap"
353+
354+ rm --recursive --force cmdbootline-nto-bootstrap
355+
356+ # Create folders for overlay and podman command to use them
357+ tmpfolder=$( mktemp -d)
358+ echo ${tmpfolder}
359+ podmancmd=" bootkube_podman_run --attach=stderr --rm "
360+ for folder in etc/modprobe.d etc/sysconfig etc/kubernetes etc/sysctl.d etc/systemd run sys lib/modules var/lib/kubelet usr/lib/tuned etc/tuned; do
361+ lowerfolder=" /${folder} "
362+ if [ ! -d " $lowerfolder " ]; then
363+ echo " Skipping mounting $lowerfolder "
364+ continue
365+ fi
366+ upperfolder=" ${tmpfolder} /${folder} /upper"
367+ workfolder=" ${tmpfolder} /${folder} /work"
368+ mkdir -p ${upperfolder}
369+ mkdir -p ${workfolder}
370+ podmancmd=" ${podmancmd} -v ${lowerfolder} :/${folder} :O,upperdir=${upperfolder} ,workdir=${workfolder} "
371+ done
372+
373+ podmancmd=" ${podmancmd} --volume $PWD :/assets:z --env=CLUSTER_NODE_TUNED_BOOTSTRAP_SAFE_ENV=true --name tuned ${NODE_TUNING_OPERATOR_IMAGE} "
374+ podmancmd=" ${podmancmd} render-bootcmd-mc --asset-input-dir=/assets/manifests --asset-output-dir=/assets/cmdbootline-nto-bootstrap --mcp-name=master"
375+
376+ # execute podmancmd
377+ $podmancmd
378+
379+ # Copy over manifests if they were generated by NTO
380+ if [ -n " $( ls -A cmdbootline-nto-bootstrap) " ]; then
381+ cp cmdbootline-nto-bootstrap/* manifests/
382+ fi
383+
384+ rm -rf ${tmpfolder}
385+ touch cmdbootline-nto-bootstrap.done
386+ record_service_stage_success
387+ fi
388+
351389if [ ! -f mco-bootstrap.done ]
352390then
353391 record_service_stage_start " mco-bootstrap"
0 commit comments