[ https://issues.apache.org/jira/browse/CLOUDSTACK-5113?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gaurav Aradhye reassigned CLOUDSTACK-5113: ------------------------------------------ Assignee: Gaurav Aradhye > [Automation] "get_template" function in command should return default > templates > -------------------------------------------------------------------------------- > > Key: CLOUDSTACK-5113 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5113 > Project: CloudStack > Issue Type: Test > Security Level: Public(Anyone can view this level - this is the > default.) > Components: marvin > Affects Versions: 4.2.1 > Environment: Automation > Reporter: Rayees Namathponnan > Assignee: Gaurav Aradhye > Fix For: 4.3.0 > > > I observed couple of vm deployment failures during automation runs; test > cases trying to deploy with vm with template which already deleted by other > account > In below code in common.py we are getting template > "apiclient.listTemplates(cmd)", eg : > 1) testcase1 trying to deploy a new VM > 2) Same time testcase 2 register a template (temp2) > 3) apiclient.listTemplates(cmd) will returns template ID (temp2) > 4) testcase1 deploy vm wilt template temp2, same time (testcase 2) may > delete its account, then obviously temp2 also gets deleted > 5) test case 1 deployment fails since temp2 no available > Solution > get_template() should return only default template; there is no property API > to list only default template; so we should find with starting name of > template ie "CentOS" and in test case we should not register template with > name "CentOS 5.5" > def get_template(apiclient, zoneid, ostype, services=None): > "Returns a template" > cmd = listOsTypes.listOsTypesCmd() > cmd.description = ostype > ostypes = apiclient.listOsTypes(cmd) > if isinstance(ostypes, list): > ostypeid = ostypes[0].id > else: > raise Exception( > "Failed to find OS type with description: %s" % ostype) > cmd = listTemplates.listTemplatesCmd() > cmd.templatefilter = 'featured' > cmd.zoneid = zoneid > if services: > if "template" in services: > cmd.id = services["template"] > list_templates = apiclient.listTemplates(cmd) -- This message was sent by Atlassian JIRA (v6.1.4#6159)