Requesting PR review and manual testing for Issue #13819

Issue: Bug #13819: Fact imports fail with: Validation failed: Fact name has already been taken - Foreman
Refs: Bug #14761: _timestamp fact prevents facts upload through Foreman facts update - Foreman

Pull request: https://github.com/theforeman/foreman/pull/3456

Summary: Puppet > 4 has a hidden _timestamp fact which prevents facts
upload through Foreman facts processor. PR is a minor patch to prevent the
name collision between Foreman's _timestamp, and the hidden Puppet
_timestamp.

Diff is for: app/services/fact_importer.rb
fact_names = fact_name_class.group(:name).maximum(:id)
facts_to_create.each do |name|

  •    host.fact_values.send(method, :value => facts[name],
    
  •    if name != "_timestamp" 
    
  •      logger.info("Fact Importer facts_to_create called for new fact 
    

'#{name}'")

  •      host.fact_values.send(method, :value => facts[name],
                             :fact_name_id  => fact_names[name] || 
    

fact_name_class.create!(:name => name).id)

  •    end
     end
    
    end

The prprocessor didn't like my using "Fixes" instead of "fixes", so the
"waiting on contributor" label appears to be due to that.

Hoping this can make it into 1.10.4 to help out those of us deploying
Foreman 1.10 along with Katello 2.4.

Thanks for your time on this!

/Mike