Add project_id to all of the provider objects
This patch adds a project_id field to all of the provider driver data model objects. This is useful for drivers to track/associate objects on the backend. Change-Id: I8f509677da463bc5d0a7649f2f609045cf9b2dd7
This commit is contained in:
parent
2bb2f918ee
commit
45cf2f328f
|
@ -412,6 +412,9 @@ contain the following:
|
||||||
+------------------------------+--------+-------------------------------------+
|
+------------------------------+--------+-------------------------------------+
|
||||||
| name | string | Human-readable name of the listener.|
|
| name | string | Human-readable name of the listener.|
|
||||||
+------------------------------+--------+-------------------------------------+
|
+------------------------------+--------+-------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this |
|
||||||
|
| | | resource. |
|
||||||
|
+------------------------------+--------+-------------------------------------+
|
||||||
| protocol | string | Protocol type: One of HTTP, HTTPS, |
|
| protocol | string | Protocol type: One of HTTP, HTTPS, |
|
||||||
| | | TCP, or TERMINATED_HTTPS. |
|
| | | TCP, or TERMINATED_HTTPS. |
|
||||||
+------------------------------+--------+-------------------------------------+
|
+------------------------------+--------+-------------------------------------+
|
||||||
|
@ -745,6 +748,8 @@ contain the following:
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
| pool_id | string | ID of pool to create. |
|
| pool_id | string | ID of pool to create. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this resource. |
|
||||||
|
+-----------------------+--------+------------------------------------------+
|
||||||
| protocol | string | Protocol type: One of HTTP, HTTPS, |
|
| protocol | string | Protocol type: One of HTTP, HTTPS, |
|
||||||
| | | PROXY, or TCP. |
|
| | | PROXY, or TCP. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
@ -933,6 +938,8 @@ contain the following:
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
| pool_id | string | ID of pool. |
|
| pool_id | string | ID of pool. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this resource. |
|
||||||
|
+-----------------------+--------+------------------------------------------+
|
||||||
| protocol_port | int | The port on which the backend member |
|
| protocol_port | int | The port on which the backend member |
|
||||||
| | | listens for traffic. |
|
| | | listens for traffic. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
@ -1164,6 +1171,8 @@ and validated with the following exceptions:
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
| pool_id | string | The pool to monitor. |
|
| pool_id | string | The pool to monitor. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this resource. |
|
||||||
|
+-----------------------+--------+------------------------------------------+
|
||||||
| timeout | int | The time, in seconds, after which a |
|
| timeout | int | The time, in seconds, after which a |
|
||||||
| | | health check times out. This value must |
|
| | | health check times out. This value must |
|
||||||
| | | be less than the delay value. |
|
| | | be less than the delay value. |
|
||||||
|
@ -1354,6 +1363,8 @@ contain the following:
|
||||||
| position | int | The position of this policy on the |
|
| position | int | The position of this policy on the |
|
||||||
| | | listener. Positions start at 1. |
|
| | | listener. Positions start at 1. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this resource. |
|
||||||
|
+-----------------------+--------+------------------------------------------+
|
||||||
| redirect_http_code | int | The HTTP status code to be returned on |
|
| redirect_http_code | int | The HTTP status code to be returned on |
|
||||||
| | | a redirect policy. |
|
| | | a redirect policy. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
@ -1542,6 +1553,8 @@ contain the following:
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
| l7rule_id | string | The ID of the L7 rule. |
|
| l7rule_id | string | The ID of the L7 rule. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
| project_id | string | ID of the project owning this resource. |
|
||||||
|
+-----------------------+--------+------------------------------------------+
|
||||||
| type | string | The L7 rule type. One of COOKIE, |
|
| type | string | The L7 rule type. One of COOKIE, |
|
||||||
| | | FILE_TYPE, HEADER, HOST_NAME, or PATH. |
|
| | | FILE_TYPE, HEADER, HOST_NAME, or PATH. |
|
||||||
+-----------------------+--------+------------------------------------------+
|
+-----------------------+--------+------------------------------------------+
|
||||||
|
|
|
@ -72,7 +72,7 @@ munch==2.2.0
|
||||||
netaddr==0.7.19
|
netaddr==0.7.19
|
||||||
netifaces==0.10.4
|
netifaces==0.10.4
|
||||||
networkx==1.11
|
networkx==1.11
|
||||||
octavia-lib==1.1.1
|
octavia-lib==1.2.0
|
||||||
openstacksdk==0.12.0
|
openstacksdk==0.12.0
|
||||||
os-client-config==1.29.0
|
os-client-config==1.29.0
|
||||||
os-service-types==1.2.0
|
os-service-types==1.2.0
|
||||||
|
|
|
@ -177,7 +177,8 @@ def _get_secret_data(cert_manager, project_id, secret_ref):
|
||||||
|
|
||||||
|
|
||||||
def listener_dict_to_provider_dict(listener_dict):
|
def listener_dict_to_provider_dict(listener_dict):
|
||||||
new_listener_dict = _base_to_provider_dict(listener_dict)
|
new_listener_dict = _base_to_provider_dict(listener_dict,
|
||||||
|
include_project_id=True)
|
||||||
new_listener_dict['listener_id'] = new_listener_dict.pop('id')
|
new_listener_dict['listener_id'] = new_listener_dict.pop('id')
|
||||||
if 'load_balancer_id' in new_listener_dict:
|
if 'load_balancer_id' in new_listener_dict:
|
||||||
new_listener_dict['loadbalancer_id'] = new_listener_dict.pop(
|
new_listener_dict['loadbalancer_id'] = new_listener_dict.pop(
|
||||||
|
@ -291,7 +292,7 @@ def db_pool_to_provider_pool(db_pool):
|
||||||
|
|
||||||
|
|
||||||
def pool_dict_to_provider_dict(pool_dict):
|
def pool_dict_to_provider_dict(pool_dict):
|
||||||
new_pool_dict = _base_to_provider_dict(pool_dict)
|
new_pool_dict = _base_to_provider_dict(pool_dict, include_project_id=True)
|
||||||
new_pool_dict['pool_id'] = new_pool_dict.pop('id')
|
new_pool_dict['pool_id'] = new_pool_dict.pop('id')
|
||||||
|
|
||||||
# Pull the certs out of the certificate manager to pass to the provider
|
# Pull the certs out of the certificate manager to pass to the provider
|
||||||
|
@ -371,7 +372,8 @@ def db_member_to_provider_member(db_member):
|
||||||
|
|
||||||
|
|
||||||
def member_dict_to_provider_dict(member_dict):
|
def member_dict_to_provider_dict(member_dict):
|
||||||
new_member_dict = _base_to_provider_dict(member_dict)
|
new_member_dict = _base_to_provider_dict(member_dict,
|
||||||
|
include_project_id=True)
|
||||||
new_member_dict['member_id'] = new_member_dict.pop('id')
|
new_member_dict['member_id'] = new_member_dict.pop('id')
|
||||||
if 'ip_address' in new_member_dict:
|
if 'ip_address' in new_member_dict:
|
||||||
new_member_dict['address'] = new_member_dict.pop('ip_address')
|
new_member_dict['address'] = new_member_dict.pop('ip_address')
|
||||||
|
@ -387,7 +389,7 @@ def db_HM_to_provider_HM(db_hm):
|
||||||
|
|
||||||
|
|
||||||
def hm_dict_to_provider_dict(hm_dict):
|
def hm_dict_to_provider_dict(hm_dict):
|
||||||
new_hm_dict = _base_to_provider_dict(hm_dict)
|
new_hm_dict = _base_to_provider_dict(hm_dict, include_project_id=True)
|
||||||
new_hm_dict['healthmonitor_id'] = new_hm_dict.pop('id')
|
new_hm_dict['healthmonitor_id'] = new_hm_dict.pop('id')
|
||||||
if 'fall_threshold' in new_hm_dict:
|
if 'fall_threshold' in new_hm_dict:
|
||||||
new_hm_dict['max_retries_down'] = new_hm_dict.pop('fall_threshold')
|
new_hm_dict['max_retries_down'] = new_hm_dict.pop('fall_threshold')
|
||||||
|
@ -418,7 +420,8 @@ def db_l7policy_to_provider_l7policy(db_l7policy):
|
||||||
|
|
||||||
|
|
||||||
def l7policy_dict_to_provider_dict(l7policy_dict):
|
def l7policy_dict_to_provider_dict(l7policy_dict):
|
||||||
new_l7policy_dict = _base_to_provider_dict(l7policy_dict)
|
new_l7policy_dict = _base_to_provider_dict(l7policy_dict,
|
||||||
|
include_project_id=True)
|
||||||
new_l7policy_dict['l7policy_id'] = new_l7policy_dict.pop('id')
|
new_l7policy_dict['l7policy_id'] = new_l7policy_dict.pop('id')
|
||||||
# Remove the DB back references
|
# Remove the DB back references
|
||||||
if 'listener' in new_l7policy_dict:
|
if 'listener' in new_l7policy_dict:
|
||||||
|
@ -449,7 +452,8 @@ def db_l7rule_to_provider_l7rule(db_l7rule):
|
||||||
|
|
||||||
|
|
||||||
def l7rule_dict_to_provider_dict(l7rule_dict):
|
def l7rule_dict_to_provider_dict(l7rule_dict):
|
||||||
new_l7rule_dict = _base_to_provider_dict(l7rule_dict)
|
new_l7rule_dict = _base_to_provider_dict(l7rule_dict,
|
||||||
|
include_project_id=True)
|
||||||
new_l7rule_dict['l7rule_id'] = new_l7rule_dict.pop('id')
|
new_l7rule_dict['l7rule_id'] = new_l7rule_dict.pop('id')
|
||||||
# Remove the DB back references
|
# Remove the DB back references
|
||||||
if 'l7policy' in new_l7rule_dict:
|
if 'l7policy' in new_l7rule_dict:
|
||||||
|
|
|
@ -582,12 +582,18 @@ class TestMember(base.BaseAPITest):
|
||||||
mock_driver.name = 'noop_driver'
|
mock_driver.name = 'noop_driver'
|
||||||
mock_get_driver.return_value = mock_driver
|
mock_get_driver.return_value = mock_driver
|
||||||
|
|
||||||
member1 = {'address': '192.0.2.1', 'protocol_port': 80}
|
member1 = {'address': '192.0.2.1', 'protocol_port': 80,
|
||||||
member2 = {'address': '192.0.2.2', 'protocol_port': 80}
|
'project_id': self.project_id}
|
||||||
member3 = {'address': '192.0.2.3', 'protocol_port': 80}
|
member2 = {'address': '192.0.2.2', 'protocol_port': 80,
|
||||||
member4 = {'address': '192.0.2.4', 'protocol_port': 80}
|
'project_id': self.project_id}
|
||||||
member5 = {'address': '192.0.2.5', 'protocol_port': 80}
|
member3 = {'address': '192.0.2.3', 'protocol_port': 80,
|
||||||
member6 = {'address': '192.0.2.6', 'protocol_port': 80}
|
'project_id': self.project_id}
|
||||||
|
member4 = {'address': '192.0.2.4', 'protocol_port': 80,
|
||||||
|
'project_id': self.project_id}
|
||||||
|
member5 = {'address': '192.0.2.5', 'protocol_port': 80,
|
||||||
|
'project_id': self.project_id}
|
||||||
|
member6 = {'address': '192.0.2.6', 'protocol_port': 80,
|
||||||
|
'project_id': self.project_id}
|
||||||
members = [member1, member2, member3, member4]
|
members = [member1, member2, member3, member4]
|
||||||
for m in members:
|
for m in members:
|
||||||
self.create_member(pool_id=self.pool_id, **m)
|
self.create_member(pool_id=self.pool_id, **m)
|
||||||
|
@ -724,8 +730,10 @@ class TestMember(base.BaseAPITest):
|
||||||
mock_driver.name = 'noop_driver'
|
mock_driver.name = 'noop_driver'
|
||||||
mock_get_driver.return_value = mock_driver
|
mock_get_driver.return_value = mock_driver
|
||||||
|
|
||||||
member1 = {'address': '192.0.2.1', 'protocol_port': 80}
|
member1 = {'address': '192.0.2.1', 'protocol_port': 80,
|
||||||
member2 = {'address': '192.0.2.2', 'protocol_port': 80}
|
'project_id': self.project_id}
|
||||||
|
member2 = {'address': '192.0.2.2', 'protocol_port': 80,
|
||||||
|
'project_id': self.project_id}
|
||||||
members = [member1, member2]
|
members = [member1, member2]
|
||||||
for m in members:
|
for m in members:
|
||||||
self.create_member(pool_id=self.pool_id, **m)
|
self.create_member(pool_id=self.pool_id, **m)
|
||||||
|
|
|
@ -74,7 +74,8 @@ class SampleDriverDataModels(object):
|
||||||
'rise_threshold': 2, 'http_method': 'GET',
|
'rise_threshold': 2, 'http_method': 'GET',
|
||||||
'url_path': '/', 'expected_codes': '200',
|
'url_path': '/', 'expected_codes': '200',
|
||||||
'name': 'hm1', 'pool_id': self.pool1_id,
|
'name': 'hm1', 'pool_id': self.pool1_id,
|
||||||
'http_version': 1.0, 'domain_name': None}
|
'http_version': 1.0, 'domain_name': None,
|
||||||
|
'project_id': self.project_id}
|
||||||
|
|
||||||
self.test_hm1_dict.update(self._common_test_dict)
|
self.test_hm1_dict.update(self._common_test_dict)
|
||||||
|
|
||||||
|
@ -95,6 +96,7 @@ class SampleDriverDataModels(object):
|
||||||
'max_retries_down': 1,
|
'max_retries_down': 1,
|
||||||
'name': 'hm1',
|
'name': 'hm1',
|
||||||
'pool_id': self.pool1_id,
|
'pool_id': self.pool1_id,
|
||||||
|
'project_id': self.project_id,
|
||||||
'timeout': 3,
|
'timeout': 3,
|
||||||
'type': constants.HEALTH_MONITOR_PING,
|
'type': constants.HEALTH_MONITOR_PING,
|
||||||
'url_path': '/',
|
'url_path': '/',
|
||||||
|
@ -118,6 +120,7 @@ class SampleDriverDataModels(object):
|
||||||
'backup': False,
|
'backup': False,
|
||||||
'subnet_id': self.subnet_id,
|
'subnet_id': self.subnet_id,
|
||||||
'pool': None,
|
'pool': None,
|
||||||
|
'project_id': self.project_id,
|
||||||
'name': 'member1',
|
'name': 'member1',
|
||||||
'monitor_address': '192.0.2.26',
|
'monitor_address': '192.0.2.26',
|
||||||
'monitor_port': 81}
|
'monitor_port': 81}
|
||||||
|
@ -164,6 +167,7 @@ class SampleDriverDataModels(object):
|
||||||
'monitor_port': 81,
|
'monitor_port': 81,
|
||||||
'name': 'member1',
|
'name': 'member1',
|
||||||
'pool_id': self.pool1_id,
|
'pool_id': self.pool1_id,
|
||||||
|
'project_id': self.project_id,
|
||||||
'protocol_port': 80,
|
'protocol_port': 80,
|
||||||
'subnet_id': self.subnet_id,
|
'subnet_id': self.subnet_id,
|
||||||
'weight': 0,
|
'weight': 0,
|
||||||
|
@ -209,6 +213,7 @@ class SampleDriverDataModels(object):
|
||||||
self.test_pool1_dict = {'id': self.pool1_id,
|
self.test_pool1_dict = {'id': self.pool1_id,
|
||||||
'name': 'pool1', 'description': 'Pool 1',
|
'name': 'pool1', 'description': 'Pool 1',
|
||||||
'load_balancer_id': self.lb_id,
|
'load_balancer_id': self.lb_id,
|
||||||
|
'project_id': self.project_id,
|
||||||
'protocol': 'avian',
|
'protocol': 'avian',
|
||||||
'lb_algorithm': 'round_robin',
|
'lb_algorithm': 'round_robin',
|
||||||
'members': self.test_pool1_members_dict,
|
'members': self.test_pool1_members_dict,
|
||||||
|
@ -258,6 +263,7 @@ class SampleDriverDataModels(object):
|
||||||
'members': self.provider_pool1_members_dict,
|
'members': self.provider_pool1_members_dict,
|
||||||
'name': 'pool1',
|
'name': 'pool1',
|
||||||
'pool_id': self.pool1_id,
|
'pool_id': self.pool1_id,
|
||||||
|
'project_id': self.project_id,
|
||||||
'protocol': 'avian',
|
'protocol': 'avian',
|
||||||
'session_persistence': {'type': 'SOURCE'},
|
'session_persistence': {'type': 'SOURCE'},
|
||||||
'tls_container_ref': self.pool_sni_container_ref,
|
'tls_container_ref': self.pool_sni_container_ref,
|
||||||
|
@ -298,6 +304,7 @@ class SampleDriverDataModels(object):
|
||||||
'compare_type': 'fake_type',
|
'compare_type': 'fake_type',
|
||||||
'key': 'fake_key',
|
'key': 'fake_key',
|
||||||
'value': 'fake_value',
|
'value': 'fake_value',
|
||||||
|
'project_id': self.project_id,
|
||||||
'l7policy': None,
|
'l7policy': None,
|
||||||
'invert': False}
|
'invert': False}
|
||||||
|
|
||||||
|
@ -320,6 +327,7 @@ class SampleDriverDataModels(object):
|
||||||
'l7policy_id': self.l7policy1_id,
|
'l7policy_id': self.l7policy1_id,
|
||||||
'l7rule_id': self.l7rule1_id,
|
'l7rule_id': self.l7rule1_id,
|
||||||
'type': 'o',
|
'type': 'o',
|
||||||
|
'project_id': self.project_id,
|
||||||
'value': 'fake_value'}
|
'value': 'fake_value'}
|
||||||
|
|
||||||
self.provider_l7rule2_dict = copy.deepcopy(self.provider_l7rule1_dict)
|
self.provider_l7rule2_dict = copy.deepcopy(self.provider_l7rule1_dict)
|
||||||
|
@ -341,6 +349,7 @@ class SampleDriverDataModels(object):
|
||||||
'redirect_pool_id': self.pool1_id,
|
'redirect_pool_id': self.pool1_id,
|
||||||
'redirect_url': '/index.html',
|
'redirect_url': '/index.html',
|
||||||
'redirect_prefix': 'https://example.com/',
|
'redirect_prefix': 'https://example.com/',
|
||||||
|
'project_id': self.project_id,
|
||||||
'position': 1,
|
'position': 1,
|
||||||
'listener': None,
|
'listener': None,
|
||||||
'redirect_pool': None,
|
'redirect_pool': None,
|
||||||
|
@ -372,6 +381,7 @@ class SampleDriverDataModels(object):
|
||||||
'listener_id': self.listener1_id,
|
'listener_id': self.listener1_id,
|
||||||
'name': 'l7policy_1',
|
'name': 'l7policy_1',
|
||||||
'position': 1,
|
'position': 1,
|
||||||
|
'project_id': self.project_id,
|
||||||
'redirect_pool_id': self.pool1_id,
|
'redirect_pool_id': self.pool1_id,
|
||||||
'redirect_url': '/index.html',
|
'redirect_url': '/index.html',
|
||||||
'redirect_prefix': 'https://example.com/',
|
'redirect_prefix': 'https://example.com/',
|
||||||
|
@ -405,6 +415,7 @@ class SampleDriverDataModels(object):
|
||||||
'description': 'Listener 1',
|
'description': 'Listener 1',
|
||||||
'default_pool_id': self.pool1_id,
|
'default_pool_id': self.pool1_id,
|
||||||
'load_balancer_id': self.lb_id,
|
'load_balancer_id': self.lb_id,
|
||||||
|
'project_id': self.project_id,
|
||||||
'protocol': 'avian',
|
'protocol': 'avian',
|
||||||
'protocol_port': 90,
|
'protocol_port': 90,
|
||||||
'connection_limit': 10000,
|
'connection_limit': 10000,
|
||||||
|
@ -473,6 +484,7 @@ class SampleDriverDataModels(object):
|
||||||
'listener_id': self.listener1_id,
|
'listener_id': self.listener1_id,
|
||||||
'loadbalancer_id': self.lb_id,
|
'loadbalancer_id': self.lb_id,
|
||||||
'name': 'listener_1',
|
'name': 'listener_1',
|
||||||
|
'project_id': self.project_id,
|
||||||
'protocol': 'avian',
|
'protocol': 'avian',
|
||||||
'protocol_port': 90,
|
'protocol_port': 90,
|
||||||
'sni_container_data': [cert2.to_dict(), cert3.to_dict()],
|
'sni_container_data': [cert2.to_dict(), cert3.to_dict()],
|
||||||
|
|
|
@ -45,7 +45,7 @@ tenacity>=4.9.0 # Apache-2.0
|
||||||
distro>=1.2.0 # Apache-2.0
|
distro>=1.2.0 # Apache-2.0
|
||||||
jsonschema>=2.6.0 # MIT
|
jsonschema>=2.6.0 # MIT
|
||||||
debtcollector>=1.19.0 # Apache-2.0
|
debtcollector>=1.19.0 # Apache-2.0
|
||||||
octavia-lib>=1.1.1 # Apache-2.0
|
octavia-lib>=1.2.0 # Apache-2.0
|
||||||
|
|
||||||
#for the amphora api
|
#for the amphora api
|
||||||
Flask!=0.11,>=0.10 # BSD
|
Flask!=0.11,>=0.10 # BSD
|
||||||
|
|
Loading…
Reference in New Issue