[ovirt-users] Looking for Python-SDK documentation

Simone Tiraboschi stirabos at redhat.com
Wed Apr 13 12:51:27 UTC 2016


On Wed, Apr 13, 2016 at 8:19 AM, Yedidyah Bar David <didi at redhat.com> wrote:
> On Wed, Apr 13, 2016 at 12:03 AM, Brett I. Holcomb <biholcomb at l1049h.com> wrote:
>> On Tue, 2016-04-12 at 07:57 -0400, Alexander Wels wrote:
>>> On Monday, April 11, 2016 05:03:28 PM Brett I. Holcomb wrote:
>>> >
>>> > On Mon, 2016-04-11 at 20:41 +0200, Frank Thommen wrote:
>>> > >
>>> > > On 11.04.16 20:17, Brett I. Holcomb wrote:
>>> > > >
>>> > > > On Mon, 2016-04-11 at 14:38 -0300, Amador Pahim wrote:
>>> > > > >
>>> > > > > On 04/11/2016 02:07 PM, Brett I. Holcomb wrote:
>>> > > > > >
>>> > > > > > On Mon, 2016-04-11 at 17:27 +0200, Frank Thommen wrote:
>>> > > > > > >
>>> > > > > > > Dear all,
>>> > > > > > >
>>> > > > > > > I'm currently lost at finding any documentation about the
>>> > > > > > > Python SDK
>>> > > > > > > (http://www.ovirt.org/develop/release-management/features
>>> > > > > > > /inf
>>> > > > > > > ra/python-sdk/)
>>> > > > > > > like provided classes, functions etc..  There are some
>>> > > > > > > examples on the
>>> > > > > > > mentioned page, but I cannot find a complete
>>> > > > > > > documentation.  Our oVirt
>>> > > > > > > server is running CentOS 7 with ovirt-engine-sdk-python
>>> > > > > > > installed.
>>> > > > > > > However there doesn't seem to exist an ovirt-engine-sdk-
>>> > > > > > > python-docs
>>> > > > > > > package and I couldn't find any appropriate link on the
>>> > > > > > > oVirt
>>> > > > > > > documentation pages (http://www.ovirt.org/documentation/)
>>> > > > > > > .
>>> > > > > > >
>>> > > > > > > Any ideas, where the documentation is available?
>>> > > > > > >
>>> > > > > > > Cheers
>>> > > > > > > Frank
>>> > > > > > > _______________________________________________
>>> > > > > > > Users mailing list
>>> > > > > > > Users at ovirt.org <mailto:Users at ovirt.org>
>>> > > > > > > http://lists.ovirt.org/mailman/listinfo/users
>>> > > > > > > <http://lists.ovirt.org/mailman/listinfo/users%0A>
>>> > > > > > Other than what you found I found this but that's
>>> > > > > > all.  Doesn't
>>> > > > > > seem
>>> > > > > > to be much other than examples an the one that shows what
>>> > > > > > to
>>> > > > > > import.
>>> > > > > >  I, too would like to find what your are looking for so I
>>> > > > > > can
>>> > > > > > use it.
>>> > > > > There is this RHEV documentation that can be helpful:
>>> > > > > https://access.redhat.com/documentation/en-US/Red_Hat_Enterpr
>>> > > > > ise_
>>> > > > > Virtualization/3.3/html/Developer_Guide/chap-
>>> > > > > Python_Quick_Start_Example.html
>>> > > > >
>>> > > > > >
>>> > > > > > http://www.ovirt.org/develop/api/pythonapi/
>>> > > > > >
>>> > > > > >
>>> > > > > > _______________________________________________
>>> > > > > > Users mailing list
>>> > > > > > Users at ovirt.org <mailto:Users at ovirt.org>
>>> > > > > > http://lists.ovirt.org/mailman/listinfo/users
>>> > > > > > <http://lists.ovirt.org/mailman/listinfo/users >
>>> > > > Thanks.  That is helpful but as Frank said it would be nice to
>>> > > > have
>>> > > > an
>>> > > > api reference for each class and function that gives the
>>> > > > parameters,
>>> > > > return values, and other stuff usually found in an API
>>> > > > reference.  The
>>> > > > examples are helpful but don't give all the information abut a
>>> > > > function
>>> > > > or class.
>>> > > Thanks to all who answered.  Brett brings it to the point:  All
>>> > > sent
>>> > > links so far are indeed helpful - thanks a lot - but not the
>>> > > reference I
>>> > > expected.
>>> > > https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_
>>> > > Virt
>>> > > ualization/3.6/html/Python_SDK_Guide/chap-
>>> > > Python_Reference_Documentation.html#Python_Reference_Documentatio
>>> > > n
>>> > > mentions `pydoc`, but this documentation seems to be provided
>>> > > only
>>> > > for
>>> > > some modules or to be incomplete.  Also for me not being a
>>> > > software
>>> > > developper and newish to Python, the `pydoc` information is not
>>> > > very
>>> > > useful.  Where can I e.g. find the documentation for vms.get()
>>> > > and
>>> > > vms.add() (just to name teo concrete examples)?
>>> > >
>>> > > Frank
>>> > > _______________________________________________
>>> > > Users mailing list
>>> > > Users at ovirt.org
>>> > > http://lists.ovirt.org/mailman/listinfo/users
>>> > I'm in the same boat as Frank.  I've done programming in various
>>> > languages since Fortran without the numbers <G> but only when
>>> > needed
>>> > for my job as an Engineer so I'm not a professional but just trying
>>> > to
>>> > get a job done.  It would be nice to have a full reference so we
>>> > know
>>> > what to provide.  When trying to connect with the api I finally
>>> > figured
>>> > out to use ca_file (like ca-file on the command line).  Raz's
>>> > reference
>>> > is more complete but still leaves a lot out.  The newer equivalent
>>> > of
>>> > Raz's reference seems to be http://www.ovirt.org/develop/release-ma
>>> > nage
>>> > ment/features/infra/python-sdk/.
>>> The Python/Java/Ruby SDKs are simply language specific wrappers
>>> around the REST
>>> api. So if you want a full list of all the options available check
>>> out the
>>> REST api documentation. You will have to translate a particular REST
>>> api
>>> field/feature to the SDK, but all the SDKs are generated from the
>>> REST api
>>> interface definition so the naming and everything should be the same.
>>
>> Thanks.  That is good to know. For reference here's what I found for
>> documentation as a start.  I still miss the old style docs like man
>> pages <G>!
>>
>> https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Virtua
>> lization/3.0/html-single/REST_API_Guide/#chap-REST_API_Guide-
>> Entry_Point - Examples and fairly good detail.  As this (https://fedora
>> hosted.org/rhevm-api/) says this is an effort to define an official
>> REST API for RHEV and the html link leads to this page.
>>
>> http://www.ovirt.org/develop/api/rest-api/rest-api/ - a lot like the
>> python SDK docs with some examples, not a lot of actual info on the
>> calls.
>>
>> https://metacpan.org/pod/Ovirt - does document some of the call
>> parameters
>>
>> https://github.com/dougsland/ovirt-restapi-scripts - collection of
>> scripts for alomost every function.
>>
>>
>> One question I have as I read this.  In a hosted-engine environment how
>> do I use the SDK to tell if the Engine VM is running.  I could dump a
>> hosted-engine --vm-status and parse it's output but is there a better
>> way.  Assuming that since the host is running the Engine is does not
>> always hold true.
>
> You can simply try to connect to the api. If you succeed, the engine is up.
>
> You can also use this url, which is what hosted-engine
> --deploy uses:
>
> http://{fqdn}/ovirt-engine/services/health
>
> Not sure why we keep using it, as it was considered deprecated at some point,
> see this:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1026723
> https://gerrit.ovirt.org/20846

Probably just because it requires no authentication.

> If you want more, you can write something and start from the file implementing
> --vm-status, ovirt_hosted_engine_setup/vm_status.py . It uses
> ovirt_hosted_engine_ha.client to get the data and does rather shallow massaging
> around that. Not sure ovirt_hosted_engine_ha.client is an official API, IIRC no
> other project uses it, and even if it is, it's still not part of the engine API.
>
> Another option is to add an option to --vm-status to output machine-readable
> info. patches are welcome :-)
>
> Best,
> --
> Didi
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users



More information about the Users mailing list