Bug 1114978

Summary: cannot run engine-setup to configure standalone websocket proxy
Product: [Retired] oVirt Reporter: Francesco Romani <fromani>
Component: ovirt-engine-coreAssignee: Simone Tiraboschi <stirabos>
Status: CLOSED CURRENTRELEASE QA Contact: Jiri Belka <jbelka>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.5CC: didi, fromani, gklein, iheim, jbelka, rbalakri, stirabos, yeylon
Target Milestone: ---Flags: stirabos: needinfo-
Target Release: 3.5.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: integration
Fixed In Version: ovirt-3.5.0-beta1.1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-10-17 12:26:20 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:
Embargoed:
Bug Depends On:    
Bug Blocks: 1080992    

Description Francesco Romani 2014-07-01 11:25:46 UTC
Description of problem:
While installing packages in order to experiment with http://www.ovirt.org/Features/WebSocketProxy_on_a_separate_host part of the recommended flow is to
separately install just the ovirt-engine-websocket-proxy on a separate host and to run engine-setup on it.

 On the second node:

    Via yum user install only ovirt-engine-websocket-proxy being sure to not install ovirt-engine (if so the engine-setup will run as for an installation with the engine and the websocket-proxy on a single node)
    Then he can launch engine-setup 

The installation went just fine, however engine-setup fails with
$ engine-setup
***L:ERROR Internal error: No module named engine_common

attempts to install the ovirt-engine-setup package will lead to a full ovirt-engine installation, defeating the purpose of the change


Version-Release number of selected component (if applicable):
ovirt-engine-setup-base-3.5.0-0.0.master.20140629172303.git0b16ed7

How reproducible:
100%

Steps to Reproduce:
1. install only ovirt-engine-websocket-proxy and dependencies
2. run engine-setup
3.

Actual results:
engine-setup can't run

Expected results:
engine-setup works

Additional info:

Comment 1 Yedidyah Bar David 2014-07-01 11:32:29 UTC
Can you please try after installing the package ovirt-engine-setup-plugin-ovirt-engine-common ?

Comment 2 Francesco Romani 2014-07-01 11:43:37 UTC
Yes, installing the package solved the engine-setup issue, now it is working

Comment 3 Francesco Romani 2014-07-01 11:57:29 UTC
However, it requires more dependencies:

$ engine-setup 
[ INFO  ] Stage: Initializing
[ INFO  ] Stage: Environment setup
          Configuration files: []
          Log file: /var/log/ovirt-engine/setup/ovirt-engine-setup-20140701134238-qamfge.log
          Version: otopi-1.3.0_master (otopi-1.3.0-0.0.master.20140625.git6b6b75a.fc20)
[ INFO  ] Stage: Environment packages setup
[ INFO  ] Yum Downloading: updates/20/x86_64/primary_db 3.4 M(31%)
[ INFO  ] Stage: Programs detection
[ INFO  ] Stage: Environment setup
[ INFO  ] Stage: Environment customization
          Setup can automatically configure the firewall on this system.
          Note: automatic configuration of the firewall may overwrite current settings.
          Do you want Setup to configure the firewall? (Yes, No) [Yes]: No
          Host fully qualified DNS name of this server [gamabunta.rokugan.lan]: 
[WARNING] Failed to resolve gamabunta.rokugan.lan using DNS, it can be resolved only locally
[ INFO  ] Checking for product updates...
[ INFO  ] No product updates found
          Configure WebSocket Proxy on this machine? (Yes, No) [Yes]: 
[ INFO  ] Stage: Setup validation
[ INFO  ] Stage: Transaction setup
[ INFO  ] Stopping websocket-proxy service
[ INFO  ] Stage: Misc configuration
[ INFO  ] Stage: Package installation
[ INFO  ] Stage: Misc configuration
[ ERROR ] Failed to execute stage 'Misc configuration': Cannot find Jboss at /usr/share/jboss-as
[ INFO  ] Yum Performing yum transaction rollback
[ INFO  ] Stage: Clean up
          Log file is located at /var/log/ovirt-engine/setup/ovirt-engine-setup-20140701134238-qamfge.log
[ INFO  ] Generating answer file '/var/lib/ovirt-engine/setup/answers/20140701134356-setup.conf'
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination
[ ERROR ] Execution of setup failed

Tried to install ovirt-engine-jboss-as after a 'yum search' and a bit of intuition but this installs in /usr/share/ovirt-engine-jboss-as/

and engine-setup is still failing with the error above.

Comment 4 Francesco Romani 2014-07-01 12:41:17 UTC
The above in F20. In F19 it works after the installation of ovirt-engine-setup-plugin-ovirt-engine-common

Comment 5 Simone Tiraboschi 2014-07-01 13:23:16 UTC
websocket proxy indeed shouldn't require ovirt-engine-setup-plugin-ovirt-engine-common cause otherwise you'll need JBoss stuff and so on which are not needed to run just the websocket proxy.
Are you experimenting that problem on fedora 20?

Comment 6 Francesco Romani 2014-07-01 13:29:17 UTC
Simone: yes, https://bugzilla.redhat.com/show_bug.cgi?id=1114978#c3 was on F20

Comment 7 Jiri Belka 2014-07-03 10:47:04 UTC
*** Bug 1115856 has been marked as a duplicate of this bug. ***

Comment 8 Jiri Belka 2014-07-03 10:52:49 UTC
I'm trying to setup ovirt-engine-websocket-proxy on different host than engine is running. thus I don't see sense to have whole set of jboss/engine packages installed.

1. yum install ovirt-engine-setup-base ovirt-engine-websocket-proxy (see BZ1114978)
2. engine-setup

~~~
# engine-setup 
[ INFO  ] Stage: Initializing
[ INFO  ] Stage: Environment setup
          Configuration files: []
          Log file: /var/log/ovirt-engine/setup/ovirt-engine-setup-20140703110715-fwbmar.log
          Version: otopi-1.3.0_master (otopi-1.3.0-0.0.master.20140625.git6b6b75a.el6)
[ INFO  ] Stage: Environment packages setup
[ INFO  ] Stage: Programs detection
[ INFO  ] Stage: Environment setup
[ INFO  ] Stage: Environment customization
          Setup can automatically configure the firewall on this system.
          Note: automatic configuration of the firewall may overwrite current settings.
          Do you want Setup to configure the firewall? (Yes, No) [Yes]: 
[ INFO  ] iptables will be configured as firewall manager.
          Host fully qualified DNS name of this server [websocketproxy.rhev.lab.eng.brq.redhat.com]: 
[WARNING] Failed to resolve websocketproxy.rhev.lab.eng.brq.redhat.com using DNS, it can be resolved only locally
[ INFO  ] Checking for product updates...
[ INFO  ] No product updates found
          Configure WebSocket Proxy on this machine? (Yes, No) [Yes]: 
[ INFO  ] Stage: Setup validation
[ ERROR ] Failed to execute stage 'Setup validation': Cannot get JAVA_HOME make sure supported JRE is installed
[ INFO  ] Stage: Clean up
          Log file is located at /var/log/ovirt-engine/setup/ovirt-engine-setup-20140703110715-fwbmar.log
[ INFO  ] Generating answer file '/var/lib/ovirt-engine/setup/answers/20140703110727-setup.conf'
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination
[ ERROR ] Execution of setup failed
~~~

and now if ovirt-engine and its deps are installed:

~~~
# engine-setup 
[ INFO  ] Stage: Initializing
[ INFO  ] Stage: Environment setup
          Configuration files: ['/etc/ovirt-engine-setup.conf.d/10-packaging-jboss.conf', '/etc/ovirt-engine-setup.conf.d/10-packaging.conf']
          Log file: /var/log/ovirt-engine/setup/ovirt-engine-setup-20140703123206-7j66by.log
          Version: otopi-1.3.0_master (otopi-1.3.0-0.0.master.20140625.git6b6b75a.el6)
[ INFO  ] Stage: Environment packages setup
[ INFO  ] Stage: Programs detection
[ INFO  ] Stage: Environment setup
[ INFO  ] Stage: Environment customization
         
          --== PRODUCT OPTIONS ==--
         
          Configure Engine on this host (Yes, No) [Yes]: No
         
          --== PACKAGES ==--
         
[ INFO  ] Checking for product updates...
[ INFO  ] No product updates found
         
          --== NETWORK CONFIGURATION ==--
         
          Host fully qualified DNS name of this server [websocketproxy.rhev.lab.eng.brq.redhat.com]: 
[WARNING] Failed to resolve websocketproxy.rhev.lab.eng.brq.redhat.com using DNS, it can be resolved only locally
          Setup can automatically configure the firewall on this system.
          Note: automatic configuration of the firewall may overwrite current settings.
          Do you want Setup to configure the firewall? (Yes, No) [Yes]: 
[ INFO  ] iptables will be configured as firewall manager.
         
          --== DATABASE CONFIGURATION ==--
         
         
          --== OVIRT ENGINE CONFIGURATION ==--
         
         
          --== PKI CONFIGURATION ==--
         
         
          --== APACHE CONFIGURATION ==--
         
         
          --== SYSTEM CONFIGURATION ==--
         
          Configure WebSocket Proxy on this machine? (Yes, No) [Yes]:
~~~

This is odd, IMHO it should work like this:
- check what setup plugins are present
- inform/ask user to approve setup of available plugins
- then check plugins deps/related stuff

Does this BZ - BZ1114978 - solves JAVA_HOME issue? If not, I'll file new BZ. Thx!

Comment 9 Simone Tiraboschi 2014-07-03 11:06:11 UTC
I have another patch to move the question about WebSocket proxy configuration under PRODUCT OPTIONS but it depends from another patch that has been merged only this morning.
http://gerrit.ovirt.org/#/c/29178/

Under the configuration preview section than you should find a complete recap.

          --== CONFIGURATION PREVIEW ==--
         
          Application mode                        : both
          Update Firewall                         : True
          Host FQDN                               : f19td3.localdomain
          Datacenter storage type                 : nfs
          Firewall manager                        : firewalld
          Engine database name                    : engine
          Engine database secured connection      : False
          Engine database host                    : localhost
          Engine database user name               : engine
          Engine database host name validation    : False
          Engine database port                    : 5432
          Engine installation                     : True
          NFS setup                               : True
          PKI organization                        : localdomain
          NFS mount point                         : /var/lib/exports/iso-20140703093810
          Configure fence_kdump listener          : True
          NFS export ACL                          : f19td3.localdomain(rw)
          Configure VDSM on this host             : True
          Local storage domain directory          : /var/ext/lib/images
          Set application as default page         : True
          Configure Apache SSL                    : True
          Configure local Engine database         : True
          Configure WebSocket Proxy               : True

The JAVA_HOME issue is new, I agree with you that the whole websocket proxy doesn't require it but I never try it on a system without a JVM.
Please open another BZ for that.

Comment 10 Jiri Belka 2014-07-03 11:58:21 UTC
OK, new BZ for JAVA_HOME issue - BZ1115957.

Comment 11 Jiri Belka 2014-07-15 10:09:10 UTC
Was it included into builds? It doesn't seem so. If not please take back and move to ON_QA only when it a part of a build (we don't not test diffs/source). Thank you.

[root@ovirt ~]# sed -n '28,+6p' /usr/share/ovirt-engine/setup/plugins/ovirt-engine-common/base/dialog/titles.py


from ovirt_engine_setup import constants as osetupcons
from ovirt_engine_setup.engine_common \
    import constants as oengcommcons


[root@ovirt ~]# rpm -qf /usr/share/ovirt-engine/setup/plugins/ovirt-engine-common/base/dialog/titles.py
ovirt-engine-setup-base-3.5.0-0.0.master.20140629172257.git0b16ed7.el6.noarch

[root@ovirt ~]# engine-setup 
***L:ERROR Internal error: No module named engine_common

Comment 12 Simone Tiraboschi 2014-07-15 11:58:39 UTC
Ok, I'm sorry

Comment 13 Jiri Belka 2014-07-22 12:58:32 UTC
ok

ovirt-engine-setup-base-3.5.0-0.0.master.20140715172116.git4687dc1.el6.noarch
ovirt-engine-websocket-proxy-3.5.0-0.0.master.20140715172116.git4687dc1.el6.noarch
ovirt-engine-setup-plugin-websocket-proxy-3.5.0-0.0.master.20140715172116.git4687dc1.el6.noarch
ovirt-engine-lib-3.5.0-0.0.master.20140715172116.git4687dc1.el6.noarch

Comment 14 Sandro Bonazzola 2014-10-17 12:26:20 UTC
oVirt 3.5 has been released and should include the fix for this issue.