Moving fqdn and/or ip addresses to different interface

Our hardware servers usually have multiple, lacp bonded, vlan tagged interfaces connecting to our switches. However, for provisioning with PXE this isn’t possible thus for that purpose I configure one switch port as simple access mode into a vlan allowing pxe boot.

Now, once the host is set up, I want to reconfigure the interface into the bond and move the ip address to the bonded interface (as I use puppet on the clients to configure the network interfaces).

So I edit the host interfaces settings, setting the dns name and ip address on the bonded interface and removing that information from the physical interface used for pxe.

However, it’s not possible to submit, as foreman complains about the dns name or ip address “has already been taken”. So it looks to me as if it tries to reuse the name or ip address before removing it from the old interface.

As a workaround, I set a temporary name and ip address on the physical interface, submit, then set the correct name and ip address on the bonded interface and remove the information from the old one. It works like this but is kind of annoying. It would be better if I could just reconfigure everything in one go.

Expected outcome:
Configure name and ip address on a different interface, submit, and no error but everything is as it should be…

Foreman and Proxy versions:
Foreman 3.1.2, Katello 4.3.1

Distribution and version:
CentOS 7.9

Seen this also on a few hosts with multiple nics. Have hosts with one nic with default gw and one without a gateway. Foreman for some reason thought it was a good idea to set the DNS name on the interface without gateway and also decided to use this for remote execution. So when trying to fix this mess I had to also do the “put a temporary name” on one interface, save, then put the correct name on the correct interface procedure.
Would be also nice if it could maybe decide to use interfaces with default gateway set over other interfaces for hostname and foreman services.