Merge image into template
This commit is contained in:
		
					parent
					
						
							
								46b918d175
							
						
					
				
			
			
				commit
				
					
						921fa209ce
					
				
			
		
					 1 changed files with 43 additions and 13 deletions
				
			
		|  | @ -146,26 +146,56 @@ class OpenNebulaManager(): | ||||||
|                                  <MEMORY>{memory}</MEMORY> |                                  <MEMORY>{memory}</MEMORY> | ||||||
|                                  <VCPU>{vcpu}</VCPU> |                                  <VCPU>{vcpu}</VCPU> | ||||||
|                                  <CPU>{cpu}</CPU> |                                  <CPU>{cpu}</CPU> | ||||||
|                                  <DISK> |  | ||||||
|                                   <TYPE>fs</TYPE> |  | ||||||
|                                   <SIZE>{size}</SIZE> |  | ||||||
|                                   <DEV_PREFIX>vd</DEV_PREFIX> |  | ||||||
|                                  </DISK> |  | ||||||
|                                  <CONTEXT> |                                  <CONTEXT> | ||||||
|                                   <SSH_PUBLIC_KEY>{ssh}</SSH_PUBLIC_KEY> |                                   <SSH_PUBLIC_KEY>{ssh}</SSH_PUBLIC_KEY> | ||||||
|                                  </CONTEXT> |                                  </CONTEXT> | ||||||
|                                 </TEMPLATE> |  | ||||||
|                            """ |                            """ | ||||||
|         vm_id = template.instantiate(name ='', |         try: | ||||||
|                                     pending=False, |             disk = template.template.disks[0] | ||||||
|                                     extra_template=vm_specs_formatter.format( |             image_id = disk.image_id | ||||||
|  |             vm_specs = vm_specs_formatter.format( | ||||||
|                                         vcpu=int(specs['cpu']), |                                         vcpu=int(specs['cpu']), | ||||||
|                                         cpu=0.1* int(specs['cpu']), |                                         cpu=0.1* int(specs['cpu']), | ||||||
|                                         size=1024 * int(specs['disk_size']), |  | ||||||
|                                         memory=1024 * int(specs['memory']), |                                         memory=1024 * int(specs['memory']), | ||||||
|                                         ssh=ssh_key |                                         ssh=ssh_key | ||||||
|  |                      | ||||||
|                     ) |                     ) | ||||||
|  |             vm_specs += """<DISK> | ||||||
|  |                                   <TYPE>fs</TYPE> | ||||||
|  |                                   <SIZE>{size}</SIZE> | ||||||
|  |                                   <DEV_PREFIX>vd</DEV_PREFIX> | ||||||
|  |                                   <IMAGE_ID>{image_id}</IMAGE_ID> | ||||||
|  |                            </DISK> | ||||||
|  |                           </TEMPLATE> | ||||||
|  |                         """.format(size=1024 * int(specs['disk_size']), | ||||||
|  |                                    image_id=image_id) | ||||||
|  | 
 | ||||||
|  |         except: | ||||||
|  |             disk = template.template.disks[0] | ||||||
|  |             image = disk.image | ||||||
|  |             image_uname = disk.image_uname | ||||||
|  | 
 | ||||||
|  |             vm_specs = vm_specs_formatter.format( | ||||||
|  |                                         vcpu=int(specs['cpu']), | ||||||
|  |                                         cpu=0.1* int(specs['cpu']), | ||||||
|  |                                         memory=1024 * int(specs['memory']), | ||||||
|  |                                         ssh=ssh_key | ||||||
|  |                      | ||||||
|                     ) |                     ) | ||||||
|  |             vm_specs += """<DISK> | ||||||
|  |                                   <TYPE>fs</TYPE> | ||||||
|  |                                   <SIZE>{size}</SIZE> | ||||||
|  |                                   <DEV_PREFIX>vd</DEV_PREFIX> | ||||||
|  |                                   <IMAGE>{image}</IMAGE> | ||||||
|  |                                   <IMAGE_UNAME>{image_uname}</IMAGE_UNAME> | ||||||
|  |                            </DISK> | ||||||
|  |                           </TEMPLATE> | ||||||
|  |                         """.format(size=1024 * int(specs['disk_size']), | ||||||
|  |                                    image=image, | ||||||
|  |                                    image_uname=image_uname) | ||||||
|  |         vm_id = template.instantiate(name ='', | ||||||
|  |                                     pending=False, | ||||||
|  |                                     extra_template=vm_specs,                                    ) | ||||||
| 
 | 
 | ||||||
|         try: |         try: | ||||||
|             self.oneadmin_client.call( |             self.oneadmin_client.call( | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue