Bug 1166841

Summary: netapp bindings missing directory in expected path
Product: Red Hat CloudForms Management Engine Reporter: Dave Johnson <dajohnso>
Component: StorageAssignee: Rich Oliveri <roliveri>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Dave Johnson <dajohnso>
Severity: medium Docs Contact:
Priority: high    
Version: 5.3.0CC: dajohnso, jfrey, jhardy, jrafanie, mfalesni, mfeifer, obarenbo, xlecauch
Target Milestone: GA   
Target Release: 5.6.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: appliance:netapp
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1166842 (view as bug list) Environment:
Last Closed: 2016-02-18 16:01:36 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: 1166842    

Description Dave Johnson 2014-11-21 17:14:05 UTC
Description of problem:
=============================
We have known for a bit that something was going on with netapp integration.  This week qe & dev dug into it and figured out this appears to be a build issue.

Ultimately we are missing a lib directory in the path which breaks the integration.  5.2 works, 5.3 does not.

5.2: /var/www/miq/lib/NetappManageabilityAPI/NmaCore/lib/x86_64-linux/ruby1.9.3
5.3: /var/www/miq/lib/NetappManageabilityAPI/NmaCore/x86_64-linux/ruby1.9.3


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


How reproducible:
===========================
100%


Steps to Reproduce:
============================
1.  install netapp client sdk
2.  enable netapp feature
3.  add filer to manage


Actual results:
===================
failure

Expected results:
====================
success


Additional info:

Comment 2 Joe Rafaniello 2014-12-22 21:58:05 UTC
Dave,

I have a branch with the changes here:
[a] https://github.com/jrafanie/manageiq/compare/ManageIQ:master...jrafanie:fix_netapp_shared_object_directory_path

I don't have an environment with netapp installed to verify it.  Can you try it out?

1) install netapp sdk
2) cd to /var/www/miq
3) rake build:shared_objects:clean  # To clean out the existing shared objects
4) Apply the changes [a] to the miq/Rakefile on 5.3.
5) rake build:shared_objects  # To build the shared objects
6) verify the objects are in the right directory:
/var/www/miq/lib/NetappManageabilityAPI/NmaCore/lib/x86_64-linux/ruby1.9.3
7) rake build:shared_objects:clean 
8) Verify the shared objects are removed:
Check /var/www/miq/lib/NetappManageabilityAPI/NmaCore/lib/x86_64-linux/ruby1.9.3

Comment 3 Milan Falešník 2015-01-08 16:21:17 UTC
Hello,

I was trying to do this but it seems there are some devel packages required for it to work, therefore when I did this until the error came up, I nuked the appliance. Would you mind specifying them here?

Comment 4 Joe Rafaniello 2015-01-09 15:14:06 UTC
Milan, I don't know the devel packages that are required.

I'll ask some people to comment here if they know.

Comment 6 Milan Falešník 2015-01-12 10:23:07 UTC
5.3.2.6

I got something like this:

[root@10-16-7-96 ~]# yum install ruby193-ruby-devel
[root@10-16-7-96 ~]# cd /var/www/miq
# The Rakefile was not there so I downloaded it directly from your branch
[root@10-16-7-96 miq]# wget https://raw.githubusercontent.com/jrafanie/manageiq/316907e757b5bf0ab0a08f52580bd8e3ca77d98c/Rakefile
[root@10-16-7-96 miq]# rake build:shared_objects:clean
** Removing /var/www/miq/lib/disk/modules/MiqBlockDevOps/Makefile
** Removing /var/www/miq/lib/disk/modules/MiqLargeFileLinux.d/Makefile
** Removing /var/www/miq/lib/SlpLib/SlpLib_raw/mkmf.log
** Removing /var/www/miq/lib/SlpLib/SlpLib_raw/Makefile
** Removing /var/www/miq/lib/NetappManageabilityAPI/NmaCore/NmaCore_raw/mkmf.log
** Removing /var/www/miq/lib/NetappManageabilityAPI/NmaCore/NmaCore_raw/Makefile
** Removing /var/www/miq/lib/disk/modules/ruby1.9.3/MiqLargeFileLinux.so
** Removing /var/www/miq/lib/disk/modules/MiqBlockDevOps.so
** Removing /var/www/miq/lib/SlpLib/lib/x86_64-linux/SlpLib_raw.so
** Removing /var/www/miq/lib/NetappManageabilityAPI/NmaCore/x86_64-linux/ruby1.9.3/NmaCore_raw.so

[root@10-16-7-96 miq]# rake build:shared_objects
** Building MiqBlockDevOps.so...
rake aborted!
No such file or directory - MiqBlockDevOps.so
/var/www/miq/Rakefile:70:in `block in build_shared_objects'
/var/www/miq/Rakefile:66:in `chdir'
/var/www/miq/Rakefile:66:in `build_shared_objects'
/var/www/miq/Rakefile:88:in `block (2 levels) in <top (required)>'
Tasks: TOP => build:shared_objects
(See full trace by running task with --trace)


What can be the cause?

Comment 7 Joe Rafaniello 2015-01-12 18:58:21 UTC
Milan, it appears to be failing to create the MiqBlockDevOps.so in the `ruby extconf.rb` and `make` steps here:

https://github.com/jrafanie/manageiq/blob/e2803088ee116f1c41b46161b9925b71e7677280/Rakefile#L70

Comment 8 Joe Rafaniello 2015-01-12 18:59:47 UTC
Do you have an appliance I look at?

I'm concerned why the miq/Rakefile doesn't exist and not sure why the building of the ruby c binding is failing.

Comment 12 Dave Johnson 2015-02-06 17:04:59 UTC
*** Bug 1127400 has been marked as a duplicate of this bug. ***

Comment 13 Jason Frey 2015-06-19 20:38:25 UTC
Oleg and I are in the process of extracting the netapp code into a standalone Ruby gem.  We've gotten it successfully built, so may be able to help out here.  We also got it successfully working on master with the original code, so perhaps the tricks we did there will work here as well.

Comment 14 Dave Johnson 2016-02-18 16:01:36 UTC
This BZ is now over a year old, because of this, we are closing it.  If you feel like this is a mistake and it is still a issue, please reproduce it in the latest release and create a new BZ.