[Engine-devel] Floating Disks implementation in REST-API
Geert Jansen
gjansen at redhat.com
Tue Apr 17 12:50:17 UTC 2012
On 04/17/2012 02:27 PM, Ori Liel wrote:
>> My idea for that was to introduce<force>true|false</force> as well.
>> Without force=true, we won't delete a disk if it's currently floating.
>>
>
> If the disk is floating it will only appear in root collection (...api/disks), and DELETE from
> there is non-ambiguous, as there's no option to detach - so I don't see how adding 'force' there
> helps us.
Floating disks should be both in the root context, and also in the VM
context for each VM the floating disk is attached to, right? So floating
disks would appear 1+N_attach times in the API, once in the root
context, and once for each VM they are attached to.
Regarding the root context: you are right that DELETE in the root
context is unambiguous, and therefore we don't need "detach" or "force"
arguments there. And because in 3.0 we didn't have a disk collection in
the root context, backwards compatibility isn't an issue here.
> In your previous mail you suggested the same thing for attached floating disk, so perhaps you meant
> that here as well? (sorry for only responding now, by the way). But that does break API - for example,
> a simple script deleting all disks from a VM would fail because suddenly deleting requires 'force=true'.
A 3.0 client does not know how to create a floating disk. So in my view,
it does not need to know how to delete one.
Is your concern about the case where a 3.1 client creates a floating
disk, and you would like a 3.0 client to be able to delete that. I think
this is a too strong interpretation of backwards compatibility. So far
all ISV software that integrates with us and does provisioning of VMs,
both creates and deletes VMs. And properly written software will issue
an error message when a disk DELETE fails. In the end there could be
many other reasons why a disk DELETE can fail, right? We are adding one
more reason a disk DELETE will fail, namely that the disk is floating.
Regards,
Geert
More information about the Engine-devel
mailing list