Bug 1018947 - Yum update to oVirt 3.3 from 3.1.0 fails on CentOS 6.4 with EPEL dependency on python-inotify
Summary: Yum update to oVirt 3.3 from 3.1.0 fails on CentOS 6.4 with EPEL dependency o...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: oVirt
Classification: Retired
Component: ovirt-engine-installer
Version: 3.3
Hardware: Unspecified
OS: Linux
medium
medium
Target Milestone: ---
: 3.4.1
Assignee: Sandro Bonazzola
QA Contact: Meni Yakove
URL:
Whiteboard: integration
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-10-14 18:48 UTC by important
Modified: 2014-05-08 13:35 UTC (History)
20 users (show)

Fixed In Version:
Clone Of: 1009100
: 1018950 (view as bug list)
Environment:
Last Closed: 2014-05-08 13:35:41 UTC
oVirt Team: ---
Embargoed:


Attachments (Terms of Use)
ovirt engine 3.3 on CentOS 6.4 installed package list (36.14 KB, text/plain)
2013-10-16 21:48 UTC, important
no flags Details
ovirt node 3.3 on CentOS 6.4 installed package list (45.85 KB, text/plain)
2013-10-16 22:07 UTC, important
no flags Details


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 21954 0 None None None Never
oVirt gerrit 25882 0 master ABANDONED packaging: require epel-release on el6 Never
oVirt gerrit 26330 0 master MERGED packaging: add required packages... Never

Description important 2013-10-14 18:48:18 UTC
Description of problem:



Version-Release number of selected component (if applicable):
 oVirt 3.3.0-4 on Centos 6.4, all nodes Centos 6.4

How reproducible:
In oVirt WUI.
Maybe some prerequisite steps are needed:
Install oVirt 3.2. create some VMs, export some of them, delete them from oVirt, upgrade to 3.3 beta (or RC), import VMs, restart DB(or whole oVirt server), check VMs (You should see that some of them are missing) 

Steps to Reproduce:
1. Install CentOS 6.4 x64 minimal
2. yum update
3. add ovirt repo
   cd /etc/yum.repos.d
   wget -q http://dev.centos.org/centos/6/ovirt/ovirt.repo

4. yum -y upgrade - nothing to upgrade
5. Reboot
6. Add system to oVirt 3.3 engine's cluster - many installs of ovirt 3.1.0x packages.
7. Engine complains that the new node isn't compatible with ovirt 3.3.
8. yum update
   Unable to resolve dependency on python-inotify:





Actual results:
yum update
...
--> Processing Dependency: python-inotify for package: vdsm-4.12.1-2.el6.x86_64
--> Running transaction check
---> Package perl-hivex.x86_64 0:1.3.3-4.2.el6 will be installed
---> Package vdsm.x86_64 0:4.12.1-2.el6 will be an update
--> Processing Dependency: python-inotify for package: vdsm-4.12.1-2.el6.x86_64
--> Finished Dependency Resolution
Error: Package: vdsm-4.12.1-2.el6.x86_64 (ovirt-stable)
           Requires: python-inotify
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest


Expected results:

Package dependencies resolve using CentOS and oVirt sources.

Additional info:

Comment 1 important 2013-10-14 19:01:33 UTC
Sorry, bad form - there are some extra text blocks in their from the ticket I cloned.

Please ignore the sections "How reproducible:" and "Maybe some prerequisite steps are needed:"

Again, sorry for the noise in the bug report.

Comment 2 Itamar Heim 2013-10-15 00:25:39 UTC
title should be from 3.2, right?
i assume the issue is not with the engine, but with the hosts since the issue is with a vdsm dep.

Comment 3 Assaf Muller 2013-10-15 09:41:27 UTC
To the reporter - Could you try adding the EPEL repo on your failing host and see if can get python-inotify that way?

Comment 4 important 2013-10-16 17:54:56 UTC
Yes, adding the EPEL repo on the struggling host node allowed all of the dependencies to be met and the software updated.

I asked about this in the IRC channel and someone there suggested that I file a bug.

Comment 5 important 2013-10-16 17:56:40 UTC
Itamar - it was from 3.0, which came in from the oVirt/CentOS package set, to 3.3

Comment 6 Itamar Heim 2013-10-16 19:40:30 UTC
well, ovirt 3.0 .el6 was from dreyou repo? the first ovirt version for .el6 was 3.2.1...
more than that, please note we also only test one version upgrade at a time.
so not sure what will happen post your dependency issue...

Comment 7 important 2013-10-16 21:17:59 UTC
I went back to my notes -  I was using http://dev.centos.org/centos/6/ovirt/ovirt.repo as my initial Node source for ovirt packages (such as ovirt-engine-setup-3.1.0-3.26.3.el6.centos.alt.noarch.rpm), but the node software was mainly delivered by the Engine.

The Engine used two repo's EPEL and oVirt Releases:

http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 
http://ovirt.org/releases/ovirt-release-el.noarch.rpm

It looks like the Engine couldn't resolve software dependencies for the Node it was installing to.  Hope that clarifies a little bit.

Comment 8 important 2013-10-16 21:48:50 UTC
Created attachment 813106 [details]
ovirt engine 3.3 on CentOS 6.4 installed package list

Comment 9 important 2013-10-16 22:07:34 UTC
Created attachment 813107 [details]
ovirt node 3.3 on CentOS 6.4 installed package list

Comment 10 Dan Kenigsberg 2013-10-17 09:51:26 UTC
I do not think we can do much beyond adding a release note: "not only do you need to install http://resources.ovirt.org/releases/3.3/rpm/EL/6/noarch/ovirt-release-el6-8-1.noarch.rpm, please make sure that epel-release is intalled, too"

We may even make ovirt-release explicitly require epel-release. Mike, what do you think of that?

Comment 11 Mike Burns 2013-10-17 12:20:29 UTC
I don't know about adding a dependency on epel-release.  Updating the instructions to indicate that we require epel is the right idea, I think.  The Download page says that Epel needs to be enabled.  We should make sure that upgrade instructions and quick start guides get updated.

Comment 12 important 2013-10-17 15:00:24 UTC
In the ovirt mailing list, someone pointed out that EPEL includes some ovirt packages.  At http://mirrors.yocum.org/fedora/epel/6/x86_64/, I found

ovirt-engine-cli-3.3.0.4-1.el6.noarch.rpm
ovirt-engine-sdk-3.2.0.11-1.el6.noarch.rpm
ovirt-engine-sdk-python-3.3.0.6-1.el6.noarch.rpm
ovirt-guest-agent-1.0.8-1.el6.noarch.rpm

Comment 14 Dan Kenigsberg 2014-02-17 14:39:47 UTC
important, I did not get the motivation for your comment 12.

Would you verify that with ovirt-3.4 beta, the epel repository is installed and python-inotify is available to the host?

Comment 15 important 2014-02-18 18:24:06 UTC
I'm sorry, I'm not able to review the ovirt-3.4 beta at the moment.  I no longer have any OVirt servers - we're using other hypervisors.

Comment 16 Sandro Bonazzola 2014-02-27 13:00:23 UTC
(In reply to Dan Kenigsberg from comment #14)
> important, I did not get the motivation for your comment 12.
> 
> Would you verify that with ovirt-3.4 beta, the epel repository is installed
> and python-inotify is available to the host?

Dan, with rpm unification of Fedora and CentOS in one, epel can't be installed anymore automatically.

http://gerrit.ovirt.org/#/c/23661/

It has been in review for one month before Merging it.
Now on EL6 distributions we provide a ovirt-epel repo which allows "yum install epel-release" without the need to go fetching the rpm manually.
But we can't have both unified rpm and dep on epel repo, sorry.

Comment 17 Dan Kenigsberg 2014-02-27 14:47:24 UTC
Why is it an issue to require epel-release from the el6 rpm of ovirt-epel?

Comment 18 Sandro Bonazzola 2014-02-27 14:54:20 UTC
(In reply to Dan Kenigsberg from comment #17)
> Why is it an issue to require epel-release from the el6 rpm of ovirt-epel?

because we don't have an ovirt-epel rpm, we have an ovirt-epel.repo inside ovirt-release-<version>.noarch.rpm (distribution agnostic)

Comment 19 Dan Kenigsberg 2014-02-27 15:57:16 UTC
In my opinion, ovirt-release.rpm should be built per distribution, just like any other rpm. I see no reason to ship ovirt-epel.repo to Fedora hosts, for example.

Anyway, for this bz this does not matter - python-inotify should be reachable by yum on el6.

(In reply to important from comment #15)
> I'm sorry, I'm not able to review the ovirt-3.4 beta at the moment.  I no
> longer have any OVirt servers - we're using other hypervisors.

Too bad, David. I hope you change your mind ;-)

Comment 20 Sandro Bonazzola 2014-02-27 16:13:28 UTC
(In reply to Dan Kenigsberg from comment #19)
> In my opinion, ovirt-release.rpm should be built per distribution, just like
> any other rpm. I see no reason to ship ovirt-epel.repo to Fedora hosts, for
> example.

We should really move this discussion to mailing list or to bug #1053037.

> 
> Anyway, for this bz this does not matter - python-inotify should be
> reachable by yum on el6.


Note that on el6, adding epel-release to dependencies just move the issue from python-inotify to epel-release. epel-release is not available on el6, so this is not a solution.


> 
> (In reply to important from comment #15)
> > I'm sorry, I'm not able to review the ovirt-3.4 beta at the moment.  I no
> > longer have any OVirt servers - we're using other hypervisors.
> 
> Too bad, David. I hope you change your mind ;-)

Comment 21 Martin Pavlik 2014-03-18 12:33:40 UTC
So at the moment you need to do following on hypervisor in order to get vdsm installed:

1) Install CentOS
2) add ovirt repo
cat > /etc/yum.repos.d/ovirt.repo <<END
[ovirt]
name=ovirt
baseurl=http://resources.ovirt.org/releases/3.4.0-rc2/rpm/EL/6Server/
gpgcheck=0
enabled=1
END

3) install ovirt epel via ovirt release
yumn install ovirt-release -y

4) install epel-release
yum install epel-release --nogpgcheck -y

5) yum install vdsm


-----------------------
maybe ovirt-epel.repo should contain gpgcheck=0 , so step 4 will go through without --nogpgcheck


[root@centos ~]# cat /etc/yum.repos.d/ovirt-epel.repo 
[ovirt-epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
includepkgs=epel-release
--------------------------

can this be considered verified? I do not find it very convenient for the user

Comment 22 Dan Kenigsberg 2014-03-18 16:23:50 UTC
if step (4) is still required, then this bug is NOT verified. ovirt-release.rpm contains /etc/yum.repos.d/ovirt-epel.repo which should have been sufficient to obtaining python-inotify.

Please note that step (2) is a bit "dirty" too: /etc/yum.repos.d/ovirt.repo is included in ovirt-release.rpm. Instead, have step (3) do

  yum install http://resources.ovirt.org/releases/3.4.0-rc2/rpm/EL/6/noarch/ovirt-release-11.1.0-1.noarch.rpm

Comment 23 Sandro Bonazzola 2014-03-18 16:27:40 UTC
you can either decide to provide python-inotify in ovirt repo or adding it to ovirt-epel.repo at line :

includepkgs=epel-release

adding python-inotify there.

Comment 24 Martin Pavlik 2014-03-18 16:36:47 UTC
yes step 4 is still needed please check bellow

1) clean CentOS
2) yum install http://resources.ovirt.org/releases/3.4.0-rc2/rpm/EL/6/noarch/ovirt-release-11.1.0-1.noarch.rpm
3) yum install vdsm

--> Finished Dependency Resolution
Error: Package: vdsm-4.13.3-4.el6.x86_64 (ovirt-3.3-stable)
           Requires: python-inotify
Error: Package: vdsm-4.13.3-4.el6.x86_64 (ovirt-3.3-stable)
           Requires: python-argparse
Error: Package: vdsm-4.13.3-4.el6.x86_64 (ovirt-3.3-stable)
           Requires: python-pthreading
 You could try using --skip-broken to work around the problem

Comment 25 Dan Kenigsberg 2014-03-18 17:33:25 UTC
It is possible to list all epel packages that we depend on (not only python-inotify!), but this basically duplicates information that already exists in our .spec files.

The alternative of copying python-inotify and co. (e.g. python-daemon) from epel and distributing it within ovirt is also problematic: someone would have to keep track if we ship the current versions.

Habing ovirt-release.el6 require epel-release is still my favorite solution.

Comment 26 Sandro Bonazzola 2014-03-19 09:07:48 UTC
Dan, can you review the new patch?

Comment 27 Sandro Bonazzola 2014-03-31 12:12:26 UTC
Moving to 3.4.1 since 3.4.0 has been released

Comment 28 Sandro Bonazzola 2014-04-02 12:17:03 UTC
Moving the bug to ovirt-release, I'll fix it.
Patch pushed: oVirt gerrit 26330
Please review.

Comment 29 Sandro Bonazzola 2014-05-08 13:35:41 UTC
This is an automated message

oVirt 3.4.1 has been released:
 * should fix your issue
 * should be available at your local mirror within two days.

If problems still persist, please make note of it in this bug report.


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