Could it be a rights problem, ie your awx user can not access to /opt/my-envs?
You could try to create the ovirt virtualenv in the default path : /var/lib/awx/venv/
I don't know but it doesn't seems so.
If I get the /api/v2/settings/system/ page I see
"CUSTOM_VENV_PATHS": [
"/opt/my-envs"
],
so it seems it is there.
I'm doing some further pre-tests base on what Nathanaël suggested in a reply before:
bash-4.4# source /opt/my-envs/ovirt/bin/activate
(ovirt) bash-4.4# python -V
Python 2.7.15
(ovirt) bash-4.4#
(ovirt) bash-4.4# cd /tmp
(ovirt) bash-4.4# rsync -ac /var/lib/awx/venv/awx/lib/python3.6/site-packages/awx/plugins/inventory/ovirt4.py .
(ovirt) bash-4.4#
setup ovirt.ini file
(ovirt) bash-4.4# ./ovirt4.py
oVirt inventory script requires ovirt-engine-sdk-python >= 4.0.0
(ovirt) bash-4.4#
why?
I do have this:
/opt/my-envs/ovirt/lib/python2.7/site-packages/ovirtsdk4
(ovirt) bash-4.4# ll /opt/my-envs/ovirt/lib/python2.7/site-packages/ovirtsdk4
total 5864
-rw-r--r-- 1 root root 1711 Nov 30 11:23 http.py
-rw-r--r-- 1 root root 1718 Nov 30 11:23 http.pyc
-rw-r--r-- 1 root root 35322 Nov 30 11:23 __init__.py
-rw-r--r-- 1 root root 32118 Nov 30 11:23 __init__.pyc
-rw-r--r-- 1 root root 10627 Nov 30 11:23 reader.py
-rw-r--r-- 1 root root 11038 Nov 30 11:23 reader.pyc
-rw-r--r-- 1 root root 591736 Nov 30 11:23 readers.py
-rw-r--r-- 1 root root 420862 Nov 30 11:23 readers.pyc
-rw-r--r-- 1 root root 11080 Nov 30 11:23 service.py
-rw-r--r-- 1 root root 10836 Nov 30 11:23 service.pyc
-rw-r--r-- 1 root root 1243244 Nov 30 11:23 services.py
-rw-r--r-- 1 root root 1200541 Nov 30 11:23 services.pyc
-rw-r--r-- 1 root root 594910 Nov 30 11:23 types.py
-rw-r--r-- 1 root root 851939 Nov 30 11:23 types.pyc
-rw-r--r-- 1 root root 827 Nov 30 11:23 version.py
-rw-r--r-- 1 root root 233 Nov 30 11:23 version.pyc
-rw-r--r-- 1 root root 6661 Nov 30 11:23 writer.py
-rw-r--r-- 1 root root 6219 Nov 30 11:23 writer.pyc
-rw-r--r-- 1 root root 433610 Nov 30 11:23 writers.py
-rw-r--r-- 1 root root 387104 Nov 30 11:23 writers.pyc
-rwxr-xr-x 1 root root 113096 Nov 30 11:23 xml.so
(ovirt) bash-4.4#
Another test:
(ovirt) bash-4.4# python
Python 2.7.15 (default, Oct 8 2019, 21:08:29)
[GCC 8.2.1 20180905 (Red Hat 8.2.1-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ovirtsdk4
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/my-envs/ovirt/lib/python2.7/site-packages/ovirtsdk4/__init__.py", line 22, in <module>
import pycurl
ImportError: pycurl: libcurl link-time ssl backend (openssl) is different from compile-time ssl backend (nss)
>>> quit()
(ovirt) bash-4.4#
What about mismatch link-time ssl backend and compile-time ssl backend?
It seems that curl is with ssl and not nss:
(ovirt) bash-4.4# curl-config --configure
'--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--disable-static' '--enable-symbol-hiding' '--enable-ipv6' '--enable-threaded-resolver' '--with-gssapi' '--with-nghttp2' '--with-ssl' '--with-ca-bundle=/etc/pki/tls/certs/ca-bundle.crt' '--enable-ldap' '--enable-ldaps' '--enable-manual' '--with-brotli' '--with-libidn2' '--with-libmetalink' '--with-libpsl' '--with-libssh' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld'
(ovirt) bash-4.4#
(ovirt) bash-4.4# ldd /usr/bin/curl
linux-vdso.so.1 (0x00007ffd420e6000)
libcurl.so.4 => /lib64/libcurl.so.4 (0x00007ff6a6c11000)
libmetalink.so.3 => /lib64/libmetalink.so.3 (0x00007ff6a6a00000)
libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007ff6a676d000)
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007ff6a6295000)
libz.so.1 => /lib64/libz.so.1 (0x00007ff6a607e000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff6a5e5e000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff6a5a9a000)
libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x00007ff6a5874000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007ff6a5624000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007ff6a5334000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007ff6a5118000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007ff6a4f14000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007ff6a4cd9000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ff6a4ad5000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff6a70ce000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007ff6a48c5000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007ff6a46c1000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007ff6a44aa000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007ff6a4280000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007ff6a3ffc000)
(ovirt) bash-4.4#
So no NSS
does this mean I have to deinstall/configure/recompile/install my curl/libcurl?