Bug 1492706

Summary: ovirt-engine-appliance misses python2-pyOpenSSL which is required for OVN setup
Product: [oVirt] ovirt-engine Reporter: Simone Tiraboschi <stirabos>
Component: Packaging.rpmAssignee: Yedidyah Bar David <didi>
Status: CLOSED CURRENTRELEASE QA Contact: Pavol Brilla <pbrilla>
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.2.0CC: bugs, pbrilla, trichard, ylavi
Target Milestone: ovirt-4.2.0Flags: rule-engine: ovirt-4.2+
Target Release: 4.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
The engine now requires OVN.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-20 11:00:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Integration RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1492702    

Description Simone Tiraboschi 2017-09-18 13:53:28 UTC
Description of problem:
ovirt-engine-appliance misses python2-pyOpenSSL which is required for OVN setup.

          --== PACKAGES ==--
         
          Install and configure ovirt-provider-ovn? Please note that this will cause an immediate installation
          of several OVN packages that will not be rolled back in case of a failure. (Yes, No) [Yes]: 
[ INFO  ] Yum Status: Downloading Packages
[ INFO  ] Yum Download/Verify: python2-pyOpenSSL-16.2.0-3.el7.noarch
[ INFO  ] Yum Status: Check Package Signatures
[ INFO  ] Yum Status: Running Test Transaction
[ INFO  ] Yum Status: Running Transaction
[ INFO  ] Yum install: 1/1: python2-pyOpenSSL-16.2.0-3.el7.noarch
[ INFO  ] Yum Verify: 1/1: python2-pyOpenSSL.noarch 0:16.2.0-3.el7 - u


Version-Release number of selected component (if applicable):
ovirt-engine-appliance-4.2-20170917.1.el7.centos.noarch.rpm

How reproducible:
100%

Steps to Reproduce:
1. checking the logs of execution of engine-setup on the appliance
2.
3.

Actual results:
It installs python2-pyOpenSSL

Expected results:
It shouldn't fetch any rpm

Additional info:
hosted-engine-setup runs engine-setup with --offline

Comment 1 Sandro Bonazzola 2017-09-18 13:56:31 UTC
I think we already discussed this over a long mail thread.
If python2-pyOpenSSL needs to be installed by default (so also by default in hosted engine) it should be required at ovirt-engine level, not within appliance.
Yaniv, what do you think?

Comment 2 Simone Tiraboschi 2017-09-18 14:03:10 UTC
Currently is the OVN plugin that directly requires it:
https://github.com/oVirt/ovirt-engine/blob/master/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/network/ovirtproviderovn.py#L75

But on the appliance we run in offline mode.

Should it be a dependency for ovirt-provider-ovn?

2017-09-18 15:49:19,356+0200 DEBUG otopi.plugins.otopi.dialog.human dialog.__logString:204 DIALOG:SEND                 Install and configure ovirt-provider-ovn? Please note that this will cause an immediate installation
2017-09-18 15:49:19,356+0200 DEBUG otopi.plugins.otopi.dialog.human dialog.__logString:204 DIALOG:SEND                 of several OVN packages that will not be rolled back in case of a failure. (Yes, No) [Yes]:
2017-09-18 15:49:20,619+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn._setup_packages:275 Installing OVN packages using Yum: ('pyOpenSSL', 'openvswitch', 'openvswitch-ovn-common', 'openvswitch-ovn-central', 'python-openvswitch', 'ovirt-provider-ovn')
2017-09-18 15:49:20,620+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package pyOpenSSL for install
2017-09-18 15:49:32,660+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum processing package pyOpenSSL-0.13.1-3.el7.x86_64 for install
2017-09-18 15:49:32,837+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum package pyOpenSSL-0.13.1-3.el7.x86_64 queued
2017-09-18 15:49:32,838+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum processing package python2-pyOpenSSL-16.2.0-3.el7.noarch for install
2017-09-18 15:49:32,838+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum package python2-pyOpenSSL-16.2.0-3.el7.noarch queued
2017-09-18 15:49:32,838+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package openvswitch for install
2017-09-18 15:49:32,944+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package openvswitch-ovn-common for install
2017-09-18 15:49:33,033+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package openvswitch-ovn-central for install
2017-09-18 15:49:33,119+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package python-openvswitch for install
2017-09-18 15:49:33,204+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum queue package ovirt-provider-ovn for install
2017-09-18 15:49:33,289+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Building transaction
2017-09-18 15:49:33,634+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Transaction built
2017-09-18 15:49:33,634+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Transaction Summary:
2017-09-18 15:49:33,634+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum     install    - python2-pyOpenSSL-16.2.0-3.el7.noarch
2017-09-18 15:49:33,634+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Processing transaction
2017-09-18 15:49:33,634+0200 INFO otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.info:259 Yum Status: Downloading Packages
2017-09-18 15:49:33,635+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Status: Download packages packages: python2-pyOpenSSL-16.2.0-3.el7.noarch
2017-09-18 15:49:33,635+0200 INFO otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.info:259 Yum Download/Verify: python2-pyOpenSSL-16.2.0-3.el7.noarch
2017-09-18 15:49:33,983+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Downloading: python2-pyOpenSSL-16.2.0-3.el7.noarch.rpm (0%)
2017-09-18 15:49:34,284+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Downloading: python2-pyOpenSSL-16.2.0-3.el7.noarch.rpm 58 k(66%)
2017-09-18 15:49:34,315+0200 DEBUG otopi.plugins.ovirt_engine_setup.ovirt_engine.network.ovirtproviderovn ovirtproviderovn.verbose:255 Yum Downloading: python2-pyOpenSSL-16.2.0-3.el7.noarch.rpm 87 k(100%)

Comment 3 Yaniv Lavi 2017-09-18 17:18:20 UTC
(In reply to Sandro Bonazzola from comment #1)
> I think we already discussed this over a long mail thread.
> If python2-pyOpenSSL needs to be installed by default (so also by default in
> hosted engine) it should be required at ovirt-engine level, not within
> appliance.
> Yaniv, what do you think?

OVN provider RPM should require this since it is the one using it.

Comment 4 Sandro Bonazzola 2017-09-20 05:43:59 UTC
(In reply to Yaniv Lavi (Dary) from comment #3)
> (In reply to Sandro Bonazzola from comment #1)
> > I think we already discussed this over a long mail thread.
> > If python2-pyOpenSSL needs to be installed by default (so also by default in
> > hosted engine) it should be required at ovirt-engine level, not within
> > appliance.
> > Yaniv, what do you think?
> 
> OVN provider RPM should require this since it is the one using it.

It requires it, but it's not in appliance since it's installed at runtime. But in HE flow, setup is running offline so it won't be able to download it.
We are going to require it in ovirt-engine spec file: https://gerrit.ovirt.org/#/c/81960/

Comment 5 Pavol Brilla 2017-11-15 08:57:54 UTC
# yum deplist ovirt-engine | grep pyOpenSSL && yum list ovirt-engine
  dependency: pyOpenSSL
   provider: python2-pyOpenSSL.noarch 16.2.0-3.el7
   provider: pyOpenSSL.x86_64 0.13.1-3.el7
Installed Packages
ovirt-engine.noarch        4.2.0-0.0.master.20171030093856.gitc4dc9af.el7.centos         @ovirt-4.2-pre

Comment 6 Sandro Bonazzola 2017-12-20 11:00:51 UTC
This bugzilla is included in oVirt 4.2.0 release, published on Dec 20th 2017.

Since the problem described in this bug report should be
resolved in oVirt 4.2.0 release, published on Dec 20th 2017, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.