Unable to join machine with bonded primary interface

Problem:
I am unable to join a machine with bonded primary interface. I get this error when using subscription-manager. HTTP error (422 - Unknown): Validation failed: Attached to can’t be blank
I traced through the logs - I think it is an issue that it can’t tell what the slave ethernet devices are. However I’m unsure if there is a way that I can specify that. Can anyone help me with this?

Expected outcome:
Join successfully using subscription-manager register to Katello

Foreman and Proxy versions:
foreman 1.22

Foreman and Proxy plugin versions:

Other relevant data:
this is from the /var/log/foreman/production.log

2019-07-10T10:29:32 [I|app|a25781d5] Import facts for '<redacted system name>' completed. Added: 220, Updated: 0, Deleted 0 facts
2019-07-10T10:29:32 [I|aud|a25781d5] Nic::Managed (834) update event on mac , <redacted>
2019-07-10T10:29:32 [I|aud|a25781d5] Nic::Managed (834) update event on virtual false, true
2019-07-10T10:29:32 [I|aud|a25781d5] Nic::Managed (834) update event on identifier , bond0
2019-07-10T10:29:32 [W|app|a25781d5] Not queueing Nic::Managed: ["Attached to can't be blank"]
2019-07-10T10:29:32 [W|app|a25781d5] Not queueing Nic::Managed: ["Attached to can't be blank"]
2019-07-10T10:29:32 [W|app|a25781d5] Not queueing Nic::Managed: ["Attached to can't be blank"]

what I am kinda hoping is that there is way to specify the attached-to nics in an /etc/rhsm/facts

Hi, i have the same issue too. At first i thought it is bare metal hosts related, but You comment pointed to bond interface and i can relate.

Do we need to upload some logs for debugging?

Clean install RH7 1.22.0, 3.12.0

Also encountering this issue

I created a bug and added my logs.

Where is that? I don’t see it.

If RHSM does not provide information about how interfaces are attached each other, then we can’t figure it out easily. Then we need a BZ for subscription-manager first to send the data over to us.

https://projects.theforeman.org/issues/27280

I also put in the subscription-manager facts.

I do want to say that this used to work on an older version of Katello, version 3.8. I have older clients that have bonded primary interfaces that I was able to join using that version.

Thanks, CCing @akofink

The way this works for puppet facts is that we try to do “educated guess” on the input data because facter also does not provide “attached to” information (at least the legacy versions). The code in fact_parser.rb is in set_additional_attributes.

This needs some debugging with the fact input provided, RHSM overrides most of the core functionality so some refactoring is probably needed to avoid code copying.