Foreman reporting 3000+ network interfaces for docker hosts


We're running Foreman 1.11 with Puppet 3.8.7 on Centos7, with Foreman used
as classifier, not for provisioning.

Many of our servers are used as docker hosts managed by Rancher. As
containers are created/deleted/migrated from a host to another, docker NICs
are continuously added and deleted on the hosts, fact correctly reflected
by puppet/facter.

Recently we've encountered " Could not retrieve catalog from remote server:
Error 400 on SERVER"; "Execution of '/etc/puppet/node.rb some_host_name
returned 1". Digging into this we've found that running
'/etc/puppet/node.rb against those server names returned a very long list
and in each case discovered thousands of individual NICs in that list (from
2000 to more than 3500).

In the Foreman interface, Host details->NICs showed the same thing for
those particular hosts - actually the page crashed most times while

Facter returns the correct list of NICs, and this is also reflected in
/var/lib/puppet/yaml/facts/some_host_name.yaml on the puppet server.

It seems that, as docker adds/deletes virtual NICs on the host, Foreman
keeps adding them without deleting the discarded ones.

I was wondering if anyone else encountered something like this and how it
could be prevented. Right now we have to delete and re-add the hosts to