[Ovirt-devel] Ovirt QMF API Proposal
Scott Seago
sseago at redhat.com
Thu Apr 2 15:57:57 UTC 2009
Jeremy Katz wrote:
> On Wednesday, April 01 2009, David Lutterkort said:
>
>> On Wed, 2009-04-01 at 16:44 -0400, Jeremy Katz wrote:
>>
>>> On Tuesday, March 31 2009, Ian Main said:
>>>
>>>> Through much discussion it was decided that we would leverage the rails
>>>> models created for use in the WUI, and create an alternative way to
>>>> access these models, start tasks etc. This will be integrated with the
>>>> current task management system (taskomatic) to produce a complete package.
>>>>
>>>> The idea is to create a set of classes available via QMF as objects.
>>>> These classes would then be backed by either a mid-level API that
>>>> encompasses the models, or by active record models directly. Any changes
>>>> made to these records outside of the API (eg by the WUI) would require
>>>> notification of changes to taskomatic.
>>>>
>>> So, by integrating deeply like this, how much is going to be tied to underlying
>>> implementation details that (may|might|will) change in the future? From
>>> looking through it, it seems very tightly tied which given the many
>>> unanswered questions, is at least of some concern imho.
>>>
>> Can you give examples of what in the API proposal worries you in that
>> regard ? What the QMF API exposes isn't too different from what the REST
>> API (would) expose.
>>
>
> All of the specifics around pools and the way that storage works today
> seems pretty closely tied. Since direction of virt mgmt vs cloud mgmt
> are pretty different here, it's the thing that immediately jumps out.
>
>
It may be that we need multiple API levels here, but tying it to
(hardware and VM) pools and the current oVirt model is actually pretty
deliberate here. We _want_ to expose all of the oVirt-specific actions
here so that everything that the UI does can be performed by other means
as well -- cmdline, other mgmt apps, etc. If we don't expose
ovirt-specific bits, then we can't perform oVirt-specific actions.
Having a non-oVirt-specific mid-level API would be useful too, but
that's not my understanding of what we're doing here.
Scott
More information about the ovirt-devel
mailing list