|  |  |  | @ -507,38 +507,15 @@ def main(): | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     decon = decort_osimage(amodule) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if amodule.params['image_name'] or amodule.params['image_id']: | 
			
		
	
		
			
				
					|  |  |  |  |         image_id, image_facts = decort_osimage.decort_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_image_id = decort_osimage.decort_osimage_package_facts(image_facts)['id'] | 
			
		
	
		
			
				
					|  |  |  |  |         if decort_osimage.decort_osimage_package_facts(image_facts)['id'] > 0: | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['facts'] = decort_osimage.decort_osimage_package_facts(image_facts, amodule.check_mode) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if amodule.params['state'] == "present" and decon.validated_image_id == 0 and amodule.params['image_name'] and amodule.params['url']: | 
			
		
	
		
			
				
					|  |  |  |  |         decort_osimage.decort_image_create(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.result['changed'] = True | 
			
		
	
		
			
				
					|  |  |  |  |         image_id, image_facts = decort_osimage.decort_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.result['msg'] = ("OS image '{}' created").format(decort_osimage.decort_osimage_package_facts(image_facts)['id']) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.result['facts'] = decort_osimage.decort_osimage_package_facts(image_facts, amodule.check_mode) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_image_id = decort_osimage.decort_osimage_package_facts(image_facts)['id'] | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |      | 
			
		
	
		
			
				
					|  |  |  |  |     elif amodule.params['state'] == "absent" and decon.validated_image_id: | 
			
		
	
		
			
				
					|  |  |  |  |         if amodule.params['image_name'] or amodule.params['image_id'] and\ | 
			
		
	
		
			
				
					|  |  |  |  |              decort_osimage.decort_osimage_package_facts(image_facts)['accountId'] == amodule.params['account_Id']: | 
			
		
	
		
			
				
					|  |  |  |  |             amodule.image_id_delete = decon.validated_image_id | 
			
		
	
		
			
				
					|  |  |  |  |             decort_osimage.decort_image_delete(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  |      | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if amodule.params['virt_name'] or amodule.params['virt_id']: | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         image_id, image_facts = decort_osimage.decort_virt_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_image_id, _ = decort_osimage.decort_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         if decort_osimage.decort_osimage_package_facts(image_facts)['id'] > 0: | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['facts'] = decort_osimage.decort_osimage_package_facts(image_facts, amodule.check_mode) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_virt_image_id = decort_osimage.decort_osimage_package_facts(image_facts)['id'] | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_virt_image_name = decort_osimage.decort_osimage_package_facts(image_facts)['name'] | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         if decort_osimage.decort_osimage_package_facts(image_facts)['id'] == 0 and amodule.params['state'] == "present" and decon.validated_image_id > 0: | 
			
		
	
		
			
				
					|  |  |  |  |             image_id, image_facts = decort_osimage.decort_virt_image_create(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['msg'] = ("Virtual image '{}' created").format(decort_osimage.decort_osimage_package_facts(image_facts)['id']) | 
			
		
	
	
		
			
				
					|  |  |  | @ -547,19 +524,36 @@ def main(): | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['msg'] = ("Cannot find OS image") | 
			
		
	
		
			
				
					|  |  |  |  |             amodule.fail_json(**decon.result) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         if decon.validated_image_id: | 
			
		
	
		
			
				
					|  |  |  |  |             if decort_osimage.decort_osimage_package_facts(image_facts)['linkto'] != decon.validated_image_id: | 
			
		
	
		
			
				
					|  |  |  |  |                 decort_osimage.decort_virt_image_link(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  |                 decon.result['changed'] = True | 
			
		
	
		
			
				
					|  |  |  |  |                 amodule.exit_json(**decon.result) | 
			
		
	
		
			
				
					|  |  |  |  |          | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         if decon.validated_virt_image_id > 0 and amodule.params['state'] == "absent": | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['msg'] = ("Osimage module cannot delete virtual images.") | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['failed'] = True | 
			
		
	
		
			
				
					|  |  |  |  |             amodule.exit_json(**decon.result) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     elif amodule.params['image_name'] or amodule.params['image_id']: | 
			
		
	
		
			
				
					|  |  |  |  |         image_id, image_facts = decort_osimage.decort_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |         decon.validated_image_id = decort_osimage.decort_osimage_package_facts(image_facts)['id'] | 
			
		
	
		
			
				
					|  |  |  |  |         if decort_osimage.decort_osimage_package_facts(image_facts)['id'] > 0: | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['facts'] = decort_osimage.decort_osimage_package_facts(image_facts, amodule.check_mode) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         if amodule.params['state'] == "present" and decon.validated_image_id == 0 and amodule.params['image_name'] and amodule.params['url']: | 
			
		
	
		
			
				
					|  |  |  |  |             decort_osimage.decort_image_create(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['changed'] = True | 
			
		
	
		
			
				
					|  |  |  |  |             image_id, image_facts = decort_osimage.decort_image_find(decon, amodule) | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['msg'] = ("OS image '{}' created").format(decort_osimage.decort_osimage_package_facts(image_facts)['id']) | 
			
		
	
		
			
				
					|  |  |  |  |             decon.result['facts'] = decort_osimage.decort_osimage_package_facts(image_facts, amodule.check_mode) | 
			
		
	
		
			
				
					|  |  |  |  |             decon.validated_image_id = decort_osimage.decort_osimage_package_facts(image_facts)['id'] | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         elif amodule.params['state'] == "absent" and decon.validated_image_id: | 
			
		
	
		
			
				
					|  |  |  |  |             if amodule.params['image_name'] or amodule.params['image_id'] and\ | 
			
		
	
		
			
				
					|  |  |  |  |                 decort_osimage.decort_osimage_package_facts(image_facts)['accountId'] == amodule.params['account_Id']: | 
			
		
	
		
			
				
					|  |  |  |  |                 amodule.image_id_delete = decon.validated_image_id | 
			
		
	
		
			
				
					|  |  |  |  |                 decort_osimage.decort_image_delete(decon,amodule) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if decon.result['failed'] == True: | 
			
		
	
		
			
				
					|  |  |  |  |         # we failed to find the specified image - fail the module | 
			
		
	
	
		
			
				
					|  |  |  | 
 |