Bug 1036061

Summary: [RHEVH] RHEVH upgrade failed ... ImportError: No module named puppet.puppet_page .
Product: Red Hat Enterprise Linux 6 Reporter: Fabian Deutsch <fdeutsch>
Component: ovirt-nodeAssignee: Ryan Barry <rbarry>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 6.5CC: acathrow, bsarathy, cboyle, cshao, gouyang, hadong, hannsj_uhl, huiwa, iheim, jboggs, leiwang, lsong, mburns, mpavlik, ovirt-maint, rbarry, syeghiay, yaniwang, ycui, yeylon
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: ovirt-node-3.0.1-8.el6 Doc Type: Bug Fix
Doc Text:
Upgrading the hypervisor was failing with the following error message: "No module named puppet.puppet_page" This occurre because Specfile definitions were allowing autoinstall files for plugins to be placed onto the base image (where the plugins are not present). This is no longer possible, and autoinstall scripts for all current and future plugins should now stay in their appropriate packages where they belong, rather than the base image.
Story Points: ---
Clone Of: 1035797 Environment:
Last Closed: 2014-01-21 19:38:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1035797    
Bug Blocks:    

Description Fabian Deutsch 2013-11-29 10:05:18 UTC
+++ This bug was initially created as a clone of Bug #1035797 +++

Description of problem:
RHEVM reports that RHEVH upgrade failed 

Host rhevh_bug installation failed. Unexpected error during execution: Traceback (most recent call last): File "/etc/ovirt-config-boot.d/puppet_autoinstall.py", line 20, in <module> from ovirt.node.setup.puppet.puppet_page import * ImportError: No module named puppet.puppet_page .

upgrade from rhev-hypervisor6-6.5-20131121.0.el6ev 
to
RHEV Hypervisor - 6.5 - 20131127.0.el6
using RHEVM

Version-Release number of selected component (if applicable):
Red Hat Enterprise Virtualization Manager Version: 3.3.0-0.37.beta1.el6ev


How reproducible:


Steps to Reproduce:
1. add rhev-hypervisor6-6.5-20131121.0.el6ev to 3.3 cluster
2. install rpm with RHEV Hypervisor - 6.5 - 20131127.0.el6 to RHEVM
3. put host to maintenance run upgrade

Actual results:
install failed, despite failed install host is upgraded and gets UP after clicking activate

Expected results:
successful upgrade with no error

Additional info:
2013-11-28 14:28:14,535 ERROR [org.ovirt.engine.core.utils.ssh.SSHDialog] (pool-4-thread-48) SSH error running command root.66.13:'/usr/share/vdsm-reg/vdsm-upgrade': java.lang.RuntimeException: Unexpected error during execution: Traceback (most recent call last):
  File "/etc/ovirt-config-boot.d/puppet_autoinstall.py", line 20, in <module>
    from ovirt.node.setup.puppet.puppet_page import *
ImportError: No module named puppet.puppet_page

	at org.ovirt.engine.core.utils.ssh.SSHDialog.executeCommand(SSHDialog.java:330) [utils.jar:]
	at org.ovirt.engine.core.bll.OVirtNodeUpgrade.execute(OVirtNodeUpgrade.java:203) [bll.jar:]
	at org.ovirt.engine.core.bll.InstallVdsCommand.upgradeNode(InstallVdsCommand.java:243) [bll.jar:]
	at org.ovirt.engine.core.bll.InstallVdsCommand.executeCommand(InstallVdsCommand.java:103) [bll.jar:]
	at org.ovirt.engine.core.bll.CommandBase.executeWithoutTransaction(CommandBase.java:1134) [bll.jar:]
	at org.ovirt.engine.core.bll.CommandBase.executeActionInTransactionScope(CommandBase.java:1219) [bll.jar:]
	at org.ovirt.engine.core.bll.CommandBase.runInTransaction(CommandBase.java:1895) [bll.jar:]
	at org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInSuppressed(TransactionSupport.java:174) [utils.jar:]
	at org.ovirt.engine.core.utils.transaction.TransactionSupport.executeInScope(TransactionSupport.java:116) [utils.jar:]
	at org.ovirt.engine.core.bll.CommandBase.execute(CommandBase.java:1239) [bll.jar:]
	at org.ovirt.engine.core.bll.CommandBase.executeAction(CommandBase.java:362) [bll.jar:]
	at org.ovirt.engine.core.bll.MultipleActionsRunner.executeValidatedCommand(MultipleActionsRunner.java:175) [bll.jar:]
	at org.ovirt.engine.core.bll.MultipleActionsRunner.RunCommands(MultipleActionsRunner.java:156) [bll.jar:]
	at org.ovirt.engine.core.bll.MultipleActionsRunner$1.run(MultipleActionsRunner.java:94) [bll.jar:]
	at org.ovirt.engine.core.utils.threadpool.ThreadPoolUtil$InternalWrapperRunnable.run(ThreadPoolUtil.java:71) [utils.jar:]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_45]
	at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_45]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
	at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]

Comment 1 Ryan Barry 2013-12-02 18:28:26 UTC
I'll look over the specfiles.

I don't see a reason why puppet_autoinstall would be present at all on an image without the puppet plugin installed, since it should properly be tagged as part of ovirt-node-plugin-puppet.

Comment 2 Ryan Barry 2013-12-04 22:23:42 UTC
I haven't managed to reproduce this upstream.

I'm going to dissect the RPM RHEVM passes tomorrow to see if I can find any reason why a file from the puppet plugin would be referenced in a non-puppet build.

Comment 4 Ryan Barry 2013-12-05 14:52:57 UTC
Just a specfile problem. The excludes should now be broad enough to cover everything, and future autoinstall files with the same naming conventions.

Comment 5 Fabian Deutsch 2013-12-10 12:28:29 UTC
*** Bug 1035797 has been marked as a duplicate of this bug. ***

Comment 7 Cheryn Tan 2014-01-08 05:35:56 UTC
This bug is currently attached to errata RHBA-2013:15277. If this change is not to be documented in the text for this errata please either remove it from the errata, set the requires_doc_text flag to minus (-), or leave a "Doc Text" value of "--no tech note required" if you do not have permission to alter the flag.

Otherwise to aid in the development of relevant and accurate release documentation, please fill out the "Doc Text" field above with these four (4) pieces of information:

* Cause: What actions or circumstances cause this bug to present.
* Consequence: What happens when the bug presents.
* Fix: What was done to fix the bug.
* Result: What now happens when the actions or circumstances above occur. (NB: this is not the same as 'the bug doesn't present anymore')

Once filled out, please set the "Doc Type" field to the appropriate value for the type of change made and submit your edits to the bug.

For further details on the Cause, Consequence, Fix, Result format please refer to:
https://bugzilla.redhat.com/page.cgi?id=fields.html#cf_release_notes

Thank you for your help.

Comment 8 haiyang,dong 2014-01-08 09:38:41 UTC
I could reproduce this issue in rhev-hypervisor6-6.5-20131121.0.el6ev, also this bug has been fixed in the follow version:
rhev-hypervisor6-6.5-20140102.0.el6ev.noarch.rpm
ovirt-node-3.0.1-13.el6_5.noarch

Test steps:
Steps to Reproduce:
1. add rhev-hypervisor6-6.5-20140102.0.el6ev to 3.3 cluster
2. install rpm with rhev-hypervisor6-6.5-20140102.0.el6ev.noarch.rpm  to RHEVM
3. put host to maintenance run upgrade

The issue for " ImportError: No module named puppet.puppet_page " has been fixed in ovirt-node-3.0.1-13.el6_5.noarch, but i met another issue "RHEVH upgrade failed ... Unexpected error during execution: Traceback (most recent call last):
  File "/etc/ovirt-config-boot.d/rhn_autoinstall.py", line 55, in <module>
    "rhn.password": cfg['password'],
KeyError: 'password' "

For this keyerror issue, i have report bug 1045326 to track it. so this bug has been fixed in ovirt-node-3.0.1-13.el6_5.noarch, change the status into "verified".

Comment 9 Charlie 2014-01-14 22:43:38 UTC
Hi could you please give me a quick synopsis of the fix to this problem? Thanks

Comment 10 Ryan Barry 2014-01-15 00:05:17 UTC
Specfile definitions allowed autoinstall files for plugins to sneak onto the base image (where the plugins aren't present). This is no longer possible, and autoinstall scripts for all current and future plugins should now stay in their appropriate packages where they belong rather than the base image.

Comment 12 errata-xmlrpc 2014-01-21 19:38:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

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

http://rhn.redhat.com/errata/RHBA-2014-0033.html