Inconsistent count of templates reported when executing listTemplates under RootAdmin and DomainAdmin
- Dominant language
- Java
- Stars
- 3.1k
- Forks
- 1.4k
- Avg merge
- 6d 19h
- Merged PRs (30d)
- 32
Description
##### ISSUE TYPE
* Bug Report
##### COMPONENT NAME
~~~
API
~~~
##### CLOUDSTACK VERSION
~~~
4.18.1.1
~~~
##### CONFIGURATION
N/A
##### OS / ENVIRONMENT
N/A
##### SUMMARY
##### STEPS TO REPRODUCE
~~~
1. Make sure your ROOT domain has a DomainAdmin account.
2. Pick one of the VM templates on a running Cloudstack platform to test the API call on
3. Run the following command under the RootAdmin: `cmk list templates templatefilter=executable filter=id,name keyword=`
4. Run the same command under the DomainAdmin.
~~~
##### EXPECTED RESULTS
When running the command under **RootAdmin**, the result template entries match the "count" JSON field:
~~~
cmk list templates templatefilter=executable filter=id,name keyword=MyTemplate
{
"count": 5,
"template": [
{
"id": "19c1af19-ca5a-4f1d-aece-d253f3e961c2",
"name": "MyTemplate 1"
},
{
"id": "804558dd-cc80-4e13-a67d-0db607930fc4",
"name": "MyTemplate 2"
},
{
"id": "7fc10cc1-34e6-46b2-b699-8369b4cc031b",
"name": "MyTemplate 3"
},
{
"id": "7f6504f5-b5ae-437f-99a5-4ca814e41157",
"name": "MyTemplate 4"
},
{
"id": "bf338572-85df-46aa-b4d6-678edd865c5e",
"name": "MyTemplate 5"
}
]
}
~~~
##### ACTUAL RESULTS
When running the command under **DomainAdmin**, the result template entries **do not** match the "count" JSON field:
~~~
cmk list templates templatefilter=executable filter=id,name keyword=MyTemplate
{
"count": 20,
"template": [
{
"id": "19c1af19-ca5a-4f1d-aece-d253f3e961c2",
"name": "MyTemplate 1"
},
{
"id": "804558dd-cc80-4e13-a67d-0db607930fc4",
"name": "MyTemplate 2"
},
{
"id": "7fc10cc1-34e6-46b2-b699-8369b4cc031b",
"name": "MyTemplate 3"
},
{
"id": "7f6504f5-b5ae-437f-99a5-4ca814e41157",
"name": "MyTemplate 4"
},
{
"id": "bf338572-85df-46aa-b4d6-678edd865c5e",
"name": "MyTemplate 5"
}
]
}
~~~
Contributor guide
Research direction
Start by reproducing the listTemplates request with templatefilter=executable, filter=id,name, and a keyword under both RootAdmin and DomainAdmin. Compare the count field with the returned template entries and trace the API handling for role-specific template visibility; done means both roles report a count matching their returned entries.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100