Templates should be immutable --if there is a new version created, then it is another template. The api should just take a reference to the new template and not try to deal with trickiness around updating templates. That workflow (versioning templates) is a different ball of wax entirely.
On 12/25/12 10:48 PM, "Harikrishna Patnala" <harikrishna.patn...@citrix.com> wrote: >When a user tries to create VM, following sequence of events happen with >current CloudStack implementation > > >(1) User / admin adds a template (which is stored on secondary storage) > >(2) Template gets downloaded from secondary storage to primary storage > >(3) New delta disk is created out of downloaded template > >(4) VM created will be booting from delta disk > > >Requirement: >If admin replaces (1) with a new updated template, CS doesn't have a >mechanism to create a new mapping between delta disk(3) and updated >template. We need to provide a way to create this mapping on restart of >user VM. > >In order to implement the above mentioned requirement, I am planning to >modify the API restoreVirtualMachine which creates a new volume for the >vm in case its existing volume gets corrupted. >Adding the logic to check for the updated template and create a new >delta disk from the updated template. > > >Comments/suggestions ? > >Thanks >-Harikrishna >