Skip to content

Commit f7f03ad

Browse files
committed
Merge remote-tracking branch 'origin/4.17' into main
2 parents def7ce6 + 0075717 commit f7f03ad

File tree

2 files changed

+32
-13
lines changed

2 files changed

+32
-13
lines changed

plugins/metrics/src/main/java/org/apache/cloudstack/api/ListVMsMetricsCmd.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
* </ul>
4444
*/
4545
@APICommand(name = ListVMsMetricsCmd.APINAME, description = "Lists VM metrics", responseObject = VmMetricsResponse.class,
46-
requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, responseView = ResponseObject.ResponseView.Full,
46+
requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, responseView = ResponseObject.ResponseView.Restricted,
4747
since = "4.9.3", authorized = {RoleType.ResourceAdmin, RoleType.DomainAdmin, RoleType.User})
4848
public class ListVMsMetricsCmd extends ListVMsCmd implements UserCmd {
4949
public static final String APINAME = "listVirtualMachinesMetrics";

test/integration/smoke/test_metrics_api.py

Lines changed: 31 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,28 @@ def setUpClass(cls):
5858
cls.hypervisor
5959
)
6060
cls._cleanup.append(cls.service_offering)
61+
cls.domain = get_domain(cls.apiclient)
62+
cls.account = Account.create(
63+
cls.apiclient,
64+
cls.services["account"],
65+
admin=False,
66+
domainid=cls.domain.id
67+
)
68+
cls._cleanup.append(cls.account)
6169

6270
@classmethod
6371
def tearDownClass(cls):
6472
super(TestMetrics, cls).tearDownClass()
6573

6674
def setUp(self):
75+
self.userapiclient = self.testClient.getUserApiClient(
76+
UserName=self.account.name,
77+
DomainName=self.account.domain
78+
)
6779
self.cleanup = []
6880

6981
def tearDown(self):
70-
super(TestMetrics, self).tearDown();
82+
super(TestMetrics, self).tearDown()
7183

7284
@attr(tags = ["advanced", "advancedns", "smoke", "basic"], required_hardware="false")
7385
def test_list_hosts_metrics(self):
@@ -117,23 +129,24 @@ def test_list_zones_metrics(self):
117129

118130
return
119131

120-
@attr(tags = ["advanced", "advancedns", "smoke", "basic"], required_hardware="false")
121-
def test_list_vms_metrics(self):
122-
#deploy VM
132+
def run_list_vm_metrics_test(self, is_user):
133+
apiclient = self.apiclient
134+
if is_user:
135+
apiclient = self.userapiclient
123136
self.small_virtual_machine = VirtualMachine.create(
124-
self.apiclient,
125-
self.services["virtual_machine"],
126-
serviceofferingid=self.service_offering.id,
127-
templateid=self.template.id,
128-
zoneid=self.zone.id
129-
)
137+
apiclient,
138+
self.services["virtual_machine"],
139+
serviceofferingid=self.service_offering.id,
140+
templateid=self.template.id,
141+
zoneid=self.zone.id
142+
)
130143
self.cleanup.append(self.small_virtual_machine)
131144

132145

133146
cmd = listVirtualMachinesMetrics.listVirtualMachinesMetricsCmd()
134147
cmd.id = self.small_virtual_machine.id
135148

136-
lvmm = self.apiclient.listVirtualMachinesMetrics(cmd)[0]
149+
lvmm = apiclient.listVirtualMachinesMetrics(cmd)[0]
137150

138151
self.assertEqual(lvmm.id, self.small_virtual_machine.id)
139152

@@ -144,7 +157,13 @@ def test_list_vms_metrics(self):
144157
self.assertTrue(hasattr(lvmm, 'networkread'))
145158
self.assertTrue(hasattr(lvmm, 'networkwrite'))
146159

147-
return
160+
@attr(tags = ["advanced", "advancedns", "smoke", "basic"], required_hardware="false")
161+
def test_list_vms_metrics_admin(self):
162+
self.run_list_vm_metrics_test(False)
163+
164+
@attr(tags = ["advanced", "advancedns", "smoke", "basic"], required_hardware="false")
165+
def test_list_vms_metrics_user(self):
166+
self.run_list_vm_metrics_test(True)
148167

149168
@attr(tags = ["advanced", "advancedns", "smoke", "basic"], required_hardware="false")
150169
def test_list_pstorage_metrics(self):

0 commit comments

Comments
 (0)