Add subnetpool custom constraint

This patch adds 'neutron.subnetpool' custom constraint.

Change-Id: Ie2ef0388ec992fbf69db073dc9352ce6816e247e
Blueprint: subnet-pools
This commit is contained in:
Rabi Mishra 2015-11-16 11:55:05 +05:30
parent 3e48778360
commit 5d8a91fb46
3 changed files with 14 additions and 0 deletions

View File

@ -65,3 +65,13 @@ class SubnetConstraint(constraints.BaseCustomConstraint):
neutron_client = client.client('neutron')
neutronV20.find_resourceid_by_name_or_id(
neutron_client, 'subnet', value)
class SubnetPoolConstraint(constraints.BaseCustomConstraint):
expected_exceptions = (exceptions.NeutronClientException,)
def validate_with_client(self, client, value):
neutron_client = client.client('neutron')
neutronV20.find_resourceid_by_name_or_id(
neutron_client, 'subnetpool', value)

View File

@ -167,6 +167,9 @@ class NeutronConstraintsValidate(common.HeatTestCase):
('validate_subnet',
dict(constraint_class=nc.SubnetConstraint,
resource_type='subnet')),
('validate_subnetpool',
dict(constraint_class=nc.SubnetPoolConstraint,
resource_type='subnetpool')),
('validate_loadbalancer',
dict(constraint_class=lc.LoadbalancerConstraint,
resource_type='loadbalancer')),

View File

@ -74,6 +74,7 @@ heat.constraints =
neutron.port = heat.engine.clients.os.neutron.neutron_constraints:PortConstraint
neutron.router = heat.engine.clients.os.neutron.neutron_constraints:RouterConstraint
neutron.subnet = heat.engine.clients.os.neutron.neutron_constraints:SubnetConstraint
neutron.subnetpool = heat.engine.clients.os.neutron.neutron_constraints:SubnetPoolConstraint
neutron.lbaas.loadbalancer = heat.engine.clients.os.neutron.lbaas_constraints:LoadbalancerConstraint
neutron.lbaas.listener = heat.engine.clients.os.neutron.lbaas_constraints:ListenerConstraint
neutron.lbaas.pool = heat.engine.clients.os.neutron.lbaas_constraints:PoolConstraint