Add create template function
This commit is contained in:
		
					parent
					
						
							
								ec945cc31b
							
						
					
				
			
			
				commit
				
					
						b052507134
					
				
			
		
					 2 changed files with 34 additions and 3 deletions
				
			
		|  | @ -83,3 +83,28 @@ class OpenNebulaManager(): | |||
|                     protocol=settings.OPENNEBULA_PROTOCOL) | ||||
|                 ) | ||||
|         return user_pool | ||||
|     def create_template(self, name, cores, memory, disk_size): | ||||
|         template_string_formatter = """<TEMPLATE> | ||||
|                                         <NAME>{name}</NAME> | ||||
|                                         <MEMORY>{memory}</MEMORY> | ||||
|                                         <VCPU>{vcpu}</VCPU> | ||||
|                                         <CPU>{cpu}</CPU> | ||||
|                                         <DISK> | ||||
|                                          <TYPE>fs</TYPE> | ||||
|                                          <SIZE>{size}</SIZE> | ||||
|                                          <DEV_PREFIX>vd</DEV_PREFIX> | ||||
|                                         </DISK> | ||||
|                                        </TEMPLATE> | ||||
|                                        """ | ||||
|         template_id = oca.VmTemplate.allocate( | ||||
|             self.oneadmin_client, | ||||
|             template_string_formatter.format( | ||||
|                 name=name, | ||||
|                 vcpu=cores, | ||||
|                 cpu=0.1*cores, | ||||
|                 size=1024 * disk_size, | ||||
|                 memory=1024 * memory | ||||
|             ) | ||||
|         ) | ||||
| 
 | ||||
|         return template_id | ||||
|  |  | |||
|  | @ -18,7 +18,11 @@ class OpenNebulaManagerTestCases(TestCase): | |||
| 
 | ||||
|     def test_model_can_connect_to_server(self): | ||||
|         """Test the opennebula manager model can connect to a server.""" | ||||
|         self.assertFalse(self.manager is None) | ||||
|         try: | ||||
|             version = self.manager.version() | ||||
|         except: | ||||
|             version = None | ||||
|         self.assertFalse(version is None) | ||||
| 
 | ||||
|     def test_model_can_create_user(self): | ||||
|         """Test the opennebula manager model can create a new user.""" | ||||
|  | @ -46,8 +50,10 @@ class VirtualMachineTemplateTestCase(TestCase): | |||
|         self.disk_size = 10.0 | ||||
| 
 | ||||
|         self.manager = OpenNebulaManager(email=None, password=None, create_user=False) | ||||
|         self.opennebula_id = self.manager.create_template(self.cores, self.memory, | ||||
|                                                           self.disk_size) | ||||
|         self.opennebula_id = self.manager.create_template(name=self.template_name, | ||||
|                                                           cores=self.cores, | ||||
|                                                           memory=self.memory, | ||||
|                                                           disk_size=self.disk_size) | ||||
| 
 | ||||
|         self.template = VirtualMachineTemplate(opennebula_id=self.opennebula_id, | ||||
|                                                base_price=self.base_price, | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue