Add validity checks to Quantum v2 resources
Fixes bug
1015148
The code enable defining validity checks for input variables. This
is done via callback functions per type. The following types are supported:
- type:values - checks that data is valid according to a list of values
- type:mac_address - checks that data is a valid mac address
- type:ip_address - checks that data is a valid ip address
- type:subnet - checks that data is a valid cidr
- type:regex - checks that data matches a regular expression (for
example checking UUID validity)
Change-Id: Iaa694cbfe3c518a5cd3951271853fe986106e7f5