Bug 1342070 - ovirt-engine-dashboard is not installed automatically
Summary: ovirt-engine-dashboard is not installed automatically
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: Packaging.rpm
Version: 4.0.0
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ovirt-4.0.0-rc
: 4.0.0
Assignee: Vojtech Szocs
QA Contact: Pavel Novotny
URL:
Whiteboard:
Depends On:
Blocks: ovirt_system_dashboards
TreeView+ depends on / blocked
 
Reported: 2016-06-02 11:47 UTC by Pavel Novotny
Modified: 2019-04-28 13:20 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-07-05 08:04:54 UTC
oVirt Team: Infra
Embargoed:
rule-engine: ovirt-4.0.0+
rule-engine: blocker+
pnovotny: testing_plan_complete?
rule-engine: planning_ack+
oourfali: devel_ack+
pnovotny: testing_ack+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 58274 0 master MERGED packaging: Require oVirt Dashboard 1.0.0 2016-06-03 16:53:52 UTC
oVirt gerrit 58617 0 ovirt-engine-4.0 MERGED packaging: Require oVirt Dashboard 1.0.0 2016-06-05 07:42:38 UTC
oVirt gerrit 58628 0 master MERGED packaging: setup: versionlock ovirt-engine-dashboard 2016-06-09 12:57:57 UTC
oVirt gerrit 58629 0 master MERGED packaging: setup: Always update ovirt-engine-dashboard 2016-06-09 13:38:41 UTC
oVirt gerrit 58912 0 ovirt-engine-4.0 MERGED packaging: setup: versionlock ovirt-engine-dashboard 2016-06-09 14:26:37 UTC
oVirt gerrit 58913 0 ovirt-engine-4.0 MERGED packaging: setup: Always update ovirt-engine-dashboard 2016-06-09 14:26:31 UTC

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.


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