intel / intel/intel-technology-enabling-for-openshift
Need an Elegant Solution for Setting Alternative Firmware Path at Runtime with KMM
- Dominant language
- Python
- Stars
- 22
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
## Summary:
While setting the alternative firmware path at runtime with KMM, we currently need to manually update the `ConfigMap` to set `worker.setFirmwareClassPath` to `/var/lib/firmware`. This is being done with the following oc command:
```
$ oc patch configmap kmm-operator-manager-config -n openshift-kmm --type='json' -p='[{"op": "add", "path": "/data/controller_config.yaml", "value": "healthProbeBindAddress: :8081\nmetricsBindAddress: 127.0.0.1:8080\nleaderElection:\n enabled: true\n resourceID: kmm.sigs.x-k8s.io\nwebhook:\n disableHTTP2: true\n port: 9443\nworker:\n runAsUser: 0\n seLinuxType: spc_t\n setFirmwareClassPath: /var/lib/firmware"}]'
$ oc get pods -n openshift-kmm | grep -i "kmm-operator-controller-" | awk '{print $1}' | xargs oc delete pod -n openshift-kmm
```
However, this command sets the path explicitly and then reboot the controller manager pod, we need a more elegant solution to update this firmware path.
## Impact:
The current method breaks "one-click" provisioning solution, which stops the Ansible playbook without completing its execution.. As a workaround, users need to be already logged in to the cluster using `oc` command..
## Desired Solution:
Need a solution that allows for a more integrated and seamless way to set the firmware path without manual intervention.
Contributor guide
Assessment
This issue has not been assessed yet.