[Engine-devel] Floating Disks implementation in REST-API

Geert Jansen gjansen at redhat.com
Mon Apr 16 12:38:33 UTC 2012



On 04/16/2012 02:33 PM, Ori Liel wrote:
> I'd like us to move forward with this.
>
> The option of using 'attach' action does not exist, because, as Eoghan observed, we would be executing an action on an entity which doesn't exist in the collection: (.../api/vms/{vm:id}/disks/???-no entity-???/attach)
>
> There are two options left on the table; let's see if we can agree on one of them:
>
> 1)
>          POST/api/vms/{vm:id}/disks
>          <disk id="{disk:id}"/>                                =>   attach disk
>
>          DELETE .../api/vms/{vm:id}/disks/{disk:id}
>          <disk><detach>true</detach><disk>                     =>   detach disk
>
> Pros: symmetrical
> Cons: risky (if user wants to detach but forgot to give parameter, disk will be deleted).

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.

I think it makes it less risky. And it is still backwards compatible, as 
3.0 clients do not know how to create a floating disk, and therefore 
there is no risk that they are deleting one.

Regards,
Geert


>
> 2)
>
>          POST/api/vms/{vm:id}/disks
>          <disk id="{disk:id}"/>                                =>   attach disk
>
>          DELETE .../api/vms/{vm:id}/disks/{disk:id}/detach    =>   detach disk
>
> Pros: not dangerous
> Cons: asymmetrical, attach done like add, but detach done using action.
>
>
> No solution is perfect but we need to decide.
>
> Thanks,
>
> Ori.

-- 
Geert Jansen
Sr. Product Marketing Manager, Red Hat Enterprise Virtualization

Red Hat S.r.L.           O: +39 095 916287
Via G. Fara 26           C: +39 348 1980079 (when in US: 415-623-0542)
Milan 20124, Italy       E: gjansen at redhat.com



More information about the Engine-devel mailing list