Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1342070

Summary: ovirt-engine-dashboard is not installed automatically
Product: [oVirt] ovirt-engine Reporter: Pavel Novotny <pnovotny>
Component: Packaging.rpmAssignee: Vojtech Szocs <vszocs>
Status: CLOSED CURRENTRELEASE QA Contact: Pavel Novotny <pnovotny>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 4.0.0CC: bugs, didi, mperina, oourfali, vszocs
Target Milestone: ovirt-4.0.0-rcFlags: rule-engine: ovirt-4.0.0+
rule-engine: blocker+
pnovotny: testing_plan_complete?
rule-engine: planning_ack+
oourfali: devel_ack+
pnovotny: testing_ack+
Target Release: 4.0.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-05 08:04:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Infra RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1324860    

Description Pavel Novotny 2016-06-02 11:47:07 UTC
Description of problem:
When installing oVirt engine, Dashboard, as the mandatory feature, is not installed automatically. It needs to be installed manually.

Version-Release number of selected component (if applicable):
ovirt-engine-4.1.0-0.0.master.20160601231315.git049ef04.el7.centos.noarch
ovirt-engine-setup-4.1.0-0.0.master.20160601231315.git049ef04.el7.centos.noarch

How reproducible:
100%

Steps to Reproduce:
1. yum install -y ovirt-engine-setup && engine-setup
2. After setup is done: rpm -q ovirt-engine-dashboard
3.

Actual results:
package ovirt-engine-dashboard is not installed

Expected results:
ovirt-engine-dashboard is installed

Additional info:

Comment 1 Oved Ourfali 2016-06-02 11:55:29 UTC
Didi - you can use this bug for the version lock as well.

Comment 2 Yedidyah Bar David 2016-06-05 08:09:40 UTC
Pushed a patch [1] to versionlock ovirt-engine-dashboard.

This will only version-lock the package, it will not automatically upgrade it if not needed. E.g., consider this flow:

1. yum install engine version eX and dashboard dY, where
engine package eX requires dashboard >= dY
2. engine-setup
3. Add a new repo which has engine eZ and dashboard dW,
where engine package eZ requires dashboard >= dY (that is, Requires: line was not changed)
4. engine-setup
It will not update dashboard.

step 4 will update dashboard if the new engine package eZ requires dashboard > dY.

Do we want it to always update dashboard?

If so, we also need patch [2].

Please pick whichever you want and verify. Thanks :-)

[1] https://gerrit.ovirt.org/58628
[2] https://gerrit.ovirt.org/58629

Comment 3 Martin Perina 2016-06-09 14:28:47 UTC
It missed RC2 build, so if there is no RC3 build, then we will need to retarget to 4.0.1

Comment 4 Martin Perina 2016-06-10 15:09:55 UTC
It's included in today's 4.0.0.4 build

Comment 5 Vojtech Szocs 2016-06-14 17:00:42 UTC
(In reply to Yedidyah Bar David from comment #2)
> Pushed a patch [1] to versionlock ovirt-engine-dashboard.

Thanks!

> This will only version-lock the package, it will not automatically upgrade
> it if not needed. E.g., consider this flow:
> 
> 1. yum install engine version eX and dashboard dY, where
> engine package eX requires dashboard >= dY
> 2. engine-setup
> 3. Add a new repo which has engine eZ and dashboard dW,
> where engine package eZ requires dashboard >= dY (that is, Requires: line
> was not changed)
> 4. engine-setup
> It will not update dashboard.
> 
> step 4 will update dashboard if the new engine package eZ requires dashboard
> > dY.
> 
> Do we want it to always update dashboard?

Yes, I think so.

Upgrading Engine (eX -> eZ) should always upgrade Dashboard (dY -> dW) to the version required by the new Engine (assuming eZ requires dW or better).

> 
> If so, we also need patch [2].
> 
> Please pick whichever you want and verify. Thanks :-)
> 
> [1] https://gerrit.ovirt.org/58628
> [2] https://gerrit.ovirt.org/58629

Thanks for the patches. I think we should proceed with both.

Comment 6 Yedidyah Bar David 2016-06-15 06:05:53 UTC
(In reply to vszocs from comment #5)
> (In reply to Yedidyah Bar David from comment #2)
> > Do we want it to always update dashboard?
> 
> Yes, I think so.
> 
> Upgrading Engine (eX -> eZ) should always upgrade Dashboard (dY -> dW) to
> the version required by the new Engine (assuming eZ requires dW or better).

I specifically wrote above:

> > where engine package eZ requires dashboard >= dY (that is, Requires: line
> > was not changed)

That's the intention of the word 'always'.

If eZ requires >=dW, the normal yum logic will apply and upgrade to dW.

The question was whether we want to upgrade _even_if_ normal yum logic does not require that.

> 
> > 
> > If so, we also need patch [2].
> > 
> > Please pick whichever you want and verify. Thanks :-)
> > 
> > [1] https://gerrit.ovirt.org/58628
> > [2] https://gerrit.ovirt.org/58629
> 
> Thanks for the patches. I think we should proceed with both.

Both are already merged to both master and 4.0 branch. If anyone prefers to revert above, there is still time :-)

However, I should admit this is theoretical, in practice it's mandatory. Because if we version-lock the package, the user will not be able to later manually upgrade to dW, so engine-setup must do that. Of course users can override versionlock, but we do not want them to get used to this - the system should behave sanely under normal use.

Comment 7 Vojtech Szocs 2016-06-15 13:21:04 UTC
(In reply to Yedidyah Bar David from comment #6)
> I specifically wrote above:
> 
> > > where engine package eZ requires dashboard >= dY (that is, Requires: line
> > > was not changed)
> 
> That's the intention of the word 'always'.
> 
> If eZ requires >=dW, the normal yum logic will apply and upgrade to dW.
> 
> The question was whether we want to upgrade _even_if_ normal yum logic does
> not require that.

Thanks for clarification.

Yes, I think we should upgrade even if Dashboard dependency is already satisfied as per Engine spec file.

So I think both patches are relevant, no need to revert anything.

Comment 8 Pavel Novotny 2016-06-17 17:37:32 UTC
Verified in rhevm-4.0.0.5-0.1.el7ev.noarch (build 4.0.0-17).

Installation:

ovirt-engine-dashboard is installed as a dependency of ovirt-engine:

# rpm -qR ovirt-engine
...
ovirt-engine-dashboard >= 1.0.0
...


Update:

engine-setup then takes care of updating ovirt-engine-dashboard with newer versions:

# yum update -y ovirt-engine-setup && engine-setup
...
[ INFO  ] Checking for product updates...
          Setup has found updates for some packages:
...
          PACKAGE: [updated] ovirt-engine-dashboard-1.0.0-20160531git79dac90.el7ev.x86_64
          PACKAGE: [update] ovirt-engine-dashboard-1.0.0-20160615git43298a4.el7ev.x86_64
...
[ INFO  ] Yum update: 10/34: ovirt-engine-dashboard-1.0.0-20160615git43298a4.el7ev.x86_64
...
[ INFO  ] Execution of setup completed successfully

Comment 9 Sandro Bonazzola 2016-07-05 08:04:54 UTC
oVirt 4.0.0 has been released, closing current release.