Thanks for the detailed explanation! I got it to work by downgrading the
package as you wrote.
On 9/19/22 08:43, Yedidyah Bar David wrote:
> On Sat, Sep 17, 2022 at 4:15 PM <jonas(a)rabe.ch> wrote:
>> I meant what exactly is broken and if there is a workaround or a planned fix.
> The breakage happened due to:
>
> - ansible-core recently moved to python 3.9
>
> - oVirt needs several python libraries in its use of ansible, some of
> which are packaged by oVirt. Those are not yet built for python 3.9.
>
>> I performed a deployment using hosted-engine. This goes on step further, but
fails while waiting for the host:
>> [...]
>> [ INFO ] TASK [ovirt.ovirt.hosted_engine_setup : Obtain SSO token using
username/password credentials]
>> [ INFO ] ok: [localhost]
>> [ INFO ] TASK [ovirt.ovirt.hosted_engine_setup : Wait for the host to be up]
>> [ INFO ] TASK [ovirt.ovirt.hosted_engine_setup : Notify the user about a
failure]
>> [ ERROR ] fatal: [localhost]: FAILED! => {"changed": false,
"msg": "Host is not up, please check logs, perhaps also o
>> n the engine machine"}
>> [...]
>>
>> On the hosted-engine, I see in
/var/log/ovirt-engine/host-deploy/ovirt-host-deploy-ansible-20220917140938-server-005.admin.int.rabe.ch-937b3c69-a4d5-45c7-af0f-b8705490ff2a.log:
>> [...]
>> 2022-09-17 14:12:30 CEST - {
>> "uuid" : "97891064-a215-4709-b944-ceba2d13b19f",
>> "counter" : 391,
>> "stdout" : "fatal: [server-005.admin.int.rabe.ch]: FAILED!
=> {\"msg\": \"The conditional check 'cluster_switch ==
\\\"ovs\\\" or (ovn_central is defined and ovn_central | ipaddr)' failed.
The error was: The ipaddr filter requires python's netaddr be installed on the ansible
controller\\n\\nThe error appears to be in
'/usr/share/ovirt-engine/ansible-runner-service-project/project/roles/ovirt-provider-ovn-driver/tasks/configure.yml':
line 3, column 5, but may\\nbe elsewhere in the file depending on the exact syntax
problem.\\n\\nThe offending line appears to be:\\n\\n- block:\\n - name: Install ovs\\n
^ here\\n\"}",
>> [...]
>>
>> But netaddr is installed:
> python38-netaddr might be installed, but python39-netaddr is probably not.
>
>> [root@ovirt-engine-test host-deploy]# pip3 install netaddr
>> WARNING: Running pip install with root privileges is generally not a good idea.
Try `pip3 install --user` instead.
>> Requirement already satisfied: netaddr in /usr/lib/python3.6/site-packages
>>
>> Any ideas what I can do?
> For the time being, try to downgrade ansible-core to 2.12, or the last
> version requiring python 3.8.
>
> We merged this patch to the engine master branch (to eventually become 4.5.3):
>
>
https://github.com/oVirt/ovirt-engine/pull/654
>
> Going forward:
>
> 1. We hope to finish porting the engine to CS9 soon, and if this
> proves stable, consider dropping support for CS8.
>
> 2. We might try, in the time being, to build the missing dependencies
> for python 3.9. It's not clear if it's worth the effort.
>
> Best regards,