We exuberantly announce the release of: tricircle 4.2.0: The Tricircle is to provide networking automation across Neutron in multi-region OpenStack deployments. This release is part of the queens release series. The source is available from: https://git.openstack.org/cgit/openstack/tricircle Download the package from: https://pypi.python.org/pypi/tricircle Please report issues through launchpad: https://bugs.launchpad.net/tricircle For more details, please see below. 4.2.0 ^^^^^ New Features * Support LBaaS in multi-region scenario. To enable adding instances as members with VIP, amphora routes the traffic sent from VIP to its gateway. However, in Tricircle, the gateway obtained from central neutron is not the real gateway in local neutron. As a result, only subnet without gateway is supported as member subnet. We will remove the limitation in the future, and LBaaS working together with Nova Cells V2 multi-cells will also be supported in the future. * Provide central Neutron QoS plugin and implement QoS driver. Support QoS policy creation, update and delete, QoS policy binding with network or port. * Support updating default security group using asynchronous methods. Changes in tricircle 4.1.0..4.2.0 --------------------------------- 141a89c Updated from global requirements db679ef QoS implementation(Part1: Qos Plugin) 2728624 Installation and configuration guide for lbaas b023d61 No need to use getattr func to get a value c919017 Remove unused variables ‘LOG' 2eb06e9 Enable some off-by-default checks f305b53 Remove duplicated code in helper.py e2854cb spec for lbaas 890d290 Remove outdated todo notes 24952b3 Updated from global requirements 91c29c5 Updated from global requirements 339095c Fix l3 unit test error 25ada06 Default security group update 8030a26 use l3 api def from neutron-lib 47dbfa1 Smoke test improvement for trunk 8a81ceb Updated from global requirements 06e990c [Urgent] fix sfc test 610883a Improve get_subent in local neutron f969f89 use ml2 driver api from neutron-lib ff97169 [Urgent] fix tap_enabled for sfc 98461eb use external net api def from lib 27a7fba [Urgent] Use runtime instead of neutorn_lib 824e22f use availability zone api def from lib Diffstat (except docs and test files) ------------------------------------- devstack/local.conf.node_1.sample | 6 + devstack/local.conf.node_2.sample | 6 + devstack/plugin.sh | 16 + devstack/settings | 1 + releasenotes/notes/add-lbaas-ebb1009abd3da0dd.yaml | 10 + .../add-qos-policy-rule-f8f1529d7ad5d888.yaml | 5 + ...ate-default-securitygroup-9bb426021926d3e8.yaml | 3 + requirements.txt | 12 +- setup.cfg | 2 + specs/queens/lbaas.rst | 183 ++++ test-requirements.txt | 4 +- tox.ini | 3 + tricircle/common/client.py | 10 +- tricircle/common/constants.py | 31 +- tricircle/common/resource_handle.py | 32 +- tricircle/common/xrpcapi.py | 23 + tricircle/db/core.py | 4 - .../004_fix_resource_routings_pod_id_length.py | 4 +- .../005_fix_cached_endpoints_pod_id_length.py | 4 +- .../008_fix_shadow_agents_pod_id_length.py | 4 +- tricircle/network/central_plugin.py | 317 ++++-- tricircle/network/central_qos_plugin.py | 83 ++ tricircle/network/drivers/type_flat.py | 6 +- tricircle/network/drivers/type_local.py | 6 +- tricircle/network/drivers/type_vlan.py | 6 +- tricircle/network/drivers/type_vxlan.py | 6 +- tricircle/network/exceptions.py | 8 + tricircle/network/helper.py | 5 - tricircle/network/local_l3_plugin.py | 4 +- tricircle/network/local_plugin.py | 67 +- tricircle/network/qos_driver.py | 144 +++ tricircle/network/security_groups.py | 66 +- tricircle/tempestplugin/gate_hook.sh | 3 + tricircle/tempestplugin/qos_policy_rule_test.yaml | 861 ++++++++++++++++ tricircle/tempestplugin/smoke_test.sh | 9 +- tricircle/tempestplugin/task_runner.py | 6 +- tricircle/tempestplugin/trunk_test.yaml | 67 ++ tricircle/xjob/xmanager.py | 299 +++++- 46 files changed, 3914 insertions(+), 310 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 26fef31..2f7408f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -15 +15 @@ Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause) -keystoneauth1>=3.2.0 # Apache-2.0 +keystoneauth1>=3.3.0 # Apache-2.0 @@ -19 +19 @@ netifaces>=0.10.4 # MIT -neutron-lib>=1.10.0 # Apache-2.0 +neutron-lib>=1.11.0 # Apache-2.0 @@ -29 +29 @@ alembic>=0.8.10 # MIT -six>=1.9.0 # MIT +six>=1.10.0 # MIT @@ -32,2 +32,2 @@ oslo.concurrency>=3.20.0 # Apache-2.0 -oslo.config>=4.6.0 # Apache-2.0 -oslo.context!=2.19.1,>=2.14.0 # Apache-2.0 +oslo.config>=5.1.0 # Apache-2.0 +oslo.context>=2.19.2 # Apache-2.0 @@ -43 +43 @@ oslo.service>=1.24.0 # Apache-2.0 -oslo.utils>=3.28.0 # Apache-2.0 +oslo.utils>=3.31.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index f471baa..f9969a6 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -9 +9 @@ mock>=2.0.0 # BSD -python-subunit>=0.0.18 # Apache-2.0/BSD +python-subunit>=1.0.0 # Apache-2.0/BSD @@ -15 +15 @@ testrepository>=0.0.18 # Apache-2.0/BSD -testtools>=1.4.0 # MIT +testtools>=2.2.0 # MIT