mirror of https://github.com/apache/cloudstack.git
marvin_refactor: register is the real create
createTemplateCmd does a template of a VM while registerTemplateCmd does the actual creation of the template in CS
This commit is contained in:
parent
b862772e46
commit
a8f7364127
|
|
@ -41,25 +41,21 @@ class Template(CloudStackEntity.CloudStackEntity):
|
|||
return template
|
||||
|
||||
|
||||
@classmethod
|
||||
def create(cls, apiclient, factory, **kwargs):
|
||||
def template_of_vm(self, apiclient, name, displaytext, ostypeid, **kwargs):
|
||||
cmd = createTemplate.createTemplateCmd()
|
||||
[setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
|
||||
cmd.id = self.id
|
||||
cmd.name = name
|
||||
cmd.displaytext = displaytext
|
||||
cmd.ostypeid = ostypeid
|
||||
[setattr(cmd, key, value) for key,value in kwargs.iteritems()]
|
||||
template = apiclient.createTemplate(cmd)
|
||||
return Template(template.__dict__)
|
||||
|
||||
|
||||
def register(self, apiclient, name, format, url, hypervisor, zoneid, displaytext, ostypeid, **kwargs):
|
||||
@classmethod
|
||||
def create(self, apiclient, factory, **kwargs):
|
||||
cmd = registerTemplate.registerTemplateCmd()
|
||||
cmd.id = self.id
|
||||
cmd.displaytext = displaytext
|
||||
cmd.format = format
|
||||
cmd.hypervisor = hypervisor
|
||||
cmd.name = name
|
||||
cmd.ostypeid = ostypeid
|
||||
cmd.url = url
|
||||
cmd.zoneid = zoneid
|
||||
[setattr(cmd, factoryKey, factoryValue) for factoryKey, factoryValue in factory.__dict__.iteritems()]
|
||||
[setattr(cmd, key, value) for key,value in kwargs.iteritems()]
|
||||
template = apiclient.registerTemplate(cmd)
|
||||
return template
|
||||
|
|
|
|||
|
|
@ -22,11 +22,17 @@ class TemplateFactory(CloudStackBaseFactory):
|
|||
|
||||
FACTORY_FOR = Template.Template
|
||||
|
||||
displaytext = None
|
||||
name = None
|
||||
displaytext = None
|
||||
format = None
|
||||
url = None
|
||||
hypervisor = None
|
||||
zoneid = None
|
||||
ostypeid = None
|
||||
|
||||
class DefaultBuiltInTemplateFactory(TemplateFactory):
|
||||
ostype = 'CentOS 5.3 (64-bit)'
|
||||
displaytext = 'CentOS 5.3 (64-bit)'
|
||||
name = 'CentOS 5.3 (64-bit)'
|
||||
format = 'VHD'
|
||||
hypervisor = 'XenServer'
|
||||
|
|
|
|||
Loading…
Reference in New Issue