Actions
Bug #16547
closedFact importing fails with NoMethodError: undefined method `first' for nil:NilClass
Difficulty:
Triaged:
Bugzilla link:
Pull request:
Description
016-09-14T09:01:10 b740424a [app] [I] Processing by Api::V2::HostsController#facts as JSON 2016-09-14T09:01:10 b740424a [app] [I] Parameters: {"facts"=>"[FILTERED]", "name"=>"h04.example.com", "certname"=>"4471ddcd-9051-4299-9819-4d9a8b400fcc", "apiv"=>"v2", :host=>{"certname"=>"4471ddcd-9051-4299-9819-4d9a8b400fcc", "name"=>"h04.example.com"}} 2016-09-14T09:01:10 b740424a [app] [I] Import facts for 'h04.example.com' completed. Added: 0, Updated: 4, Deleted 0 facts 2016-09-14T09:01:10 b740424a [app] [W] Action failed | NoMethodError: undefined method `first' for nil:NilClass | /home/foreman/git/foreman/app/models/host/base.rb:178:in `block in set_interfaces' | /home/foreman/git/foreman/app/models/host/base.rb:177:in `each' | /home/foreman/git/foreman/app/models/host/base.rb:177:in `set_interfaces' | /home/foreman/git/foreman/app/models/host/base.rb:154:in `populate_fields_from_facts' | /home/foreman/git/foreman/app/models/host/managed.rb:464:in `populate_fields_from_facts' | /home/foreman/git/foreman/app/models/host/base.rb:131:in `import_facts' | /home/foreman/git/foreman/app/models/host/managed.rb:305:in `import_facts' | /home/foreman/git/foreman/app/controllers/api/v2/hosts_controller.rb:240:in `facts' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/implicit_render.rb:4:in `send_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/abstract_controller/base.rb:198:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/rendering.rb:10:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/abstract_controller/callbacks.rb:20:in `block in process_action' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:117:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:117:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' | /home/foreman/git/foreman/app/controllers/api/v2/base_controller.rb:152:in `disable_json_root' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' | /home/foreman/gems/gems/rails-observers-0.1.2/lib/rails/observers/action_controller/caching/sweeping.rb:73:in `around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `public_send' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `block in make_lambda' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' | /home/foreman/git/foreman/app/controllers/concerns/application_shared.rb:14:in `set_timezone' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' | /home/foreman/git/foreman/app/models/concerns/foreman/thread_session.rb:32:in `clear_thread' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:432:in `block in make_lambda' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' | /home/foreman/gems/gems/rails-observers-0.1.2/lib/rails/observers/action_controller/caching/sweeping.rb:73:in `around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `public_send' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:455:in `block in make_lambda' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:312:in `block in halting' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:497:in `block in around' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:505:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:92:in `__run_callbacks__' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:81:in `run_callbacks' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/abstract_controller/callbacks.rb:19:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/rescue.rb:29:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in `block in instrument' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/notifications/instrumenter.rb:20:in `instrument' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/notifications.rb:164:in `instrument' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/instrumentation.rb:30:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/params_wrapper.rb:250:in `process_action' | /home/foreman/gems/gems/activerecord-4.2.7.1/lib/active_record/railties/controller_runtime.rb:18:in `process_action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/abstract_controller/base.rb:137:in `process' | /home/foreman/gems/gems/actionview-4.2.7.1/lib/action_view/rendering.rb:30:in `process' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal.rb:196:in `dispatch' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_controller/metal.rb:237:in `block in action' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:74:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:74:in `dispatch' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:43:in `serve' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/mapper.rb:49:in `serve' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:43:in `block in serve' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:30:in `each' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/journey/router.rb:30:in `serve' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/routing/route_set.rb:817:in `call' | /home/foreman/gems/gems/apipie-rails-0.3.6/lib/apipie/static_dispatcher.rb:65:in `call' | /home/foreman/gems/gems/apipie-rails-0.3.6/lib/apipie/extractor/recorder.rb:132:in `call' | /home/foreman/gems/gems/apipie-rails-0.3.6/lib/apipie/middleware/checksum_in_headers.rb:27:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/etag.rb:24:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/head.rb:13:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/params_parser.rb:27:in `call' | /home/foreman/git/foreman/lib/middleware/catch_json_parse_errors.rb:8:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/flash.rb:260:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/cookies.rb:560:in `call' | /home/foreman/gems/gems/activerecord-4.2.7.1/lib/active_record/query_cache.rb:36:in `call' | /home/foreman/gems/gems/activerecord-4.2.7.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:88:in `__run_callbacks__' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:778:in `_run_call_callbacks' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/callbacks.rb:81:in `run_callbacks' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/callbacks.rb:27:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/remote_ip.rb:78:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/rack/logger.rb:38:in `call_app' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/rack/logger.rb:22:in `call' | /home/foreman/gems/gems/quiet_assets-1.1.0/lib/quiet_assets.rb:27:in `call_with_quiet_assets' | /home/foreman/git/foreman/lib/middleware/tagged_logging.rb:18:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/request_id.rb:21:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call' | /home/foreman/gems/gems/activesupport-4.2.7.1/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' | /home/foreman/gems/gems/actionpack-4.2.7.1/lib/action_dispatch/middleware/static.rb:120:in `call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call' | /home/foreman/gems/gems/secure_headers-3.4.1/lib/secure_headers/middleware.rb:12:in `call' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/engine.rb:518:in `call' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/application.rb:165:in `call' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/railtie.rb:194:in `public_send' | /home/foreman/gems/gems/railties-4.2.7.1/lib/rails/railtie.rb:194:in `method_missing' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:66:in `block in call' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `each' | /home/foreman/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `call' | /root/.gem/gems/passenger-5.0.7/lib/phusion_passenger/rack/thread_handler_extension.rb:89:in `process_request' | /root/.gem/gems/passenger-5.0.7/lib/phusion_passenger/request_handler/thread_handler.rb:155:in `accept_and_process_next_request' | /root/.gem/gems/passenger-5.0.7/lib/phusion_passenger/request_handler/thread_handler.rb:110:in `main_loop' | /root/.gem/gems/passenger-5.0.7/lib/phusion_passenger/request_handler.rb:414:in `block (3 levels) in start_threads' | /root/.gem/gems/passenger-5.0.7/lib/phusion_passenger/utils.rb:111:in `block in create_thread_and_abort_on_exception' | /home/foreman/gems/gems/logging-2.1.0/lib/logging/diagnostic_context.rb:450:in `call' | /home/foreman/gems/gems/logging-2.1.0/lib/logging/diagnostic_context.rb:450:in `block in create_with_logging_context' 2016-09-14T09:01:10 b740424a [app] [I] Rendered api/v2/errors/standard_error.json.rabl within api/v2/layouts/error_layout (0.8ms) 2016-09-14T09:01:10 b740424a [app] [I] Completed 500 Internal Server Error in 299ms (Views: 1.7ms | ActiveRecord: 109.5ms)
the facts in question are (output of FACTER_domain=example.com facter --json)
{"domain":"example.com","architecture":"x86_64","augeasversion":"1.4.0","kernel":"Linux","blockdevice_sda_size":500107862016,"blockdevice_sda_vendor":"ATA","blockdevice_sda_model":"ST500NM0011","blockdevices":"sda","macaddress":"02:42:95:9c:45:94","osfamily":"RedHat","operatingsystem":"RedHat","facterversion":"1.7.6","filesystems":"xfs","fqdn":"h04.example.com","hardwareisa":"x86_64","hardwaremodel":"x86_64","hostname":"h04","id":"root","interfaces":"br_14703d60d2bb,docker0,em1,em2,lo,veth028afe7,veth42ffacc,vethac0da22,vethd78747b,vethf42b68f,virbr0,virbr0_nic","ipaddress_br_14703d60d2bb":"172.18.0.1","macaddress_br_14703d60d2bb":"02:42:95:9c:45:94","netmask_br_14703d60d2bb":"255.255.0.0","ipaddress_docker0":"172.17.0.1","macaddress_docker0":"02:42:68:70:81:52","netmask_docker0":"255.255.0.0","ipaddress_em1":"10.35.27.135","macaddress_em1":"84:8f:69:fe:27:05","netmask_em1":"255.255.255.192","macaddress_em2":"84:8f:69:fe:27:06","ipaddress_lo":"127.0.0.1","netmask_lo":"255.0.0.0","macaddress_veth028afe7":"4e:8a:2d:01:7f:0f","macaddress_veth42ffacc":"8a:ec:65:2e:b6:f2","macaddress_vethac0da22":"e2:77:c0:86:dd:7d","macaddress_vethd78747b":"e6:d1:0c:d4:f9:a9","macaddress_vethf42b68f":"56:79:5d:23:c1:fa","ipaddress_virbr0":"192.168.122.1","macaddress_virbr0":"52:54:00:35:c8:71","netmask_virbr0":"255.255.255.0","macaddress_virbr0_nic":"52:54:00:35:c8:71","ipaddress":"172.18.0.1","kernelmajversion":"3.10","kernelrelease":"3.10.0-327.18.2.el7.x86_64","kernelversion":"3.10.0","boardmanufacturer":"Dell Inc.","boardproductname":"0TTH1R","boardserialnumber":".BZ73F5J.CN7016326O008X.","bios_vendor":"Dell Inc.","bios_version":"1.0.21","bios_release_date":"04/26/2012","manufacturer":"Dell Inc.","productname":"PowerEdge C6220","serialnumber":"BZ73F5J","uuid":"4C4C4544-005A-3710-8033-C2C04F46354A","type":"Rack Mount Chassis","memorysize":"23.35 GB","memoryfree":"21.75 GB","swapsize":"11.81 GB","swapfree":"11.81 GB","swapsize_mb":"12096.00","swapfree_mb":"12096.00","memorysize_mb":"23906.50","memoryfree_mb":"22273.37","memorytotal":"23.35 GB","netmask":"255.255.0.0","network_br_14703d60d2bb":"172.18.0.0","network_docker0":"172.17.0.0","network_em1":"10.35.27.128","network_lo":"127.0.0.0","network_virbr0":"192.168.122.0","operatingsystemmajrelease":"7","operatingsystemrelease":"7.2","path":"/root/.gem/bin:/root/.gem/ruby/1.8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/sbin:/usr/sbin:/root/scripts","physicalprocessorcount":1,"processor0":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor1":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor2":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor3":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor4":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor5":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor6":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor7":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor8":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor9":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor10":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processor11":"Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz","processorcount":"12","ps":"ps -ef","puppetversion":"3.6.2","rubysitedir":"/usr/local/share/ruby/site_ruby/","rubyversion":"2.0.0","selinux":"true","selinux_enforced":"true","selinux_policyversion":"28","selinux_current_mode":"enforcing","selinux_config_mode":"enforcing","selinux_config_policy":"unknown","selinux_mode":"unknown","sshrsakey":"AAAAB3NzaC1yc2EAAAADAQABAAABAQDTfHoJ1JJuJl4wwQhGSblWsxaa1rThfOrsFyE9flkwKDoTLYxOnq3OyUWfMOK0cQuDSyBTE8dzflbP9oVFlGikfwCTPVcOtcgstYbrEMlhh8Sgu9xDHmn/2OFO1h84opeeNRtr88TNCPyerS7JPYud9TROBX3moejyIvOn7FFdNsy6NXgS7mNOTUP+4037SnIOMcBOfGv7mtri+Z1CDNjXMbENfO8/5kFSHbnhmpt4o9bC/MveivYXGx9cdSusGCkjUHum8JkB7diOOuaLb7bztlD6eKS61BMN0Ku1tAvqegc3iiUbUGFm/p4Uq3qL5CFcImkT2w40xgrfp0VRZIkZ","sshfp_rsa":"SSHFP 1 1 81c7f3baef736f64012b497c1192dec7f6203169\nSSHFP 1 2 4bb72ddd99b362886c5d27df31b1dd9cd65256ec6f3f82c7f6ebd0ac48e65056","sshecdsakey":"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBUhN+RjwpOQaJl9NZ9rP9RvPRIb3qp3VBQ8s9an1kB4dSV7/9FQzR+ctm+pz4QQQo6kkq1w5hJ+siKgUqwT5k0=","sshfp_ecdsa":"SSHFP 3 1 85048bfa64d381b4f0eb221acb4a5ae27f65debf\nSSHFP 3 2 b9bdfd11388ca68298598cf73184ef72d8b91c73b118344d4b10104c10dbd42d","timezone":"UTC","uniqueid":"230a871b","uptime":"113 days","uptime_days":113,"uptime_hours":2716,"uptime_seconds":9778327,"virtual":"physical","is_virtual":"false"}
Updated by Dominic Cleal over 8 years ago
- Subject changed from fact importing fails to Fact importing fails with NoMethodError: undefined method `first' for nil:NilClass
It would be helpful if you can get more specific information about which interface is failing, and under what circumstances (type of interface, MAC address behaviour) the get_interface_scope
method is returning a nil scope. I can't reproduce this at the moment.
Updated by Ohad Levy over 8 years ago
Dominic Cleal wrote:
It would be helpful if you can get more specific information about which interface is failing, and under what circumstances (type of interface, MAC address behaviour) the
get_interface_scope
method is returning a nil scope. I can't reproduce this at the moment.
with the following code change:
diff --git a/app/models/host/base.rb b/app/models/host/base.rb index 419c568..8869bcf 100644 --- a/app/models/host/base.rb +++ b/app/models/host/base.rb @@ -175,9 +175,14 @@ module Host end parser.interfaces.each do |name, attributes| + begin iface = get_interface_scope(name, attributes).first || interface_class(name).new(:managed => fal # create or update existing interface set_interface(attributes, name, iface) + rescue => e + logger.warn("Failed to process interface: #{name}/#{iface} - #{attributes}") + raise e + end end
the output is:
Failed to process interface: docker0/ - {"ipaddress"=>"172.17.0.1", "macaddress"=>"02:42:68:70:81:52", "netmask"=>"255.255.0.0", "network"=>"172.17.0.0", "link"=>"false", "virtual"=>false}
Updated by Dominic Cleal over 8 years ago
- Has duplicate Bug #16583: error during import_facts when get_interface_scope() returns nil added
Updated by The Foreman Bot over 8 years ago
- Status changed from New to Ready For Testing
- Assignee set to Thomas McKay
- Pull request https://github.com/theforeman/foreman/pull/3856 added
Updated by Dominic Cleal over 8 years ago
- Related to Bug #16073: Changing interfaces on unmanaged hosts leads to an invalid host added
Updated by Dominic Cleal over 8 years ago
- Translation missing: en.field_release set to 160
Updated by The Foreman Bot about 8 years ago
- Pull request https://github.com/theforeman/foreman/pull/3879 added
Updated by Dominic Cleal about 8 years ago
- Status changed from Ready For Testing to Closed
- % Done changed from 0 to 100
Applied in changeset dc2126790aeaa0160f7e9ae6f8f86319b9f60e3d.
Updated by Dominic Cleal about 8 years ago
- Assignee changed from Thomas McKay to Dominic Cleal
Updated by Tomer Brisker almost 8 years ago
- Pull request deleted (
https://github.com/theforeman/foreman/pull/3856)
Actions