Definitely a bug, we did some work on otopi (mostly packaging) to use python3 if it exists on a system - most of the otopi code was compatible, however, we didn't get to port host-deploy just yet.  If you could open a bug for this issue that would be great.

Thanks,
Yuval

On May 3, 2018 22:59, "Tomáš Golembiovský" <tgolembi@redhat.com> wrote:
Hi,

I'm trying to reinstall a CentOS host (using master-snapshot) and I
noticed otopi is trying to use python3 while the ovirt-host-deploy is
not yet fully python3 compatible:


> 2018-05-03 21:35:56,855+0200 DEBUG otopi.plugins.otopi.system.info info._init:39 SYSTEM INFORMATION - BEGIN       
> 2018-05-03 21:35:56,855+0200 DEBUG otopi.plugins.otopi.system.info info._init:40 executable /bin/python3         
> 2018-05-03 21:35:56,855+0200 DEBUG otopi.plugins.otopi.system.info info._init:41 python version 3.4.8 (default, Mar 23 2018, 10:04:27)
> [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
> 2018-05-03 21:35:56,855+0200 DEBUG otopi.plugins.otopi.system.info info._init:42 python /bin/python3             
> 2018-05-03 21:35:56,856+0200 DEBUG otopi.plugins.otopi.system.info info._init:43 platform linux                   
> 2018-05-03 21:35:56,856+0200 DEBUG otopi.plugins.otopi.system.info info._init:44 distribution ('CentOS Linux', '7.4.1708', 'Core')
> 2018-05-03 21:35:56,856+0200 DEBUG otopi.plugins.otopi.system.info info._init:45 host 'ovirt-host2'               
> 2018-05-03 21:35:56,856+0200 DEBUG otopi.plugins.otopi.system.info info._init:51 uid 0 euid 0 gid 0 egid 0       
> 2018-05-03 21:35:56,856+0200 DEBUG otopi.plugins.otopi.system.info info._init:53 SYSTEM INFORMATION - END         

and then later:

> 2018-05-03 21:35:56,912+0200 DEBUG otopi.context context._executeMethod:128 Stage init METHOD otopi.plugins.ovirt_host_deploy.node.detect.Plugin._init
> 2018-05-03 21:35:56,914+0200 DEBUG otopi.context context._executeMethod:143 method exception
> Traceback (most recent call last):
>   File "/tmp/ovirt-a0GNITSwX9/pythonlib/otopi/context.py", line 133, in _executeMethod
>     method['method']()
>   File "/tmp/ovirt-a0GNITSwX9/otopi-plugins/ovirt-host-deploy/node/detect.py", line 131, in _init
>     odeploycons.FileLocations.OVIRT_NODE_VARIANT_VAL)
>   File "/tmp/ovirt-a0GNITSwX9/otopi-plugins/ovirt-host-deploy/node/detect.py", line 69, in hasconf
>     io.StringIO('[default]\n' + f.read().decode('utf-8'))
> AttributeError: 'str' object has no attribute 'decode'
> 2018-05-03 21:35:56,915+0200 ERROR otopi.context context._executeMethod:152 Failed to execute stage 'Initializing': 'str' object has no attribute 'decode'

There is definitely a bug (or at least weirdness) in host-deploy -- why
use .decode() on object returned by codecs.open()?

But also, should host-deploy be already python3 compatible and is this
otopi behaviour expected?

    Tomas



--
Tomáš Golembiovský <tgolembi@redhat.com>
_______________________________________________
Devel mailing list
Devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel