Skip to content

Need an Elegant Solution for Setting Alternative Firmware Path at Runtime with KMM #279

@chaitanya1731

Description

@chaitanya1731

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.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions