[ovirt-devel] master ovirt-engine requires ovirt-engine-sdk-python >= 4.0.0.0

Yedidyah Bar David didi at redhat.com
Mon Mar 7 09:59:59 UTC 2016


On Mon, Mar 7, 2016 at 11:44 AM, Juan Hernández <jhernand at redhat.com> wrote:
> On 03/07/2016 10:37 AM, Rafael Martins wrote:
>> ----- Original Message -----
>>> From: "Juan Hernández" <jhernand at redhat.com>
>>> To: "Sandro Bonazzola" <sbonazzo at redhat.com>, "Yedidyah Bar David" <didi at redhat.com>
>>> Cc: "devel" <devel at ovirt.org>
>>> Sent: Monday, March 7, 2016 10:21:25 AM
>>> Subject: Re: [ovirt-devel] master ovirt-engine requires ovirt-engine-sdk-python >= 4.0.0.0
>>>
>>> On 03/07/2016 09:19 AM, Sandro Bonazzola wrote:
>>>>
>>>>
>>>> On Sun, Mar 6, 2016 at 4:31 PM, Yedidyah Bar David <didi at redhat.com
>>>> <mailto:didi at redhat.com>> wrote:
>>>>
>>>>     Hi all,
>>>>
>>>>     I am trying, on a rhel7 vm:
>>>>
>>>>     yum install -y
>>>>     http://resources.ovirt.org/pub/yum-repo/ovirt-release-master.rpm
>>>>
>>>>     yum install ovirt-engine
>>>>
>>>>     Fails with:
>>>>
>>>>     --> Finished Dependency Resolution
>>>>     Error: Package:
>>>>     ovirt-iso-uploader-4.0.0-0.0.master.20160208072812.gita433ce3.el7.centos.noarch
>>>>     (ovirt-master-snapshot)
>>>>                Requires: ovirt-engine-sdk-python >= 4.0.0.0
>>>>
>>>>
>>>>
>>>> Starting Friday night, jenkins suffered major issues resulting in
>>>> publisher not working at all.
>>>> I re-triggered the publishers this morning but looks that
>>>>
>>>> ovirt-engine-sdk-python >= 0:4.0.0.0 can't be satisfied by
>>>> python-ovirt-engine-sdk4-4.0.0-0.0.20160303gita6aee01.el7.centos.x86_64.rpm
>>>> due to name change.
>>>>
>>>> We need to fix the spec files requiring the new package.
>>>>
>>>
>>> Fixing the spec files isn't enough, as the new
>>> "python-ovirt-engine-sdk4" package isn't backwards compatible with the
>>> previous "ovirt-engine-sdk-python" package.
>>>
>>> You have three alternatives:
>>>
>>> 1. Work with version 3.6 of the SDK. At the moment this is what I recommend.
>>>
>>> 2. Work with the new "python-ovirt-engine-sdk4" package. This is what we
>>> should eventually do, but it requires important changes to the code. If
>>> you want to go this way, please let me know and I'll help you do the
>>> migration.

Is it considered stable already?

Among the repos I checked, I found:

ovirt-engine-cli/ovirt-engine-cli.spec.in:Requires:
ovirt-engine-sdk-python >= 3.6.0.0
ovirt-hosted-engine-setup/ovirt-hosted-engine-setup.spec.in:Requires:
     ovirt-engine-sdk-python >= 4.0.0.0
ovirt-image-uploader/ovirt-image-uploader.spec.in:Requires:
ovirt-engine-sdk-python >= 4.0.0.0
ovirt-iso-uploader/ovirt-iso-uploader.spec.in:Requires:
ovirt-engine-sdk-python >= 4.0.0.0
ovirt-log-collector/ovirt-log-collector.spec.in:Requires:
ovirt-engine-sdk-python3 >= 4.0.0.0
ovirt-log-collector/ovirt-log-collector.spec.in:Requires:
ovirt-engine-sdk-python >= 4.0.0.0

I guess -cli, the uploaders, and -collector can be considered
"not-urgent" and can simply wait until we fix them.

Main issue is that currently the engine requires the uploaders. We
recently re-removed log-collector req upstream, perhaps we can do that
with the uploaders too. Personally I do not think they are that
important, especially since 4.0 should have a web ui uploader at some
point.

hosted-engine-setup might be a bit more urgent, not sure.

All of them, I guess, use very little functionality of the engine/sdk
and can probably be ported to the new sdk quite easily, if it's
considered stable.

Not sure how to use 3.6 sdk - we can patch all of them to require >=
3.6 and add it to the -snapshot-static repo, and/or tell people to add
the 3.6 repos when they want master (not healthy imo, because we do
want to know if someone has to use something from 3.6 for master
work).

Comments? Adding also Sandro.

>>>
>>> 3. Work with some of the "ovirt-engine-sdk-python-4.0.0" RPM files that
>>> were produced in the transition from the old SDK to the new one. I don't
>>> recommend this.
>>
>> Hi Juan,
>>
>> do you have a summary of API changes in the version 4 of the SDK, compared with version 3? I tried find it in git, but it seems that you deleted all the code of version 3 in one commit, and added all the code of version 4 in other, making it hard to try to see the changes.
>>
>> Thanks
>>
>> Rafael
>>
>
> The new SDK is completely different from the old one, that is why I
> deleted everything and added the new one. A diff won't help you find the
> differences.
>
> The main difference is that in the new SDK types and services are
> separate things. In the previous version of the SDK methods like "start"
> used to be part of the "VM" class. This doesn't reflect the actual
> design of the API, as you may get a VM from places where "start" doesn't
> make sense, for example, a VM to be imported from an export storage
> domain. This caused many issues in the previous SDK. In the new SDK
> types are just containers for data. Operations, like "start" are part of
> services.
>
> I suggest you look at the examples:
>
>   https://github.com/oVirt/ovirt-engine-sdk/tree/master/sdk/examples
>
>>>>
>>>>
>>>>
>>>>                Available:
>>>>     ovirt-engine-sdk-python-3.6.0.3-1.el7.centos.noarch (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.0.3-1.el7.centos
>>>>                Available: ovirt-engine-sdk-python-3.6.2.1-1.el7.noarch
>>>>     (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.2.1-1.el7
>>>>                Installing: ovirt-engine-sdk-python-3.6.3.0-1.el7.noarch
>>>>     (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.3.0-1.el7
>>>>     Error: Package:
>>>>     ovirt-image-uploader-4.0.0-0.0.master.20160211135948.git43cc942.el7.centos.noarch
>>>>     (ovirt-master-snapshot)
>>>>                Requires: ovirt-engine-sdk-python >= 4.0.0.0
>>>>                Available:
>>>>     ovirt-engine-sdk-python-3.6.0.3-1.el7.centos.noarch (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.0.3-1.el7.centos
>>>>                Available: ovirt-engine-sdk-python-3.6.2.1-1.el7.noarch
>>>>     (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.2.1-1.el7
>>>>                Installing: ovirt-engine-sdk-python-3.6.3.0-1.el7.noarch
>>>>     (centos-ovirt36)
>>>>                    ovirt-engine-sdk-python = 3.6.3.0-1.el7
>>>>
>>>>     Tried also:
>>>>
>>>>     yum install
>>>>     http://jenkins.ovirt.org/job/ovirt-engine-sdk_master_build-artifacts-el7-x86_64/lastSuccessfulBuild/artifact/exported-artifacts/python-ovirt-engine-sdk4-4.0.0-0.0.20160303gita6aee01.el7.centos.x86_64.rpm
>>>>
>>>>
>>>>     which works, but does not satisfy the above dep. Should it? Any other
>>>>     place to find 4.0 python sdk?
>>>>
>>>>     Thanks,
>>>>     --
>>>>     Didi
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Sandro Bonazzola
>>>> Better technology. Faster innovation. Powered by community collaboration.
>>>> See how it works at redhat.com <http://redhat.com>
>>>>
>>>>
>>>> _______________________________________________
>>>> Devel mailing list
>>>> Devel at ovirt.org
>>>> http://lists.ovirt.org/mailman/listinfo/devel
>>>>
>>>
>>>
>>> --
>>> Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
>>> 3ºD, 28016 Madrid, Spain
>>> Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.
>>> _______________________________________________
>>> Devel mailing list
>>> Devel at ovirt.org
>>> http://lists.ovirt.org/mailman/listinfo/devel
>>>
>> _______________________________________________
>> Devel mailing list
>> Devel at ovirt.org
>> http://lists.ovirt.org/mailman/listinfo/devel
>>
>
>
> --
> Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
> 3ºD, 28016 Madrid, Spain
> Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.
> _______________________________________________
> Devel mailing list
> Devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/devel



-- 
Didi



More information about the Devel mailing list