Bug 1506547 - Provisioning discovered host from oVirt via Foreman doesn't work
Summary: Provisioning discovered host from oVirt via Foreman doesn't work
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: General
Version: 4.1.6.2
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ovirt-4.3.0
: ---
Assignee: Moti Asayag
QA Contact: Petr Kubica
URL:
Whiteboard:
Depends On:
Blocks: 1537122 1581590 1684170
TreeView+ depends on / blocked
 
Reported: 2017-10-26 10:02 UTC by Petr Kubica
Modified: 2019-03-01 10:16 UTC (History)
5 users (show)

Fixed In Version: ovirt-engine-4.2.8.1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1581590 (view as bug list)
Environment:
Last Closed: 2019-03-01 10:16:51 UTC
oVirt Team: Infra
Embargoed:
rule-engine: ovirt-4.3+
lleistne: testing_ack+


Attachments (Terms of Use)
logs (6.64 KB, application/x-gzip)
2017-11-06 17:24 UTC, Petr Kubica
no flags Details
related satellite log (29.46 KB, text/plain)
2018-01-22 13:00 UTC, Petr Kubica
no flags Details


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 84787 0 master MERGED core: fetch "puppet proxy id" and "puppet ca proxy id" from external hostgroup 2020-08-30 12:45:39 UTC
oVirt gerrit 85198 0 ovirt-engine-4.1 MERGED core: fetch "puppet proxy id" and "puppet ca proxy id" from external hostgroup 2020-08-30 12:45:39 UTC
oVirt gerrit 95401 0 master MERGED core: Ignore Puppet and Puppet CA Proxies if null 2020-08-30 12:45:39 UTC
oVirt gerrit 95419 0 ovirt-engine-4.2 MERGED core: Ignore Puppet and Puppet CA Proxies if null 2020-08-30 12:45:39 UTC
oVirt gerrit 95444 0 master MERGED core: Enable provision of discovered host 2020-08-30 12:45:39 UTC
oVirt gerrit 95447 0 ovirt-engine-4.2 MERGED core: Enable provision of discovered host 2020-08-30 12:45:40 UTC

Description Petr Kubica 2017-10-26 10:02:14 UTC
Description of problem:

Provision discovered host from oVirt doesn't work.
After some investigation I think it was caused an issue during provisioning when if you choose hostgroup which has specified Puppet CA and Puppet Master (necessary for reports to Satellite) Puppet CA and Puppet Master wasn't applied on provisioned host when provisioning from oVirt.


Version-Release number of selected component (if applicable):
satellite-6.2.12-5.0.el7sat.noarch
ovirt-engine-4.1.6.2-0.1.el7.noarch

How reproducible:
Always

Steps to Reproduce:
1. Have full entitled satellite (domain, subnet, repositories, puppet, activation keys, multiple hostgroup - nested, content-views... with ovirt provisioning plugin and discovery plugin) 
2. Add Satellite to external provider and add oVirt as compute resource in Satellite
3. Discover host and try to provision that host from oVirt

Passed variables to provisioning:
 
Changes:        OLD values NEW values
Managed 	false      true
Build 	        false      true
Name 	       *FILTERED*  *FILTERED*
Hostgroup 	N/A        rhel7/rhv4/host
Environment 	N/A        production
Architecture 	N/A        x86_64
Operatingsystem N/A        RedHat 7.4
Medium 	        N/A        RHEL7.4
Ptable  	N/A        Kickstart default
Root pass 	N/A        *FILTERED*
Content source 	N/A        N/A
Content view 	N/A        N/A
Lifecycle environment N/A  N/A
Owner type 	N/A        User
Owner           N/A        N/A
Grub pass 		   *FILTERED*


Actual results:
Discovered host is sucessfully provisioned but the host isn't reporting anything into Satellite

- provisioning of that host stuck at Installing OS

Comment 1 Oved Ourfali 2017-11-01 09:15:53 UTC
Petr - can you attach logs on both sides?
Can you send us the connection details offline?

Comment 2 Petr Kubica 2017-11-06 17:24:09 UTC
Created attachment 1348695 [details]
logs

tailed logs (engine & satellite) - from begin to end of provisioning a host

Comment 3 Petr Kubica 2018-01-22 12:59:57 UTC
Still not working
ovirt-engine-4.1.9-0.2.el7.noarch
satellite 6.2.12

steps:
- install clean 4.1.9 engine
- add external provider to engine
- add compute resources into satellite
- discover some hosts
- add host in engine from external providers - choose discovered

foreman-tail
2018-01-22 07:54:12 99e1e8ba [app] [W] Fetch TFTP boot files for mac525400049282.virt.teranode.cz task failed with the following error: undefined method `path' for nil:NilClass
 | NoMethodError: undefined method `path' for nil:NilClass

engine.log
2018-01-22 12:54:12,203Z ERROR [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (default task-52) [06eaf8f3-bed2-4a89-917c-da0a61ad08a6] EVENT_ID: USER_FAILED_ADD_VDS(104), Correlation ID: 06eaf8f3-bed2-4a89-917c-da0a61ad08a6, Job ID: f96c3c2a-ff9d-48ca-878f-07d5f7738203, Call Stack: null, Custom ID: null, Custom Event ID: -1, Message: Failed to add Host <UNKNOWN> (User: admin@internal-authz).


attached related satellite.log

Comment 4 Red Hat Bugzilla Rules Engine 2018-01-22 13:00:02 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 5 Petr Kubica 2018-01-22 13:00:29 UTC
Created attachment 1384435 [details]
related satellite log

Comment 6 Petr Kubica 2018-01-22 13:14:13 UTC
also it isn't working with 
rhv-release-4.1.9-2

Comment 7 Yaniv Bronhaim 2018-01-22 13:46:06 UTC
Hi Petr,
Can you please check if the workaround that mentioned in https://access.redhat.com/solutions/2475281 solve this exception?

Comment 8 Martin Perina 2018-02-12 11:32:54 UTC
(In reply to Yaniv Bronhaim from comment #7)
> Hi Petr,
> Can you please check if the workaround that mentioned in
> https://access.redhat.com/solutions/2475281 solve this exception?

Any updates?

Comment 11 Yaniv Bronhaim 2018-03-15 05:50:04 UTC
In reply to comment #3 - the issue seems to duplicate Bug #1364544 that is fixed in satellite 6.2.5. Petr, can you please re-verify? Moving back to ON-QA and change release 4.3

Comment 13 Petr Kubica 2018-04-22 17:08:35 UTC
Passing Puppet CA and Puppet Master works perfectly but still it's not possible to add discovered host into engine. After some investigation I think it's caused by undefined method in ovirt_provision_plugin on satellite side (see exception)[1]

Version:
ovirt-engine-4.2.3.2-0.1.el7.noarch

satellite-6.3.0-23.0.el7sat.noarch
tfm-rubygem-ovirt_provision_plugin-1.0.2-1.fm1_15.el7sat.noarch
tfm-rubygem-rbovirt-0.1.4-1.el7sat.noarch
foreman-ovirt-1.15.6.34-1.el7sat.noarch


[1] 2018-04-22 18:53:22 8576e848 [app] [W] Action failed
 | NoMethodError: undefined method `error?' for #<Host::Managed:0x007f5b5afd0220>
 | Did you mean?  errors
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activemodel-4.2.6/lib/active_model/attribute_methods.rb:433:in `method_missing'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/ovirt_provision_plugin-1.0.2/app/models/concerns/ovirt_provision_plugin/host_extensions.rb:12:in `ovirt_host_callback'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/ovirt_provision_plugin-1.0.2/app/models/concerns/ovirt_provision_plugin/report_extensions.rb:11:in `new_report_callback'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:253:in `block in conditional'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:506:in `block in call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:506:in `each'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:506:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_commit_callbacks'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:314:in `committed!'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/transaction.rb:89:in `commit_records'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/transaction.rb:153:in `commit'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/transaction.rb:175:in `commit_transaction'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/transaction.rb:194:in `within_new_transaction'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `transaction'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:220:in `transaction'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:348:in `with_transaction_returning_status'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:286:in `block in save'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:301:in `rollback_active_record_state!'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/transactions.rb:285:in `save'
 | /usr/share/foreman/app/models/concerns/foreman/sti.rb:29:in `save_with_type'
 | /usr/share/foreman/app/services/report_importer.rb:136:in `create_report_and_logs'
 | /usr/share/foreman/app/services/config_report_importer.rb:13:in `create_report_and_logs'
 | /usr/share/foreman/app/services/report_importer.rb:38:in `import'
 | /usr/share/foreman/app/services/report_importer.rb:20:in `import'
 | /usr/share/foreman/app/models/config_report.rb:27:in `import'
 | /usr/share/foreman/app/controllers/api/v2/config_reports_controller.rb:40:in `create'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/abstract_controller/base.rb:198:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/rendering.rb:10:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:117:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/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'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:312:in `block in halting'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:497:in `block in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/app/controllers/concerns/application_shared.rb:15:in `set_timezone'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:312:in `block in halting'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:497:in `block in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/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'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:312:in `block in halting'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:497:in `block in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /usr/share/foreman/app/controllers/concerns/foreman/controller/topbar_sweeper.rb:12:in `set_topbar_sweeper_controller'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:432:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:312:in `block in halting'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:497:in `block in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:498:in `block (2 levels) in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/audited-4.4.1/lib/audited/sweeper.rb:14:in `around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:455:in `public_send'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:455:in `block in make_lambda'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:312:in `block in halting'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:497:in `block in around'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:81:in `run_callbacks'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/abstract_controller/callbacks.rb:19:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/rescue.rb:29:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/notifications.rb:164:in `block in instrument'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/notifications.rb:164:in `instrument'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/abstract_controller/base.rb:137:in `process'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionview-4.2.6/lib/action_view/rendering.rb:30:in `process'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal.rb:196:in `dispatch'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_controller/metal.rb:237:in `block in action'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:43:in `serve'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/routing/mapper.rb:49:in `serve'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:43:in `block in serve'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:30:in `each'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:30:in `serve'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:817:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/apipie-rails-0.5.6/lib/apipie/static_dispatcher.rb:65:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/apipie-rails-0.5.6/lib/apipie/extractor/recorder.rb:136:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/apipie-rails-0.5.6/lib/apipie/middleware/checksum_in_headers.rb:27:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/etag.rb:24:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/conditionalget.rb:38:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/head.rb:13:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.4.5.58/lib/katello/params_parser_wrapper.rb:12:in `call'
 | /usr/share/foreman/lib/middleware/catch_json_parse_errors.rb:8:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/flash.rb:260:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/session/abstract/id.rb:225:in `context'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/session/abstract/id.rb:220:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/cookies.rb:560:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/query_cache.rb:36:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:88:in `__run_callbacks__'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:81:in `run_callbacks'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/rack/logger.rb:38:in `call_app'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/rack/logger.rb:22:in `call'
 | /usr/share/foreman/lib/middleware/tagged_logging.rb:18:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/request_id.rb:21:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/methodoverride.rb:22:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/runtime.rb:18:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/activesupport-4.2.6/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/actionpack-4.2.6/lib/action_dispatch/middleware/static.rb:120:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/sendfile.rb:113:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/secure_headers-3.4.1/lib/secure_headers/middleware.rb:12:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/engine.rb:518:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/application.rb:165:in `call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/railtie.rb:194:in `public_send'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/railties-4.2.6/lib/rails/railtie.rb:194:in `method_missing'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/urlmap.rb:66:in `block in call'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/urlmap.rb:50:in `each'
 | /opt/rh/rh-ror42/root/usr/share/gems/gems/rack-1.6.2/lib/rack/urlmap.rb:50:in `call'
 | /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/rack/thread_handler_extension.rb:77:in `process_request'
 | /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/request_handler/thread_handler.rb:140:in `accept_and_process_next_request'
 | /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/request_handler/thread_handler.rb:108:in `main_loop'
 | /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/request_handler.rb:441:in `block (3 levels) in start_threads'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'
2018-04-22 18:53:22 8576e848 [app] [I]   Rendered api/v2/errors/standard_error.json.rabl within api/v2/layouts/error_layout (6.5ms)
2018-04-22 18:53:22 8576e848 [app] [I] Completed 500 Internal Server Error in 1286ms (Views: 14.2ms | ActiveRecord: 17.8ms)

Comment 14 Red Hat Bugzilla Rules Engine 2018-04-22 17:08:41 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 16 Moti Asayag 2018-04-23 12:21:13 UTC
Additional information about the error reported on comment 13, the source that matches that error is:

https://github.com/masayag/ovirt_provision_plugin/blob/master/app/models/concerns/ovirt_provision_plugin/host_extensions.rb#L15

Where the "def error?" method doesn't exist.

There seems not to be such a method, however, that code was included in previous versions, it was introduced by commit fda1c48c28866c1fff57e0ec1d0840674a843699 on 2014.

Comment 17 Petr Kubica 2018-04-23 12:36:06 UTC
My steps were:
1. Install clean Satellite from CDN 6.3
2. Populate Satellite (domain, pxe, dhcp, installation media, operating system, puppet environment, hostgroup)
3. modify provisioning template due to local repositories (replacing subscription manager to repositories)
4. Add satellite as external provider into engine
5. Add engine as compute resource into satellite (tried /ovirt-engine/api/ and /ovirt-engine/api/v3)
6. Boot undiscovered machine, wait for discovering in satellite
7. In Engine try to add host from external provider (satellite/foreman) and check discovered host.

Actual result:
Host will automatically reboot, started normal provisioning, installing puppet and katello agent.
In satellite are reports from hosts, exception on satellite side was rised and host stays in Installation OS

Comment 18 Petr Kubica 2018-04-23 12:39:08 UTC
Sorry something was mistakenly erased: After reboot at the end of provisioning, In satellite are appearing reports from installed agents...

Comment 19 Moti Asayag 2018-04-24 12:04:25 UTC
Two PRs are required to fix the issues reported on this bug, both on satellite derivative side:

For the ovirt provision plugin:
https://github.com/theforeman/ovirt_provision_plugin/pull/14

For rbovirt gem (former v3 interaction with engine):
https://github.com/abenari/rbovirt/pull/124

Comment 20 Moti Asayag 2018-04-24 14:36:29 UTC
Also this PR for ovirtsdk3 branch:

https://github.com/theforeman/ovirt_provision_plugin/pull/15

ovirtsdk3 uses the rbovirt gem to interact with the engine, therefore the next PR should be included as well on the same env:

https://github.com/abenari/rbovirt/pull/124

Both PRs makes sure that the override_iptables property will be sent as 'true' which is the default in the UI. That property instruct the ovirt-engine to configure the firewalls on the host to allow a proper interaction with it.

However, the latest version of ovirt_provision_plugin doesn't pass 'true' for that property, so when tested, I assume the engine won't be able to communicate with the host after installation.
In that case we'll have to modify the request of reinstall host and provide 'true' for override_iptables attribute:

https://github.com/theforeman/ovirt_provision_plugin/blob/master/app/models/concerns/ovirt_provision_plugin/host_extensions.rb#L29

Comment 21 Petr Kubica 2019-02-28 15:47:15 UTC
Provisioning a host with custom installation media working as expected.
Verified in 
tfm-rubygem-ovirt_provision_plugin-2.0.3-1.el7sat.noarch
ovirt-engine-4.2.8.3-0.1.el7ev.noarch
satellite-6.4.2-2.el7sat.noarch

Provisioning a host with synced installation media from CDN doesn't work
Created separated bug for it:
https://bugzilla.redhat.com/show_bug.cgi?id=1684170

Comment 22 Sandro Bonazzola 2019-03-01 10:16:51 UTC
This bugzilla is included in oVirt 4.3.0 release, published on February 4th 2019.

Since the problem described in this bug report should be
resolved in oVirt 4.3.0 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.