-
Notifications
You must be signed in to change notification settings - Fork 4
Description
We (IBM) recently wanted to disable network IPMI by default on our systems. But, we wanted the ability via Redfish->bmcweb->service-config-manager to allow our users to enable it if they so wish.
We disabled network IPMI by setting SYSTEMD_AUTO_ENABLE:${PN} to disable in a phosphor-ipmi-net_%.bbappend meta-ibm override. This worked in that the phosphor-ipmi-net@ethX.service and .socket instance services were not installed in the multi-user.target and so network IPMI was disabled by default.
The main issue here is that the service-config-manager, on a fresh boot of a system, requires the systemd units to be present per a query to systemd. They were not present when we disabled IPMI by default, so there was no way to use the service-config-manager to enable them.
We're looking at a workaround where we leave network IPMI enabled by default, but have a service that runs only on the first boot of a fresh system, and automatically disables it (after service-confiog-manager has started and seen the units). Once service-config-manager sees the units, and write out it's /etc/srvcfg-mgr.json file, all is good with being able to re-enable network IPMI after a BMC reboots and such.
This may be more of a feature request. Is there a way we could have service-config-manager work in this scenario? Maybe a parameter we could pass on start to input some units it should always look for? Or a way to say statically always support some specific interfaces?