Bug 1125978

Summary: [CISCO RHEL-OSP] Need to include ncclient in the OSP repo
Product: Red Hat OpenStack Reporter: Britt Houser <bhouser>
Component: python-ncclientAssignee: Ihar Hrachyshka <ihrachys>
Status: CLOSED ERRATA QA Contact: Toni Freger <tfreger>
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: apevec, bhouser, chrisw, ihrachys, jdonohue, lhh, nyechiel, sclewis, sgordon, yeylon
Target Milestone: betaKeywords: FutureFeature, OtherQA, Reopened
Target Release: 6.0 (Juno)   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: python-ncclient-0.4.2-2.el7ost Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
: 1211650 (view as bug list) Environment:
Last Closed: 2015-02-09 14:21:48 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:
Bug Depends On:    
Bug Blocks: 1101585, 1174319, 1174326, 1211650    

Description Britt Houser 2014-08-01 14:10:11 UTC
Description of problem:

When configuring PackStack, one of the valid mechanism drivers is the cisco_nexus driver.  All the prerequisites are available in the rhel-7-server-rpms or rhel-7-server-openstack-5.0-rpms repos except ncclient.  Prerequisites can be found here:

https://wiki.openstack.org/wiki/Neutron/ML2/MechCiscoNexus

Version-Release number of selected component (if applicable):

OSP5

How reproducible:


Steps to Reproduce:
1. subscription-manager repos --disable=*
2. subscription-manager repos --enable=rhel-7-server-rpms
3. subscription-manager repos --enable=rhel-7-server-openstack-5.0-rpms
4. yum install ncclient

Actual results:

ncclient not found

Expected results:

ncclient installed

Additional info:

Comment 2 Ihar Hrachyshka 2014-08-11 13:01:48 UTC
I've checked the link. Cisco asks us to ship some patched version of ncclient to be able to use the plugin. Doesn't it mean Cisco should first make sure that upstream packages depend on the library (by putting it into requirements.txt)? We should go that route instead of shipping some untrusted code from github in a package.

Britt, can I ask you to work on getting upstream dependency straight?

Comment 3 Ihar Hrachyshka 2014-08-12 14:28:33 UTC
FYI: I've sent an email to clarify the status of the dependency: http://lists.openstack.org/pipermail/openstack-dev/2014-August/042724.html

Comment 4 Britt Houser 2014-08-14 20:20:34 UTC
Ihar - looks like your thread has uncovered that in Juno time frame, the upstream version of ncclient will work.  So for OSP6, it will make sense to include the upstream version.  But for Icehouse and before, Pradeep has already provided spec file:

RPM Spec: https://github.com/CiscoSystems/ncclient-spec
SOURCE:   https://github.com/CiscoSystems/ncclient
I have the packages built here for reference
http://pkilambi.fedorapeople.org/python-ncclient/

I believe these are already in the build system.  Can we get the package built based on these spec included in the OSP5 repo?

Comment 5 Ihar Hrachyshka 2014-08-18 12:05:43 UTC
@Brit, Red Hat will not ship custom code from github that does not follow usual procedures like peer review or CI. It's great that Cisco plugin is now able to use stock ncclient in Juno. Once we get that in Icehouse, we may reconsider making Cisco plugin depending on it. If you want users of the plugin not to be forced to go thru checking out the code from github, you can deliver your custom RPM to them.

Also, I'm currently working on setting dependencies straight in upstream, so that plugin do not depend on any modules implicitly avoiding requirements.txt file. But this is a long term thing and is not applicable to RHOSP5.

Comment 6 Lon Hohberger 2014-08-27 21:30:48 UTC
https://pypi.python.org/pypi/ncclient

0.4.1 looks good.

Comment 7 Joe Donohue 2014-08-27 21:32:39 UTC
Reopening for 0.4.1 version.

Comment 8 Ihar Hrachyshka 2014-09-15 14:10:03 UTC
@Lon, Cisco plugin was not compatible to u/s ncclient till very recently in Juno. If we want to use the package from PyPI, we should first make sure we have the needed patches in Icehouse to work with it.

Comment 9 Ihar Hrachyshka 2014-09-15 15:25:31 UTC
I've requested a backport for Icehouse for the plugin to use upstream ncclient. Also, I went with preparing a SPEC to package it: http://people.redhat.com/~ihrachys/python-ncclient.spec There is one problem that is currently blocking review for the package for Fedora Rawhide: license file is missing from the package provided at PyPI. I've contacted its owner thru email to add the missing file to the package.

Comment 10 Ihar Hrachyshka 2014-10-08 09:09:08 UTC
Quoting the maintainer of the upstream library, "Rel. 0.4.2 just hit the road and  it includes the missing LICENSE file." So we should be ok now with building an upstream package for Fedora.

Comment 13 Ihar Hrachyshka 2014-12-04 13:40:43 UTC
I've requested a Fedora package at: https://bugzilla.redhat.com/show_bug.cgi?id=1170629

Comment 14 Ihar Hrachyshka 2014-12-05 14:53:15 UTC
Sorry, closed wrong bug.

Comment 16 Ihar Hrachyshka 2014-12-05 16:59:17 UTC
Also made openstack-neutron-2014.2.1-2.el7ost depend on python-ncclient for ml2, cisco, and brocade plugins that use the module.

Comment 20 errata-xmlrpc 2015-02-09 14:21:48 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

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

https://rhn.redhat.com/errata/RHEA-2015-0144.html