Bug 2156008 - python-netapp-lib is incompatible with Ansible
Summary: python-netapp-lib is incompatible with Ansible
Keywords:
Status: NEW
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: python-netapp-lib
Version: epel8
Hardware: Unspecified
OS: Linux
unspecified
low
Target Milestone: ---
Assignee: Sam P
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-12-23 11:57 UTC by Jasper Wiegratz
Modified: 2022-12-23 11:57 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Jasper Wiegratz 2022-12-23 11:57:37 UTC
Description of problem:

Package python3-netapp-lib-2021.6.25-1.el8 installs into /usr/lib/python3.6/site-packages.
The description of python3-netapp-lib states: Library to allow Ansible deployments to interact with NetApp storage systems.
Package ansible-core-2.13.3-1.el8.x86_64.rpm installs into 
/usr/lib/python3.9/site-packages.
Therefore the EPEL/EL8 package python3-netapp-lib is incompatible with ansible-core on EL8.
The same is true for python3-netapp-lib's dependency python3-xmltodict-0.12.0-6.el8 which also installs to python3.6 site-packages.

There should be a package python39-netapp-lib and python39-xmltodict to be used with EL8's Ansible RPMs.

python3-netapp-lib-2021.6.25-1.el8 -> https://packages.fedoraproject.org/pkgs/python-netapp-lib/python3-netapp-lib/epel-8.html
ansible-core-2.13.3-1.el8.x86_64.rpm -> https://access.redhat.com/downloads/content/rhel---8/x86_64/7441/ansible-core/2.13.3-1.el8/x86_64/fd431d51/package

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

- ansible-core-2.13.3-1.el8.x86_64.rpm (this is ok)
- python3-netapp-lib-2021.6.25-1.el8 (not ansible's python version)
- python3-xmltodict-0.12.0-6.el8 (not ansible's python version)

How reproducible: Always

Steps to Reproduce:
1. Have RHEL 8 with BaseOS/AppStream and EPEL 8 repos
2. yum install ansible-core python39-requests python3-netapp-lib
3. ansible --version | grep "python version"
4. ansible localhost -m netapp.ontap.na_ontap_debug -a 'hostname=127.0.0.1 username=test password=test'

Actual results:
1.
2. (packages installed)
3. ansible --version | grep "python version"
   -> python version = 3.9.13 (main, Nov 16 2022, 15:31:39) [GCC 8.5.0 20210514 (Red Hat 8.5.0-15)]
4. ansible localhost -m netapp.ontap.na_ontap_debug -a 'hostname=127.0.0.1 username=test password=test'
   -> (...) Error importing netapp-lib or a dependency: No module named 'netapp_lib'.  Install the python netapp-lib module or a missing dependency.  Additional diagnostic information:  Python Executable Path: /usr/bin/python3.9.  Python Version: 3.9.13 (main, Nov 16 2022, 15:31:39) \n[GCC 8.5.0 20210514 (Red Hat 8.5.0-15)]. (...)

Ansible fails to load python netapp-lib. It is installed for Python3.6, but Ansible uses Python3.9.

Expected results:
1.
2. yum install ansible-core python39-requests python39-netapp-lib  # python39-netapp-lib!
3. ansible --version | grep "python version"
   -> python version = 3.9.13 (main, Nov 16 2022, 15:31:39) [GCC 8.5.0 20210514 (Red Hat 8.5.0-15)]
4. ansible localhost -m netapp.ontap.na_ontap_debug -a 'hostname=127.0.0.1 username=test password=test'
   -> "Other error for hostname: 127.0.0.1 using ZAPI: NetApp API failed. Reason - Unable to connect:(ConnectionRefusedError(111, 'Connection refused'),)." (Ansible netapp module works, but there is no netapp system on localhost)

Additional info:

Workaround is:
1. Have RHEL 8 with BaseOS/AppStream and EPEL 8 repos
2. yum install ansible-core python39-requests
3. pip3.9 install netapp-lib
4. (Ansible netapp modules work)


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