Add ALPN support to load balancer pools

This adds property 'alpn_protocols' to load balancer pools.

Change-Id: I89bb1227c7e3820bbe4885e997a8ba6277145f94
This commit is contained in:
Carlos Goncalves 2020-09-15 21:01:19 +02:00
parent 39d3529775
commit 4a469fa577
3 changed files with 10 additions and 1 deletions

View File

@ -29,12 +29,14 @@ class Pool(resource.Resource, resource.TagMixin):
'health_monitor_id', 'lb_algorithm', 'listener_id', 'loadbalancer_id', 'health_monitor_id', 'lb_algorithm', 'listener_id', 'loadbalancer_id',
'description', 'name', 'project_id', 'protocol', 'description', 'name', 'project_id', 'protocol',
'created_at', 'updated_at', 'provisioning_status', 'operating_status', 'created_at', 'updated_at', 'provisioning_status', 'operating_status',
'tls_enabled', 'tls_ciphers', 'tls_versions', 'tls_enabled', 'tls_ciphers', 'tls_versions', 'alpn_protocols',
is_admin_state_up='admin_state_up', is_admin_state_up='admin_state_up',
**resource.TagMixin._tag_query_parameters **resource.TagMixin._tag_query_parameters
) )
#: Properties #: Properties
#: List of ALPN protocols.
alpn_protocols = resource.Body('alpn_protocols', type=list)
#: Timestamp when the pool was created #: Timestamp when the pool was created
created_at = resource.Body('created_at') created_at = resource.Body('created_at')
#: Description for the pool. #: Description for the pool.

View File

@ -38,6 +38,7 @@ EXAMPLE = {
'tls_enabled': True, 'tls_enabled': True,
'tls_ciphers': 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256', 'tls_ciphers': 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256',
'tls_versions': ['TLSv1.1', 'TLSv1.2'], 'tls_versions': ['TLSv1.1', 'TLSv1.2'],
'alpn_protocols': ['h2', 'http/1.1', 'http/1.0'],
} }
@ -90,6 +91,8 @@ class TestPool(base.TestCase):
test_pool.tls_ciphers) test_pool.tls_ciphers)
self.assertEqual(EXAMPLE['tls_versions'], self.assertEqual(EXAMPLE['tls_versions'],
test_pool.tls_versions) test_pool.tls_versions)
self.assertEqual(EXAMPLE['alpn_protocols'],
test_pool.alpn_protocols)
self.assertDictEqual( self.assertDictEqual(
{'limit': 'limit', {'limit': 'limit',
@ -115,5 +118,6 @@ class TestPool(base.TestCase):
'tls_enabled': 'tls_enabled', 'tls_enabled': 'tls_enabled',
'tls_ciphers': 'tls_ciphers', 'tls_ciphers': 'tls_ciphers',
'tls_versions': 'tls_versions', 'tls_versions': 'tls_versions',
'alpn_protocols': 'alpn_protocols',
}, },
test_pool._query_mapping._mapping) test_pool._query_mapping._mapping)

View File

@ -0,0 +1,3 @@
---
features:
- Adds ALPN protocols support for the Octavia (load_balancer) pools.