Project

General

Profile

Actions

Bug #12478

closed

Virtual interfaces with :attached_to defined can't be updated by Host::Base.populate_fields_from_facts

Added by Brandon Weeks over 8 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Network
Target version:
Difficulty:
trivial
Triaged:
Fixed in Releases:
Found in Releases:

Description

When a virtual interfaces has a value for :attached_to, it fails to get updated when Host::Base.populate_fields_from_facts runs. This is because (at least in Puppet environments) the facts table does not contain a value for :attached_to.

The resulting error:

2015-11-13 17:19:14 [sql] [W] Saving bond0 NIC for host host.example.com failed, skipping because:
2015-11-13 17:19:14 [sql] [W] Attached to can't be blank

PR incoming. :)

Actions #1

Updated by The Foreman Bot over 8 years ago

  • Status changed from New to Ready For Testing
  • Pull request https://github.com/theforeman/foreman/pull/2912 added
Actions #2

Updated by Dominic Cleal over 8 years ago

  • translation missing: en.field_release deleted (63)
Actions #3

Updated by The Foreman Bot over 8 years ago

  • Assignee set to Brandon Weeks
Actions #4

Updated by Brandon Weeks over 8 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100
Actions #5

Updated by Dominic Cleal over 8 years ago

  • % Done changed from 100 to 0
  • translation missing: en.field_release set to 104
Actions #6

Updated by Marek Hulán over 8 years ago

FWIW, attached_to is not meant to be set by puppet (or other cfg mgmt tool) but it's constructed from virtual names (e.g. eth0.1 -> eth0), see https://github.com/brandonweeks/foreman/blob/56671b5f0cfa6dd185cb75d40445300e3b6668f5/app/services/fact_parser.rb#L126 for more details. Anyway, thanks for the patch.

Actions #7

Updated by Brandon Weeks over 8 years ago

Thanks for the context! Knowing that it's obvious that the problem we were running into is our our virtual interface is named "bond0," do you think there any other improvements that should be made for handling virtual interfaces that don't have the suffix pattern?

Actions #8

Updated by Marek Hulán over 8 years ago

I think your patch fixed it for all interfaces, if I understood it correctly it makes attached_to nil instead of empty string. The other way to fix it would be to just fix the validation to accept empty strings in this attribute for bonds and bridges but this seems to work just fine :-)

Actions

Also available in: Atom PDF