diff --git a/lower-constraints.txt b/lower-constraints.txt index b15e3d95..af11712d 100644 --- a/lower-constraints.txt +++ b/lower-constraints.txt @@ -6,24 +6,24 @@ astroid==2.1.0 bandit==1.1.0 beautifulsoup4==4.6.0 cachetools==2.0.0 -cffi==1.7.0 +cffi==1.14.0 chardet==3.0.4 cliff==2.8.0 cmd2==0.8.0 coverage==4.0 -cryptography==2.1 +cryptography==3.0 debtcollector==1.2.0 -decorator==3.4.0 +decorator==4.0.0 deprecation==1.0 docutils==0.11 -dogpile.cache==0.6.2 -eventlet==0.18.2 +dogpile.cache==0.8.0 +eventlet==0.21.0 extras==1.0.0 fasteners==0.7.0 fixtures==3.0.0 future==0.16.0 futurist==1.2.0 -greenlet==0.4.10 +greenlet==0.4.15 idna==2.6 iso8601==0.1.11 isort==4.3.21 @@ -34,11 +34,11 @@ jsonpointer==1.13 jsonschema==2.6.0 keystoneauth1==3.4.0 keystonemiddleware==4.17.0 -kombu==4.0.0 +kombu==4.6.1 linecache2==1.0.0 logutils==0.3.5 Mako==0.4.0 -MarkupSafe==1.0 +MarkupSafe==1.1.1 monotonic==0.6 msgpack-python==0.4.0 munch==2.1.0 @@ -58,7 +58,7 @@ oslo.config==5.2.0 oslo.context==2.19.2 oslo.i18n==3.15.3 oslo.log==3.36.0 -oslo.messaging==5.29.0 +oslo.messaging==12.4.0 oslo.middleware==3.31.0 oslo.policy==1.30.0 oslo.privsep==1.23.0 @@ -87,7 +87,7 @@ pyinotify==0.9.6 pylint==2.2.0 pyparsing==2.1.0 pyperclip==1.5.27 -pyroute2==0.4.21 +pyroute2==0.5.13 python-dateutil==2.5.3 python-designateclient==2.7.0 python-editor==1.0.3 @@ -97,7 +97,7 @@ python-neutronclient==6.7.0 python-novaclient==9.1.0 python-subunit==1.0.0 pytz==2015.7 -PyYAML==3.12 +PyYAML==3.13 reno==3.1.0 repoze.lru==0.7 requests==2.14.2 @@ -106,7 +106,7 @@ rfc3986==0.3.1 Routes==2.3.1 simplejson==3.5.1 snowballstemmer==1.2.1 -SQLAlchemy==1.2.0 +SQLAlchemy==1.2.19 sqlalchemy-migrate==0.11.0 sqlparse==0.2.2 statsd==3.2.1 diff --git a/ovn_octavia_provider/driver.py b/ovn_octavia_provider/driver.py index 5b3c0a28..f8c3fc74 100644 --- a/ovn_octavia_provider/driver.py +++ b/ovn_octavia_provider/driver.py @@ -138,6 +138,12 @@ class OvnProviderDriver(driver_base.ProviderDriver): def listener_create(self, listener): self._check_for_supported_protocols(listener.protocol) + # TODO(haleyb): add support for this + if not isinstance(listener.allowed_cidrs, o_datamodels.UnsetType): + msg = _('OVN provider does not support allowed_cidrs option') + raise driver_exceptions.UnsupportedOptionError( + user_fault_string=msg, + operator_fault_string=msg) admin_state_up = listener.admin_state_up if isinstance(admin_state_up, o_datamodels.UnsetType): admin_state_up = True @@ -161,6 +167,13 @@ class OvnProviderDriver(driver_base.ProviderDriver): self._ovn_helper.add_request(request) def listener_update(self, old_listener, new_listener): + # TODO(haleyb): add support for this + if not isinstance(new_listener.allowed_cidrs, o_datamodels.UnsetType): + msg = _('OVN provider does not support allowed_cidrs option') + raise driver_exceptions.UnsupportedOptionError( + user_fault_string=msg, + operator_fault_string=msg) + request_info = {'id': new_listener.listener_id, 'loadbalancer_id': old_listener.loadbalancer_id, 'protocol': old_listener.protocol, diff --git a/ovn_octavia_provider/helper.py b/ovn_octavia_provider/helper.py index 94013be3..82548739 100644 --- a/ovn_octavia_provider/helper.py +++ b/ovn_octavia_provider/helper.py @@ -90,6 +90,7 @@ class OvnProviderHelper(object): @staticmethod def _delete_disabled_from_status(status): + # pylint: disable=multiple-statements d_regex = ':%s$' % ovn_const.DISABLED_RESOURCE_SUFFIX return { k: [{c: re.sub(d_regex, '', d) for c, d in i.items()} @@ -747,6 +748,7 @@ class OvnProviderHelper(object): @staticmethod def _get_selection_keys(lb_algorithm): + # pylint: disable=multiple-statements return ovn_const.LB_SELECTION_FIELDS_MAP[lb_algorithm] def check_lb_protocol(self, lb_id, listener_protocol): diff --git a/requirements.txt b/requirements.txt index 5835904e..a3114574 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,11 +7,13 @@ netaddr>=0.7.18 # BSD neutron-lib>=2.1.0 # Apache-2.0 oslo.config>=5.2.0 # Apache-2.0 oslo.log>=3.36.0 # Apache-2.0 +oslo.messaging>=12.4.0 # Apache-2.0 oslo.serialization>=2.28.1 # Apache-2.0 oslo.utils>=3.33.0 # Apache-2.0 ovs>=2.8.0 # Apache-2.0 ovsdbapp>=0.17.0 # Apache-2.0 pbr!=2.1.0,>=2.0.0 # Apache-2.0 +SQLAlchemy>=1.2.19 # MIT tenacity>=5.0.2 # Apache-2.0 octavia-lib>=1.3.1 # Apache-2.0 python-neutronclient>=6.7.0 # Apache-2.0 diff --git a/roles/configure_functional_tests/tasks/main.yaml b/roles/configure_functional_tests/tasks/main.yaml index 66242845..8b19f9bf 100644 --- a/roles/configure_functional_tests/tasks/main.yaml +++ b/roles/configure_functional_tests/tasks/main.yaml @@ -18,7 +18,7 @@ source $DEVSTACK_PATH/functions source $NEUTRON_DIR/devstack/lib/ovs - source $NEUTRON_DIR/devstack/lib/ovn_agent + source $DEVSTACK_PATH/lib/neutron_plugins/ovn_agent source $NEUTRON_DIR/tools/configure_for_func_testing.sh configure_host_for_func_testing diff --git a/test-requirements.txt b/test-requirements.txt index 60cdb4a2..bbd2336d 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -10,7 +10,6 @@ flake8-import-order==0.12 # LGPLv3 python-subunit>=1.0.0 # Apache-2.0/BSD oslotest>=3.2.0 # Apache-2.0 stestr>=1.0.0 # Apache-2.0 -astroid==2.1.0 # LGPLv2.1 pylint==2.3.0 # GPLv2 isort==4.3.21 # MIT octavia-lib>=1.3.1 # Apache-2.0 diff --git a/tox.ini b/tox.ini index 4f593e2c..b6a3d611 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -minversion = 3.1.0 +minversion = 3.8.0 envlist = docs,py38,pep8 skipsdist = True ignore_basepython_conflict = True diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index cdff174c..ffa3f877 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -99,6 +99,7 @@ l7_protocol_enabled: False l4_protocol: "TCP" session_persistence_enabled: False + not_implemented_is_error: False devstack_services: c-bak: false ceilometer-acentral: false @@ -146,7 +147,8 @@ vars: tempest_test_regex: ^octavia_tempest_plugin.tests.scenario.v2 tempest_black_regex: "\ - (^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_traffic)|\ + (^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_http_traffic)|\ + (^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_tcp_traffic)|\ (^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_udp_traffic)" tempest_concurrency: 2 tox_envlist: all