Change V3 access_ips extension into v2.1
This patch changes v3 access_ips API to v2.1 and makes v2 unit tests share between v2 and v2.1. The differences between v2 and v3 are described on the wiki page https://wiki.openstack.org/wiki/NovaAPIv2tov3 . Partially implements blueprint v2-on-v3-api Change-Id: Id464cbe4a8b7a7749c4f14e4531e4494dd315857
This commit is contained in:
parent
7d4dcfb2a9
commit
0063d17d74
@ -46,8 +46,8 @@
|
||||
"My Server Name": "Apache1"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": "",
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"config_drive": "",
|
||||
"os-extended-availability-zone:availability_zone": "nova",
|
||||
"os-extended-server-attributes:host": "b8b357f7100d4391828f2177c922ef93",
|
||||
|
@ -12,8 +12,8 @@
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": "",
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"os-security-groups:security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
|
@ -47,8 +47,8 @@
|
||||
"My Server Name": "Apache1"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": "",
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"config_drive": "",
|
||||
"os-extended-availability-zone:availability_zone": "nova",
|
||||
"os-extended-server-attributes:host": "c3f14e9812ad496baf92ccfb3c61e15f",
|
||||
|
@ -46,8 +46,8 @@
|
||||
"meta_var": "meta_val"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "4.3.2.1",
|
||||
"os-access-ips:access_ip_v6": "80fe::",
|
||||
"accessIPv4": "4.3.2.1",
|
||||
"accessIPv6": "80fe::",
|
||||
"progress": 0,
|
||||
"status": "ACTIVE",
|
||||
"tenant_id": "openstack",
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"rebuild" : {
|
||||
"os-access-ips:access_ip_v4": "4.3.2.1",
|
||||
"os-access-ips:access_ip_v6": "80fe::",
|
||||
"accessIPv4": "4.3.2.1",
|
||||
"accessIPv6": "80fe::",
|
||||
"imageRef" : "http://glance.openstack.example.com/images/70a599e0-31e7-49b7-b260-868f441e862b",
|
||||
"name" : "new-server-test",
|
||||
"metadata" : {
|
||||
@ -14,4 +14,4 @@
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -45,8 +45,8 @@
|
||||
"My Server Name": "Apache1"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "1.2.3.4",
|
||||
"os-access-ips:access_ip_v6": "fe80::",
|
||||
"accessIPv4": "1.2.3.4",
|
||||
"accessIPv6": "fe80::",
|
||||
"progress": 0,
|
||||
"status": "ACTIVE",
|
||||
"tenant_id": "openstack",
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server" : {
|
||||
"os-access-ips:access_ip_v4": "1.2.3.4",
|
||||
"os-access-ips:access_ip_v6": "fe80::",
|
||||
"accessIPv4": "1.2.3.4",
|
||||
"accessIPv6": "fe80::",
|
||||
"name" : "new-server-test",
|
||||
"imageRef" : "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
|
||||
"flavorRef" : "http://openstack.example.com/openstack/flavors/1",
|
||||
|
@ -12,7 +12,7 @@
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"os-access-ips:access_ip_v4": "1.2.3.4",
|
||||
"os-access-ips:access_ip_v6": "fe80::"
|
||||
"accessIPv4": "1.2.3.4",
|
||||
"accessIPv6": "fe80::"
|
||||
}
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "4.3.2.1",
|
||||
"os-access-ips:access_ip_v6": "80fe::"
|
||||
"accessIPv4": "4.3.2.1",
|
||||
"accessIPv6": "80fe::"
|
||||
}
|
||||
}
|
@ -45,8 +45,8 @@
|
||||
"My Server Name": "Apache1"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "4.3.2.1",
|
||||
"os-access-ips:access_ip_v6": "80fe::",
|
||||
"accessIPv4": "4.3.2.1",
|
||||
"accessIPv6": "80fe::",
|
||||
"progress": 0,
|
||||
"status": "ACTIVE",
|
||||
"tenant_id": "openstack",
|
||||
|
@ -46,8 +46,8 @@
|
||||
"My Server Name": "Apache1"
|
||||
},
|
||||
"name": "new-server-test",
|
||||
"os-access-ips:access_ip_v4": "1.2.3.4",
|
||||
"os-access-ips:access_ip_v6": "fe80::",
|
||||
"accessIPv4": "1.2.3.4",
|
||||
"accessIPv6": "fe80::",
|
||||
"progress": 0,
|
||||
"status": "ACTIVE",
|
||||
"tenant_id": "openstack",
|
||||
|
@ -28,9 +28,9 @@ class AccessIPsController(wsgi.Controller):
|
||||
db_instance = req.get_db_instance(server['id'])
|
||||
ip_v4 = db_instance.get('access_ip_v4')
|
||||
ip_v6 = db_instance.get('access_ip_v6')
|
||||
server['%s:access_ip_v4' % ALIAS] = (
|
||||
server['accessIPv4'] = (
|
||||
str(ip_v4) if ip_v4 is not None else '')
|
||||
server['%s:access_ip_v6' % ALIAS] = (
|
||||
server['accessIPv6'] = (
|
||||
str(ip_v6) if ip_v6 is not None else '')
|
||||
|
||||
@wsgi.extends
|
||||
@ -76,8 +76,8 @@ class AccessIPs(extensions.V3APIExtensionBase):
|
||||
name = "AccessIPs"
|
||||
alias = ALIAS
|
||||
version = 1
|
||||
v4_key = '%s:access_ip_v4' % ALIAS
|
||||
v6_key = '%s:access_ip_v6' % ALIAS
|
||||
v4_key = 'accessIPv4'
|
||||
v6_key = 'accessIPv6'
|
||||
|
||||
def get_controller_extensions(self):
|
||||
controller = AccessIPsController()
|
||||
@ -115,10 +115,10 @@ class AccessIPs(extensions.V3APIExtensionBase):
|
||||
|
||||
def _validate_access_ipv4(self, address):
|
||||
if not utils.is_valid_ipv4(address):
|
||||
expl = _('access_ip_v4 is not proper IPv4 format')
|
||||
expl = _('%s is not proper IPv4 format') % AccessIPs.v4_key
|
||||
raise exc.HTTPBadRequest(explanation=expl)
|
||||
|
||||
def _validate_access_ipv6(self, address):
|
||||
if not utils.is_valid_ipv6(address):
|
||||
expl = _('access_ip_v6 is not proper IPv6 format')
|
||||
expl = _('%s is not proper IPv6 format') % AccessIPs.v6_key
|
||||
raise exc.HTTPBadRequest(explanation=expl)
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": "",
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"private": [
|
||||
{
|
||||
|
@ -17,7 +17,7 @@
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": ""
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": ""
|
||||
}
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
"servers": [
|
||||
{
|
||||
"os-access-ips:access_ip_v4": "",
|
||||
"os-access-ips:access_ip_v6": "",
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"private": [
|
||||
{
|
||||
|
@ -51,7 +51,7 @@
|
||||
"tenant_id": "openstack",
|
||||
"updated": "%(isotime)s",
|
||||
"user_id": "fake",
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s"
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s"
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"rebuild" : {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"imageRef" : "%(glance_host)s/images/%(image_id)s",
|
||||
"name" : "new-server-test",
|
||||
"metadata" : {
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"addresses": {
|
||||
"private": [
|
||||
{
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server" : {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"name" : "new-server-test",
|
||||
"imageRef" : "%(host)s/openstack/images/%(image_id)s",
|
||||
"flavorRef" : "%(host)s/openstack/flavors/1",
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"adminPass": "%(password)s",
|
||||
"id": "%(id)s",
|
||||
"links": [
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s"
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s"
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"server": {
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"addresses": {
|
||||
"private": [
|
||||
{
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
"servers": [
|
||||
{
|
||||
"os-access-ips:access_ip_v4": "%(access_ip_v4)s",
|
||||
"os-access-ips:access_ip_v6": "%(access_ip_v6)s",
|
||||
"accessIPv4": "%(access_ip_v4)s",
|
||||
"accessIPv6": "%(access_ip_v6)s",
|
||||
"addresses": {
|
||||
"private": [
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user