Chandan Purushothama created CLOUDSTACK-8008:
------------------------------------------------
Summary: [Automation] Unable to list project tags using projectId
parameter
Key: CLOUDSTACK-8008
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8008
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Components: Automation
Affects Versions: 4.5.0
Reporter: Chandan Purushothama
Priority: Critical
Fix For: 4.5.0
Unable to list tags using project id
================
*Test Case Error Log:*
================
{noformat}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ::::::::::::STARTED :
TC: test_15_project_tag :::::::::::
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Payload: {'apiKey':
u's8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ',
'name': 'Project-V0LCNV', 'command': 'createProject', 'signature':
'm/TgWlNz5nCZhvQk2ijMmaDal18=', 'displaytext': 'Test project', 'response':
'json'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ========Sending GET
Cmd : createProject=======
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection
(1): 10.223.130.163
requests.packages.urllib3.connectionpool: DEBUG: "GET
/client/api?apiKey=s8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ&name=Project-V0LCNV&displaytext=Test+project&signature=m%2FTgWlNz5nCZhvQk2ijMmaDal18%3D&command=createProject&response=json
HTTP/1.1" 200 122
test_15_project_tag (test_tags.TestResourceTags): DEBUG: === Jobid:
560af5c6-7aab-4e22-8112-69827a6534c1 Started ===
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Payload: {'signature':
'pgHH+YwrPyJJkUaofltWoq/VsJc=', 'apiKey':
u's8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ',
'command': 'queryAsyncJobResult', 'response': 'json', 'jobid':
u'560af5c6-7aab-4e22-8112-69827a6534c1'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ========Sending GET
Cmd : queryAsyncJobResult=======
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection
(1): 10.223.130.163
requests.packages.urllib3.connectionpool: DEBUG: "GET
/client/api?jobid=560af5c6-7aab-4e22-8112-69827a6534c1&apiKey=s8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ&command=queryAsyncJobResult&response=json&signature=pgHH%2BYwrPyJJkUaofltWoq%2FVsJc%3D
HTTP/1.1" 200 1323
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Response :
{jobprocstatus : 0, created : u'2014-12-02T15:36:29-0800', jobresult :
{primarystorageavailable : u'200', domain : u'ROOT', domainid :
u'226d5a1a-6e93-11e4-b54b-0689ea0007ab', vpclimit : u'20', iplimit : u'20',
memorytotal : 0, secondarystorageavailable : u'400', vmtotal : 0, displaytext :
u'Test project', vpctotal : 0, id : u'510ce7d4-6fa1-4fa4-ada9-7362b3774462',
networkavailable : u'20', networklimit : u'20', iptotal : 0, volumetotal : 0,
snapshotlimit : u'20', state : u'Active', networktotal : 0, vpcavailable :
u'20', cpuavailable : u'40', primarystoragetotal : 0, templatelimit : u'20',
snapshottotal : 0, templateavailable : u'20', vmlimit : u'20', tags : [],
volumelimit : u'20', templatetotal : 0, memoryavailable : u'40960',
secondarystoragetotal : 0, account : u'test-TestResourceTags-WNDF0D',
secondarystoragelimit : u'400', volumeavailable : u'20', name :
u'Project-V0LCNV', vmavailable : u'20', ipavailable : u'1', memorylimit :
u'40960', primarystoragelimit : u'200', cputotal : 0, cpulimit : u'40',
snapshotavailable : u'20'}, cmd :
u'org.apache.cloudstack.api.command.user.project.CreateProjectCmd', userid :
u'173f139b-5379-4f5b-9aee-eefc77362fe7', jobstatus : 1, jobid :
u'560af5c6-7aab-4e22-8112-69827a6534c1', jobresultcode : 0, jobresulttype :
u'object', jobinstancetype : u'None', accountid :
u'96202eae-f933-41f9-ac94-e2ad37cbdfe6'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG:
===Jobid:560af5c6-7aab-4e22-8112-69827a6534c1 ; StartTime:Tue Dec 2 15:36:46
2014 ; EndTime:Tue Dec 2 15:36:46 2014 ; TotalTime:0===
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Response :
{jobprocstatus : 0, created : u'2014-12-02T15:36:29-0800', jobresult :
{primarystorageavailable : u'200', domain : u'ROOT', domainid :
u'226d5a1a-6e93-11e4-b54b-0689ea0007ab', vpclimit : u'20', iplimit : u'20',
memorytotal : 0, secondarystorageavailable : u'400', vmtotal : 0, displaytext :
u'Test project', vpctotal : 0, id : u'510ce7d4-6fa1-4fa4-ada9-7362b3774462',
networkavailable : u'20', networklimit : u'20', iptotal : 0, volumetotal : 0,
snapshotlimit : u'20', state : u'Active', networktotal : 0, vpcavailable :
u'20', cpuavailable : u'40', primarystoragetotal : 0, templatelimit : u'20',
snapshottotal : 0, templateavailable : u'20', vmlimit : u'20', tags : [],
volumelimit : u'20', templatetotal : 0, memoryavailable : u'40960',
secondarystoragetotal : 0, account : u'test-TestResourceTags-WNDF0D',
secondarystoragelimit : u'400', volumeavailable : u'20', name :
u'Project-V0LCNV', vmavailable : u'20', ipavailable : u'1', memorylimit :
u'40960', primarystoragelimit : u'200', cputotal : 0, cpulimit : u'40',
snapshotavailable : u'20'}, cmd :
u'org.apache.cloudstack.api.command.user.project.CreateProjectCmd', userid :
u'173f139b-5379-4f5b-9aee-eefc77362fe7', jobstatus : 1, jobid :
u'560af5c6-7aab-4e22-8112-69827a6534c1', jobresultcode : 0, jobresulttype :
u'object', jobinstancetype : u'None', accountid :
u'96202eae-f933-41f9-ac94-e2ad37cbdfe6'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Created project with
domain admin with ID: 510ce7d4-6fa1-4fa4-ada9-7362b3774462
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Creating a tag for the
project
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Payload: {'apiKey':
u's8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ',
'resourcetype': 'project', 'resourceIds':
u'510ce7d4-6fa1-4fa4-ada9-7362b3774462', 'command': 'createTags', 'signature':
'OgXuOQNdnGVg0rKBV4mLXEq5PX0=', 'tags[0].key': 'region', 'response': 'json',
'tags[0].value': 'India'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ========Sending GET
Cmd : createTags=======
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection
(1): 10.223.130.163
requests.packages.urllib3.connectionpool: DEBUG: "GET
/client/api?apiKey=s8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ&resourcetype=project&resourceIds=510ce7d4-6fa1-4fa4-ada9-7362b3774462&command=createTags&signature=OgXuOQNdnGVg0rKBV4mLXEq5PX0%3D&tags%5B0%5D.key=region&response=json&tags%5B0%5D.value=India
HTTP/1.1" 200 75
test_15_project_tag (test_tags.TestResourceTags): DEBUG: === Jobid:
72423346-06d8-4d70-a536-aab48d9364f1 Started ===
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Payload: {'signature':
'diYkRVBtAUIwilewp4hi9w/Wem0=', 'apiKey':
u's8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ',
'command': 'queryAsyncJobResult', 'response': 'json', 'jobid':
u'72423346-06d8-4d70-a536-aab48d9364f1'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ========Sending GET
Cmd : queryAsyncJobResult=======
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection
(1): 10.223.130.163
requests.packages.urllib3.connectionpool: DEBUG: "GET
/client/api?jobid=72423346-06d8-4d70-a536-aab48d9364f1&apiKey=s8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ&command=queryAsyncJobResult&response=json&signature=diYkRVBtAUIwilewp4hi9w%2FWem0%3D
HTTP/1.1" 200 389
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Response :
{jobprocstatus : 0, created : u'2014-12-02T15:36:30-0800', cmd :
u'org.apache.cloudstack.api.command.user.tag.CreateTagsCmd', userid :
u'173f139b-5379-4f5b-9aee-eefc77362fe7', jobstatus : 1, jobid :
u'72423346-06d8-4d70-a536-aab48d9364f1', jobresultcode : 0, jobresulttype :
u'object', jobresult : {success : True}, accountid :
u'96202eae-f933-41f9-ac94-e2ad37cbdfe6'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG:
===Jobid:72423346-06d8-4d70-a536-aab48d9364f1 ; StartTime:Tue Dec 2 15:36:47
2014 ; EndTime:Tue Dec 2 15:36:47 2014 ; TotalTime:0===
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Response :
{jobprocstatus : 0, created : u'2014-12-02T15:36:30-0800', cmd :
u'org.apache.cloudstack.api.command.user.tag.CreateTagsCmd', userid :
u'173f139b-5379-4f5b-9aee-eefc77362fe7', jobstatus : 1, jobid :
u'72423346-06d8-4d70-a536-aab48d9364f1', jobresultcode : 0, jobresulttype :
u'object', jobresult : {success : True}, accountid :
u'96202eae-f933-41f9-ac94-e2ad37cbdfe6'}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Tag created:
{'success': True}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Payload: {'apiKey':
u's8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ',
'projectid': u'510ce7d4-6fa1-4fa4-ada9-7362b3774462', 'command': 'listTags',
'signature': 'DBH68ZyJNXtHxhFrKVZ+OXSAwPo=', 'response': 'json', 'listall':
True}
test_15_project_tag (test_tags.TestResourceTags): DEBUG: ========Sending GET
Cmd : listTags=======
requests.packages.urllib3.connectionpool: INFO: Starting new HTTP connection
(1): 10.223.130.163
requests.packages.urllib3.connectionpool: DEBUG: "GET
/client/api?apiKey=s8-w4P-KNpZug22P4xScxPGflYEQ77OQEJfIDF6uIkZGXiXp8hKCc1AGMqpMgyWihHuDY80PD7NDks-ZgxqOAQ&projectid=510ce7d4-6fa1-4fa4-ada9-7362b3774462&command=listTags&signature=DBH68ZyJNXtHxhFrKVZ%2BOXSAwPo%3D&response=json&listall=True
HTTP/1.1" 200 28
test_15_project_tag (test_tags.TestResourceTags): DEBUG: Response : None
test_15_project_tag (test_tags.TestResourceTags): DEBUG: tags = None
test_15_project_tag (test_tags.TestResourceTags): CRITICAL: FAILED:
test_15_project_tag: ['Traceback (most recent call last):\n', ' File
"/usr/lib/python2.7/unittest/case.py", line 329, in run\n testMethod()\n', '
File "/home/Chandan/test_tags.py", line 1720, in test_15_project_tag\n
"List tags should not return empty response"\n', ' File
"/usr/lib/python2.7/unittest/case.py", line 513, in assertEqual\n
assertion_func(first, second, msg=msg)\n', ' File
"/usr/lib/python2.7/unittest/case.py", line 506, in _baseAssertEqual\n raise
self.failureException(msg)\n', 'AssertionError: List tags should not return
empty response\n']
--------------------- >> end captured logging << ---------------------
----------------------------------------------------------------------
Ran 1 test in 269.646s
FAILED (failures=1)
{noformat}
===============
*Test Client Code:*
===============
{code}
@attr(tags=["advanced"], required_hardware="false")
def test_15_project_tag(self):
""" Test creation, listing and deletion tags on projects
"""
# Validate the following
# 1. Create a new project
# 2. Create a tag on projects using createTags API
# 3. Delete the tag.
# Create project as a domain admin
project = Project.create(
self.user_api_client,
self.services["project"]
)
# Cleanup created project at end of test
self.cleanup.append(project)
self.debug("Created project with domain admin with ID: %s" %
project.id)
self.debug("Creating a tag for the project")
tag = Tag.create(
self.user_api_client,
resourceIds=project.id,
resourceType='project',
tags={'region': 'India'}
)
self.debug("Tag created: %s" % tag.__dict__)
tags = Tag.list(
self.user_api_client,
listall=True,
projectid=project.id
)
self.debug("tags = %s" % tags)
self.assertEqual(
isinstance(tags, list),
True,
"List tags should not return empty response"
)
self.assertEqual(
tags[0].value,
'India',
'The tag should have original value'
)
projects = Project.list(
self.user_api_client,
listall=True,
key='region',
value='India'
)
self.assertEqual(
isinstance(projects, list),
True,
"List Project should return valid list"
)
self.debug("Deleting the created tag..")
try:
tag.delete(
self.user_api_client,
resourceIds=project.id,
resourceType='project',
tags={'region': 'India'}
)
except Exception as e:
self.fail("Failed to delete the tag - %s" % e)
self.debug("Verifying if tag is actually deleted!")
tags = Tag.list(
self.user_api_client,
listall=True,
resourceType='project',
account=self.account.name,
domainid=self.account.domainid,
key='region',
value='India'
)
self.assertEqual(
tags,
None,
"List tags should return empty response"
)
return
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)