diff --git a/novaclient/v1_1/quota_classes.py b/novaclient/v1_1/quota_classes.py index 7c16ec016..3b52d64f4 100644 --- a/novaclient/v1_1/quota_classes.py +++ b/novaclient/v1_1/quota_classes.py @@ -39,7 +39,8 @@ class QuotaClassSetManager(base.ManagerWithFind): injected_file_content_bytes=None, injected_file_path_bytes=None, volumes=None, gigabytes=None, ram=None, floating_ips=None, instances=None, - injected_files=None, cores=None, key_pairs=None): + injected_files=None, cores=None, key_pairs=None, + security_groups=None, security_group_rules=None): body = {'quota_class_set': { 'class_name': class_name, @@ -53,7 +54,9 @@ class QuotaClassSetManager(base.ManagerWithFind): 'floating_ips': floating_ips, 'instances': instances, 'injected_files': injected_files, - 'cores': cores}} + 'cores': cores, + 'security_groups': security_groups, + 'security_group_rules': security_group_rules}} for key in body['quota_class_set'].keys(): if body['quota_class_set'][key] is None: diff --git a/novaclient/v1_1/quotas.py b/novaclient/v1_1/quotas.py index 20fc5c36e..cc2556384 100644 --- a/novaclient/v1_1/quotas.py +++ b/novaclient/v1_1/quotas.py @@ -40,7 +40,8 @@ class QuotaSetManager(base.ManagerWithFind): injected_file_content_bytes=None, injected_file_path_bytes=None, volumes=None, gigabytes=None, ram=None, floating_ips=None, instances=None, - injected_files=None, cores=None, key_pairs=None): + injected_files=None, cores=None, key_pairs=None, + security_groups=None, security_group_rules=None): body = {'quota_set': { 'tenant_id': tenant_id, @@ -54,7 +55,9 @@ class QuotaSetManager(base.ManagerWithFind): 'floating_ips': floating_ips, 'instances': instances, 'injected_files': injected_files, - 'cores': cores}} + 'cores': cores, + 'security_groups': security_groups, + 'security_group_rules': security_group_rules}} for key in body['quota_set'].keys(): if body['quota_set'][key] is None: diff --git a/novaclient/v1_1/shell.py b/novaclient/v1_1/shell.py index c2cddad4e..632902b7e 100644 --- a/novaclient/v1_1/shell.py +++ b/novaclient/v1_1/shell.py @@ -2394,7 +2394,8 @@ def do_ssh(cs, args): _quota_resources = ['instances', 'cores', 'ram', 'volumes', 'gigabytes', 'floating_ips', 'metadata_items', 'injected_files', 'key_pairs', 'injected_file_content_bytes', - 'injected_file_path_bytes'] + 'injected_file_path_bytes', 'security_groups', + 'security_group_rules'] def _quota_show(quotas): @@ -2509,6 +2510,16 @@ def do_quota_defaults(cs, args): type=int, default=None, help='New value for the "key-pairs" quota.') +@utils.arg('--security-groups', + metavar='<security-groups>', + type=int, + default=None, + help='New value for the "security-groups" quota.') +@utils.arg('--security-group-rules', + metavar='<security-group-rules>', + type=int, + default=None, + help='New value for the "security-group-rules" quota.') def do_quota_update(cs, args): """Update the quotas for a tenant.""" @@ -2589,6 +2600,16 @@ def do_quota_class_show(cs, args): type=int, default=None, help='New value for the "key-pairs" quota.') +@utils.arg('--security-groups', + metavar='<security-groups>', + type=int, + default=None, + help='New value for the "security-groups" quota.') +@utils.arg('--security-group-rules', + metavar='<security-group-rules>', + type=int, + default=None, + help='New value for the "security-group-rules" quota.') def do_quota_class_update(cs, args): """Update the quotas for a quota class.""" diff --git a/tests/v1_1/fakes.py b/tests/v1_1/fakes.py index cbe0894e3..1f97d3ea2 100644 --- a/tests/v1_1/fakes.py +++ b/tests/v1_1/fakes.py @@ -741,7 +741,9 @@ class FakeHTTPClient(base_client.HTTPClient): 'instances': 1, 'injected_files': 1, 'cores': 1, - 'keypairs': 1}}) + 'keypairs': 1, + 'security_groups': 1, + 'security_group_rules': 1}}) def get_os_quota_sets_test_defaults(self): return (200, {'quota_set': { @@ -756,7 +758,9 @@ class FakeHTTPClient(base_client.HTTPClient): 'instances': 1, 'injected_files': 1, 'cores': 1, - 'keypairs': 1}}) + 'keypairs': 1, + 'security_groups': 1, + 'security_group_rules': 1}}) def put_os_quota_sets_test(self, body, **kw): assert body.keys() == ['quota_set'] @@ -774,7 +778,9 @@ class FakeHTTPClient(base_client.HTTPClient): 'instances': 1, 'injected_files': 1, 'cores': 1, - 'keypairs': 1}}) + 'keypairs': 1, + 'security_groups': 1, + 'security_group_rules': 1}}) # # Quota Classes @@ -793,7 +799,9 @@ class FakeHTTPClient(base_client.HTTPClient): 'instances': 1, 'injected_files': 1, 'cores': 1, - 'keypairs': 1}}) + 'keypairs': 1, + 'security_groups': 1, + 'security_group_rules': 1}}) def put_os_quota_class_sets_test(self, body, **kw): assert body.keys() == ['quota_class_set'] @@ -811,7 +819,9 @@ class FakeHTTPClient(base_client.HTTPClient): 'instances': 1, 'injected_files': 1, 'cores': 1, - 'keypairs': 1}}) + 'keypairs': 1, + 'security_groups': 1, + 'security_group_rules': 1}}) # # Security Groups