mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	CLOUDSTACK-7956: Fixed the script 'test_project_usage.py' - Register Template in the Project to test the Template limits on the project
(cherry picked from commit 3a6f248e3af0b5d0ba3af7748fc650c44a280ec7) Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
		
							parent
							
								
									6e5b9da7d4
								
							
						
					
					
						commit
						d1d288522d
					
				| @ -39,7 +39,9 @@ from marvin.lib.base import (Project, | ||||
| from marvin.lib.common import (get_domain, | ||||
|                                get_zone, | ||||
|                                get_template, | ||||
|                                list_volumes) | ||||
|                                list_volumes, | ||||
|                                get_builtin_template_info) | ||||
| import time | ||||
| 
 | ||||
| class Services: | ||||
|     """Test Snapshots Services | ||||
| @ -784,23 +786,76 @@ class TestTemplateUsage(cloudstackTestCase): | ||||
|         """ | ||||
|         # Validate the following | ||||
|         # 1. Create a account | ||||
|         # 2. Upload a template from this account. template.create event is | ||||
|         # 2. Register template in the project. template.create event is | ||||
|         #    recorded in cloud.usage_event table for this account | ||||
|         # 3. Delete the template. template.delete event is recorded in | ||||
|         #    cloud.usage_event tables for this account | ||||
|         # 4. Destroy the account | ||||
| 
 | ||||
|         #Create template from Virtual machine and Volume ID | ||||
|         self.template = Template.create( | ||||
|         # Register the First Template in the project | ||||
|         self.debug("Register a Template in the project") | ||||
|         builtin_info = get_builtin_template_info(self.apiclient, self.zone.id) | ||||
|         self.services["templates"]["url"] = builtin_info[0] | ||||
|         self.services["templates"]["hypervisor"] = builtin_info[1] | ||||
|         self.services["templates"]["format"] = builtin_info[2] | ||||
| 
 | ||||
|         # Register new template | ||||
|         template = Template.register( | ||||
|                                         self.userapiclient, | ||||
|                                         self.services["templates"], | ||||
|                                 self.volume.id, | ||||
|                                         zoneid=self.zone.id, | ||||
|                                         projectid=self.project.id | ||||
|                                         ) | ||||
|         self.debug("Created template with ID: %s" % self.template.id) | ||||
|         self.debug( | ||||
|                 "Registered a template of format: %s with ID: %s" % ( | ||||
|                                                                 self.services["templates"]["format"], | ||||
|                                                                 template.id | ||||
|                                                                 )) | ||||
| 
 | ||||
|         # Wait for template status to be changed across | ||||
|         time.sleep(self.services["sleep"]) | ||||
|         timeout = self.services["timeout"] | ||||
|         while True: | ||||
|             list_template_response = Template.list( | ||||
|                                             self.apiclient, | ||||
|                                             templatefilter='all', | ||||
|                                             id=template.id, | ||||
|                                             zoneid=self.zone.id, | ||||
|                                             projectid=self.project.id, | ||||
|                                             ) | ||||
|             if list_template_response[0].isready is True: | ||||
|                 break | ||||
|             elif timeout == 0: | ||||
|                 raise Exception("Template state is not ready, it is %s" % list_template_response[0].isready) | ||||
| 
 | ||||
|             time.sleep(self.services["sleep"]) | ||||
|             timeout = timeout - 1 | ||||
|              | ||||
|         #Verify template response to check whether template added successfully | ||||
|         self.assertEqual( | ||||
|                         isinstance(list_template_response, list), | ||||
|                         True, | ||||
|                         "Check for list template response return valid data" | ||||
|                         ) | ||||
| 
 | ||||
|         self.assertNotEqual( | ||||
|                             len(list_template_response), | ||||
|                             0, | ||||
|                             "Check template available in List Templates" | ||||
|                         ) | ||||
| 
 | ||||
|         template_response = list_template_response[0] | ||||
|         self.assertEqual( | ||||
|                             template_response.isready, | ||||
|                             True, | ||||
|                             "Template state is not ready, it is %s" % template_response.isready | ||||
|                         ) | ||||
|          | ||||
|         self.debug("Created template with ID: %s" % template.id) | ||||
|          | ||||
|         # Delete template | ||||
|         self.template.delete(self.apiclient) | ||||
|         self.debug("Deleted template with ID: %s" % self.template.id) | ||||
|         template.delete(self.apiclient) | ||||
|         self.debug("Deleted template with ID: %s" % template.id) | ||||
| 
 | ||||
|         # Fetch project account ID from project UUID | ||||
|         self.debug( | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user