Merge "Separate quota_classes client from quotas client"
This commit is contained in:
commit
97be6211c0
@ -56,7 +56,8 @@ from tempest.services.compute.json.limits_client import LimitsClientJSON
|
||||
from tempest.services.compute.json.migrations_client import \
|
||||
MigrationsClientJSON
|
||||
from tempest.services.compute.json.networks_client import NetworksClientJSON
|
||||
from tempest.services.compute.json.quotas_client import QuotaClassesClientJSON
|
||||
from tempest.services.compute.json.quota_classes_client import \
|
||||
QuotaClassesClientJSON
|
||||
from tempest.services.compute.json.quotas_client import QuotasClientJSON
|
||||
from tempest.services.compute.json.security_group_default_rules_client import \
|
||||
SecurityGroupDefaultRulesClientJSON
|
||||
|
46
tempest/services/compute/json/quota_classes_client.py
Normal file
46
tempest/services/compute/json/quota_classes_client.py
Normal file
@ -0,0 +1,46 @@
|
||||
# Copyright 2012 NTT Data
|
||||
# All Rights Reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import json
|
||||
|
||||
from tempest.api_schema.response.compute.v2_1\
|
||||
import quota_classes as classes_schema
|
||||
from tempest.common import service_client
|
||||
|
||||
|
||||
class QuotaClassesClientJSON(service_client.ServiceClient):
|
||||
|
||||
def get_quota_class_set(self, quota_class_id):
|
||||
"""List the quota class set for a quota class."""
|
||||
|
||||
url = 'os-quota-class-sets/%s' % str(quota_class_id)
|
||||
resp, body = self.get(url)
|
||||
body = json.loads(body)
|
||||
self.validate_response(classes_schema.get_quota_class_set, resp, body)
|
||||
return service_client.ResponseBody(resp, body['quota_class_set'])
|
||||
|
||||
def update_quota_class_set(self, quota_class_id, **kwargs):
|
||||
"""
|
||||
Updates the quota class's limits for one or more resources.
|
||||
"""
|
||||
post_body = json.dumps({'quota_class_set': kwargs})
|
||||
|
||||
resp, body = self.put('os-quota-class-sets/%s' % str(quota_class_id),
|
||||
post_body)
|
||||
|
||||
body = json.loads(body)
|
||||
self.validate_response(classes_schema.update_quota_class_set,
|
||||
resp, body)
|
||||
return service_client.ResponseBody(resp, body['quota_class_set'])
|
@ -15,8 +15,6 @@
|
||||
|
||||
import json
|
||||
|
||||
from tempest.api_schema.response.compute.v2_1\
|
||||
import quota_classes as classes_schema
|
||||
from tempest.api_schema.response.compute.v2_1 import quotas as schema
|
||||
from tempest.common import service_client
|
||||
|
||||
@ -113,29 +111,3 @@ class QuotasClientJSON(service_client.ServiceClient):
|
||||
resp, body = self.delete('os-quota-sets/%s' % str(tenant_id))
|
||||
self.validate_response(schema.delete_quota, resp, body)
|
||||
return service_client.ResponseBody(resp, body)
|
||||
|
||||
|
||||
class QuotaClassesClientJSON(service_client.ServiceClient):
|
||||
|
||||
def get_quota_class_set(self, quota_class_id):
|
||||
"""List the quota class set for a quota class."""
|
||||
|
||||
url = 'os-quota-class-sets/%s' % str(quota_class_id)
|
||||
resp, body = self.get(url)
|
||||
body = json.loads(body)
|
||||
self.validate_response(classes_schema.get_quota_class_set, resp, body)
|
||||
return service_client.ResponseBody(resp, body['quota_class_set'])
|
||||
|
||||
def update_quota_class_set(self, quota_class_id, **kwargs):
|
||||
"""
|
||||
Updates the quota class's limits for one or more resources.
|
||||
"""
|
||||
post_body = json.dumps({'quota_class_set': kwargs})
|
||||
|
||||
resp, body = self.put('os-quota-class-sets/%s' % str(quota_class_id),
|
||||
post_body)
|
||||
|
||||
body = json.loads(body)
|
||||
self.validate_response(classes_schema.update_quota_class_set,
|
||||
resp, body)
|
||||
return service_client.ResponseBody(resp, body['quota_class_set'])
|
||||
|
@ -34,6 +34,7 @@ from tempest.services.compute.json import keypairs_client
|
||||
from tempest.services.compute.json import limits_client
|
||||
from tempest.services.compute.json import migrations_client
|
||||
from tempest.services.compute.json import networks_client as nova_net_client
|
||||
from tempest.services.compute.json import quota_classes_client
|
||||
from tempest.services.compute.json import quotas_client
|
||||
from tempest.services.compute.json import security_group_default_rules_client \
|
||||
as nova_secgrop_default_client
|
||||
@ -122,7 +123,7 @@ class TestServiceClient(base.TestCase):
|
||||
migrations_client.MigrationsClientJSON,
|
||||
nova_net_client.NetworksClientJSON,
|
||||
quotas_client.QuotasClientJSON,
|
||||
quotas_client.QuotaClassesClientJSON,
|
||||
quota_classes_client.QuotaClassesClientJSON,
|
||||
nova_secgrop_default_client.SecurityGroupDefaultRulesClientJSON,
|
||||
security_groups_client.SecurityGroupsClientJSON,
|
||||
servers_client.ServersClientJSON,
|
||||
|
Loading…
x
Reference in New Issue
Block a user