Bug 1177290

Summary: ovirt-engine not installable on CentOS 6: broken dependency novnc
Product: [oVirt] ovirt-engine Reporter: Esa Varemo <esa>
Component: GeneralAssignee: Sandro Bonazzola <sbonazzo>
Status: CLOSED CURRENTRELEASE QA Contact: Karolína Hajná <khajna>
Severity: high Docs Contact:
Priority: unspecified    
Version: ---CC: apevec, bugs, didi, ecohen, gklein, khajna, lsurette, michal.skrivanek, pstehlik, rbalakri, rzayev.sehriyar, sbonazzo, vfeenstr, yeylon
Target Milestone: ovirt-3.6.0-rcKeywords: Regression
Target Release: 3.6.0Flags: rule-engine: ovirt-3.6.0+
rule-engine: blocker+
ylavi: planning_ack+
rule-engine: devel_ack+
rule-engine: testing_ack+
Hardware: Unspecified   
OS: Linux   
Whiteboard: integration
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-27 07:48:49 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:
Attachments:
Description Flags
Full output of `yum install ovirt-engine` none

Description Esa Varemo 2014-12-25 22:13:07 UTC
Created attachment 973088 [details]
Full output of `yum install ovirt-engine`

Description of problem:

It is impossible to install ovirt-engine on CentOS 6 as it has a dependency on novnc, which not available. 

https://admin.fedoraproject.org/pkgdb/package/novnc/

Novnc is an EPEL package, which has been retired in EPEL 6 with this message: http://pkgs.fedoraproject.org/cgit/novnc.git/commit/?h=el6&id=dbea8f0ee4e1fe9f26733647e8a1e5b02351f078

This blocks installing ovirt-engine on CentOS 6 (and likely RHEL 6 as well).

Version-Release number of selected component (if applicable):
ovirt-engine-3.5.0.1-1.el6

How reproducible:
Always

Steps to Reproduce:
1. Install CentOS 6

2. Install ovirt-release35
yum install http://plain.resources.ovirt.org/pub/yum-repo/ovirt-release35.rpm

3. Try to install ovirt-engine
yum install ovirt-engine

Actual results:

[root@ovirtengine ~]# yum install ovirt-engine
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: ftp.funet.fi
 * extras: ftp.funet.fi
 * ovirt-3.5: ftp.snt.utwente.nl
 * ovirt-3.5-epel: mirror.bacloud.com
 * ovirt-3.5-jpackage-6.0-generic: sunsite.informatik.rwth-aachen.de
 * updates: ftp.funet.fi
Resolving Dependencies
--> Running transaction check
---> Package ovirt-engine.noarch 0:3.5.0.1-1.el6 will be installed
< cut >
--> Processing Dependency: novnc for package: ovirt-engine-backend-3.5.0.1-1.el6.noarch
---> Package perl-Pod-Escapes.x86_64 1:1.04-136.el6_6.1 will be installed
---> Package setools-libs.x86_64 0:3.3.7-4.el6 will be installed
--> Finished Dependency Resolution
Error: Package: ovirt-engine-backend-3.5.0.1-1.el6.noarch (ovirt-3.5)
           Requires: novnc
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Expected results:

Yum installs ovirt-engine without dependency errors

Additional info:

Comment 1 Shahriyar Rzayev 2014-12-29 09:00:12 UTC
Same problem still exists on Centos 6.5 with oVirt3.5

--> Finished Dependency Resolution
Error: Package: ovirt-engine-backend-3.5.0.1-1.el6.noarch (ovirt-3.5)
           Requires: novnc
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest


Non official workaround to build rpm from source..Steps included:
Dependency installs:

[root@ovirt_engine ~]# yum install rpm-build rpmdevtools cpp make gcc python2-devel python-websockify

1. Creating RPM:
[root@ovirt_engine ~]# useradd mockbuild
[root@ovirt_engine ~]# su - mockbuild
[mockbuild@ovirt_engine ~]$ wget http://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/RHEV/SRPMS/novnc-0.4-7.el6ev.src.rpm
[mockbuild@ovirt_engine ~]$ ls
novnc-0.4-7.el6ev.src.rpm
[mockbuild@ovirt_engine ~]$ rpmdev-setuptree
[mockbuild@ovirt_engine ~]$ rpm -Uvh novnc-0.4-7.el6ev.src.rpm
[mockbuild@ovirt_engine rpmbuild]$ cd SPECS/
[mockbuild@ovirt_engine SPECS]$ rpmbuild -ba novnc.spec

2. Installing RPM:
rpm -ivh /home/mockbuild/rpmbuild/RPMS/noarch/novnc-0.4-7.el6.noarch.rpm
Preparing...                ########################################### [100%]
   1:novnc                  ########################################### [100%]

You will be able to proceed with your install.

Comment 2 Yedidyah Bar David 2014-12-30 13:57:57 UTC
(In reply to Shahriyar Rzayev from comment #1)
> Same problem still exists on Centos 6.5 with oVirt3.5
> 
> --> Finished Dependency Resolution
> Error: Package: ovirt-engine-backend-3.5.0.1-1.el6.noarch (ovirt-3.5)
>            Requires: novnc
>  You could try using --skip-broken to work around the problem
>  You could try running: rpm -Va --nofiles --nodigest
> 
> 
> Non official workaround to build rpm from source..Steps included:
> Dependency installs:
> 
> [root@ovirt_engine ~]# yum install rpm-build rpmdevtools cpp make gcc
> python2-devel python-websockify
> 
> 1. Creating RPM:
> [root@ovirt_engine ~]# useradd mockbuild
> [root@ovirt_engine ~]# su - mockbuild
> [mockbuild@ovirt_engine ~]$ wget
> http://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/RHEV/SRPMS/
> novnc-0.4-7.el6ev.src.rpm

Thanks.

We now built this in jenkins [1] and updated the repo, should be ok for now (once the mirrors are synced).

[1] http://jenkins.ovirt.org/view/All/job/manual-build-tarball/448/

Not sure why epel added the dependency on openstack-nova-novncproxy, the above package does not have it.

Also not sure what we want to do next - officially provide it in ovirt (and then we want to maintain its source somehow), talk with epel about unretiring it, whatever.

Comment 3 Yedidyah Bar David 2015-01-05 09:32:02 UTC
I now compared the latest tree prior to retiring novnc in epel6 [1] with the sources of the rhev version mentioned above [2].

It seems to me that epel6 added to the source package also stuff to integrate it with openstack, which caused the problem leading them eventually to retire.

We (oVirt) do not need it because we have our own websocket-proxy.

I think the right track to take will be to package novnc itself, without additions/integration/etc. If centos/epel, openstack, or someone else, then wants to also package and maintain something like openstack-nova-novncproxy, it should probably be done in a separate package.

This can be done either by epel/centos or by us (ovirt). It can be based on the existing [2] (which is really very small). Since this way it's not tied or even related to oVirt, it's more natural imo to do that in centos or epel in principle - not sure about the actual process.

[1] http://pkgs.fedoraproject.org/cgit/novnc.git/commit/?h=el6&id=efec89c4a254aeac90a9bf2e0076c1b1eea858b7

[2] http://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/RHEV/SRPMS/novnc-0.4-7.el6ev.src.rpm

Comment 4 Sandro Bonazzola 2015-01-07 15:27:22 UTC
Re-targeted to 3.6 since a workaround has been provided for 3.5.z:
novnc is now provided by ovirt repo while we decide how to handle it for 3.6.

Comment 5 Sandro Bonazzola 2015-01-08 16:04:43 UTC
Hi Alan, I see you have asked acls for novnc on el6 [1]

Can you please add a note here when novnc will be available again in epel 6?
Thanks

[1] https://lists.fedoraproject.org/pipermail/scm-commits/Week-of-Mon-20150105/1484085.html

Comment 6 Alan Pevec 2015-01-09 10:42:10 UTC
Please test a scratch build of latest Fedora version which I plan to import to el6 after unretiring:

https://kojipkgs.fedoraproject.org//work/tasks/8614/8548614/novnc-0.4-9.el6.noarch.rpm

Comment 7 Sandro Bonazzola 2015-01-09 12:05:40 UTC
(In reply to Alan Pevec from comment #6)
> Please test a scratch build of latest Fedora version which I plan to import
> to el6 after unretiring:
> 
> https://kojipkgs.fedoraproject.org//work/tasks/8614/8548614/novnc-0.4-9.el6.
> noarch.rpm

Seems to work fine for me.

Comment 8 Alan Pevec 2015-01-12 10:52:03 UTC
Tracking in
https://trello.com/c/ZWOni2aV/23-unretire-novnc-in-epel6

Comment 9 Sandro Bonazzola 2015-01-26 14:55:28 UTC
Pending on https://fedorahosted.org/rel-eng/ticket/6078

Comment 10 Fedora Update System 2015-01-26 20:35:55 UTC
novnc-0.4-9.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/novnc-0.4-9.el6

Comment 11 Alan Pevec 2015-01-26 21:02:11 UTC
^ please test & give karma!

Comment 12 Sandro Bonazzola 2015-02-02 12:24:44 UTC
Alan: done

Comment 13 Fedora Update System 2015-02-14 02:54:50 UTC
novnc-0.4-9.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Sandro Bonazzola 2015-02-20 11:07:43 UTC
Automated message: can you please update doctext or set it as not required?

Comment 15 Red Hat Bugzilla Rules Engine 2015-09-22 07:43:31 UTC
This bug report has Keywords: Regression or TestBlocker.
Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.

Comment 16 Karolína Hajná 2015-11-13 12:09:25 UTC
Verified on ovirt-engine-3.6.0.3-1.el6.noarch

Comment 17 Sandro Bonazzola 2015-11-27 07:48:49 UTC
Since oVirt 3.6.0 has been released, moving from verified to closed current release.