Project

General

Profile

Bug #17118

Error pushing facts to foreman

Added by Felix Barbeira almost 5 years ago. Updated almost 5 years ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Difficulty:
Triaged:
No
Bugzilla link:
Pull request:
Fixed in Releases:
Found in Releases:

Description

I'm trying to push facts to foreman not using the ENC funcionality, like the manual says:

https://theforeman.org/manuals/1.13/index.html#3.5.5FactsandtheENC

This is the script that I'm using:

https://github.com/theforeman/puppet-foreman/blob/master/files/external_node_v2.rb

I have the latest foreman deb package upgraded today (1.13.1-1) running on a ubuntu 16.04 LTS. The same procedure it worked with foreman 1.12. It began to fail in the version 1.13.
The script is executed on the puppetserver:

# /opt/puppetlabs/puppet/bin/ruby /etc/puppetlabs/puppet/node.rb --push-facts
During the fact upload the server responded with: 500 Internal Server Error. Error is ignored and the execution continues.
{
  "error": {"message":"undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b3c52178>\nDid you mean?  enabled_change"}
}
During the fact upload the server responded with: 500 Internal Server Error. Error is ignored and the execution continues.
{
  "error": {"message":"undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b76cd2f8>\nDid you mean?  enabled_change"}
}
During the fact upload the server responded with: 500 Internal Server Error. Error is ignored and the execution continues.
{
  "error": {"message":"undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b3b99ba0>\nDid you mean?  enabled_change"}
}
During the fact upload the server responded with: 500 Internal Server Error. Error is ignored and the execution continues.
{
  "error": {"message":"undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b7afdc60>\nDid you mean?  enabled_change"}
}
During the fact upload the server responded with: 500 Internal Server Error. Error is ignored and the execution continues.
{
  "error": {"message":"undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b026fa00>\nDid you mean?  enabled_change"}
}
[...]

And in the foreman production.log :

2016-10-27T08:52:23 79a8d943 [app] [I]   Rendered api/v2/errors/standard_error.json.rabl within api/v2/layouts/error_layout (0.9ms)
2016-10-27T08:52:23 79a8d943 [app] [I] Completed 500 Internal Server Error in 85ms (Views: 1.7ms | ActiveRecord: 1.5ms)
2016-10-27T08:52:23 9208df59 [app] [I] Started POST "/api/hosts/facts" for 10.200.0.62 at 2016-10-27 08:52:23 +0200
2016-10-27T08:52:23 9208df59 [app] [I] Processing by Api::V2::HostsController#facts as JSON
2016-10-27T08:52:23 9208df59 [app] [I]   Parameters: {"facts"=>"[FILTERED]", "name"=>"xxxxxxx", "certname"=>"xxxxxxxx", "apiv"=>"v2", :host=>{"certname"=>"xxxxxxx", "name"=>"xxxxxxx"}}
2016-10-27T08:52:23 9208df59 [app] [W] Action failed
 | NoMethodError: undefined method `enable_orchestration!' for #<Host::Managed:0x007f40b330ca50>
 | Did you mean?  enabled_change
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activemodel-4.2.7.1/lib/active_model/attribute_methods.rb:433:in `method_missing'
 | /usr/share/foreman/app/models/host/managed.rb:308:in `ensure in import_facts'
 | /usr/share/foreman/app/models/host/managed.rb:308:in `import_facts'
 | /usr/share/foreman/app/controllers/api/v2/hosts_controller.rb:240:in `facts'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/abstract_controller/base.rb:198:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/rendering.rb:10:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:117:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/app/controllers/api/v2/base_controller.rb:152:in `disable_json_root'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rails-observers-0.1.2/lib/rails/observers/action_controller/caching/sweeping.rb:73:in `around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `public_send'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `block in make_lambda'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/app/controllers/concerns/application_shared.rb:14:in `set_timezone'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:32:in `clear_thread'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rails-observers-0.1.2/lib/rails/observers/action_controller/caching/sweeping.rb:73:in `around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `public_send'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `block in make_lambda'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:81:in `run_callbacks'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/abstract_controller/callbacks.rb:19:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/rescue.rb:29:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in `block in instrument'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in `instrument'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.7.1/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/abstract_controller/base.rb:137:in `process'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionview-4.2.7.1/lib/action_view/rendering.rb:30:in `process'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal.rb:196:in `dispatch'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_controller/metal.rb:237:in `block in action'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:43:in `serve'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/mapper.rb:49:in `serve'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:43:in `block in serve'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:30:in `each'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:30:in `serve'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:817:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.3.7/lib/apipie/static_dispatcher.rb:65:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.3.7/lib/apipie/extractor/recorder.rb:132:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.3.7/lib/apipie/middleware/checksum_in_headers.rb:27:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/etag.rb:24:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/head.rb:13:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
 | /usr/share/foreman/lib/middleware/catch_json_parse_errors.rb:9:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/flash.rb:260:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/cookies.rb:560:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.7.1/lib/active_record/query_cache.rb:36:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.7.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:88:in `__run_callbacks__'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:81:in `run_callbacks'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/rack/logger.rb:38:in `call_app'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/rack/logger.rb:22:in `call'
 | /usr/share/foreman/lib/middleware/tagged_logging.rb:18:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/request_id.rb:21:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.7.1/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/engine.rb:518:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/application.rb:165:in `call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/railtie.rb:194:in `public_send'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.7.1/lib/rails/railtie.rb:194:in `method_missing'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/urlmap.rb:66:in `block in call'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `each'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `call'
 | /usr/lib/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:97:in `process_request'
 | /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:160:in `accept_and_process_next_request'
 | /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:113:in `main_loop'
 | /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler.rb:416:in `block (3 levels) in start_threads'
 | /usr/lib/ruby/vendor_ruby/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'
 | /usr/share/foreman/vendor/ruby/2.3.0/gems/logging-2.1.0/lib/logging/diagnostic_context.rb:450:in `block in create_with_logging_context'

Maybe this bug is related with:

http://projects.theforeman.org/issues/15644
http://projects.theforeman.org/issues/17041


Related issues

Related to Foreman - Bug #15644: import_facts assumes orchestration is availableClosed2016-07-11
Related to Foreman - Bug #17041: Orchestration not skipped when importing factsClosed2016-10-20
Is duplicate of Foreman - Bug #16866: Facts import doesn't work with unattended=falseClosed2016-10-11

History

#1 Updated by Felix Barbeira almost 5 years ago

  • Related to Bug #15644: import_facts assumes orchestration is available added

#2 Updated by Felix Barbeira almost 5 years ago

  • Related to Bug #17041: Orchestration not skipped when importing facts added

#3 Updated by Dominic Cleal almost 5 years ago

What is the value of :unattended in /etc/foreman/settings.yaml?

#4 Updated by Anonymous almost 5 years ago

possibly duplicates #16866

#5 Updated by Dominic Cleal almost 5 years ago

  • Status changed from New to Need more information

#6 Updated by Felix Barbeira almost 5 years ago

It was 'false', I changed the value to 'true' and now it works.

Thanks Dominic!

#7 Updated by Dominic Cleal almost 5 years ago

  • Is duplicate of Bug #16866: Facts import doesn't work with unattended=false added

#8 Updated by Dominic Cleal almost 5 years ago

  • Status changed from Need more information to Duplicate

Thanks for confirming and the report, we'll continue to track it under #16866 then.

Also available in: Atom PDF