]> review.fuel-infra Code Review - openstack-build/neutron-build.git/log
openstack-build/neutron-build.git
9 years agoAdd abandon script from nova
Kyle Mestery [Mon, 26 Jan 2015 15:12:31 +0000 (15:12 +0000)]
Add abandon script from nova

This adds the abandon_old_reviews.sh from the nova repository into
Neutron. This is handy for cleaning up the neutron review queues
by abandoning stale reviews stuck in the queue with a helpful
message.

Change-Id: I8920123217cb134c792dee35a5b06abde31be1d4

9 years agoMerge "dhcp: move dnsmasq version check to sanity_check"
Jenkins [Tue, 27 Jan 2015 17:25:07 +0000 (17:25 +0000)]
Merge "dhcp: move dnsmasq version check to sanity_check"

9 years agoMerge "Move shared metadata driver related config options"
Jenkins [Tue, 27 Jan 2015 06:35:11 +0000 (06:35 +0000)]
Merge "Move shared metadata driver related config options"

9 years agoMerge "drop unused test rootwrap filter file"
Jenkins [Tue, 27 Jan 2015 02:47:30 +0000 (02:47 +0000)]
Merge "drop unused test rootwrap filter file"

9 years agoMerge "Update comment about metadata_proxy_shared_secret config"
Jenkins [Tue, 27 Jan 2015 02:41:09 +0000 (02:41 +0000)]
Merge "Update comment about metadata_proxy_shared_secret config"

9 years agoMerge "Add index on db "allocated" columns"
Jenkins [Tue, 27 Jan 2015 02:40:44 +0000 (02:40 +0000)]
Merge "Add index on db "allocated" columns"

9 years agoMerge "Update _cur names to _current in iptables_firewall.py"
Jenkins [Tue, 27 Jan 2015 00:14:21 +0000 (00:14 +0000)]
Merge "Update _cur names to _current in iptables_firewall.py"

9 years agoMerge "Add coverage for extra routes extension"
Jenkins [Mon, 26 Jan 2015 23:58:05 +0000 (23:58 +0000)]
Merge "Add coverage for extra routes extension"

9 years agoMerge "Extract l2pop/DVR controller logic to common method"
Jenkins [Mon, 26 Jan 2015 23:26:52 +0000 (23:26 +0000)]
Merge "Extract l2pop/DVR controller logic to common method"

9 years agoMerge "ML2: Driver API changes for hierarchical port binding"
Jenkins [Mon, 26 Jan 2015 23:19:55 +0000 (23:19 +0000)]
Merge "ML2: Driver API changes for hierarchical port binding"

9 years agoMerge "Add functional tests for IptablesManager using tcp/udp"
Jenkins [Mon, 26 Jan 2015 22:38:58 +0000 (22:38 +0000)]
Merge "Add functional tests for IptablesManager using tcp/udp"

9 years agoMerge "Add OVSDB abstract API"
Jenkins [Mon, 26 Jan 2015 22:36:33 +0000 (22:36 +0000)]
Merge "Add OVSDB abstract API"

9 years agoAdd coverage for extra routes extension
Assaf Muller [Mon, 26 Jan 2015 15:37:43 +0000 (10:37 -0500)]
Add coverage for extra routes extension

Test the extra routes extension for legacy and HA routers
in the L3 agent functional tests.

Partially-Implements: bp/restructure-l3-agent
Change-Id: I26444acf32652d1845ad0325a3a10b8a17c510c9

9 years agoMerge "Imported Translations from Transifex"
Jenkins [Mon, 26 Jan 2015 20:33:07 +0000 (20:33 +0000)]
Merge "Imported Translations from Transifex"

9 years agoMerge "Use DVRServerRpcApi instead of a mixin"
Jenkins [Mon, 26 Jan 2015 19:45:43 +0000 (19:45 +0000)]
Merge "Use DVRServerRpcApi instead of a mixin"

9 years agoMerge "Scope secgroup rpc api using a messaging namespace"
Jenkins [Mon, 26 Jan 2015 19:45:28 +0000 (19:45 +0000)]
Merge "Scope secgroup rpc api using a messaging namespace"

9 years agoMerge "Add and use SecurityGroupAgentRpc"
Jenkins [Mon, 26 Jan 2015 19:44:51 +0000 (19:44 +0000)]
Merge "Add and use SecurityGroupAgentRpc"

9 years agoMerge "pep8: cleaned up excludes"
Jenkins [Mon, 26 Jan 2015 19:19:03 +0000 (19:19 +0000)]
Merge "pep8: cleaned up excludes"

9 years agoMerge "Remove check_i18n tox target"
Jenkins [Mon, 26 Jan 2015 19:18:48 +0000 (19:18 +0000)]
Merge "Remove check_i18n tox target"

9 years agoAdd OVSDB abstract API
Terry Wilson [Tue, 23 Dec 2014 20:49:15 +0000 (13:49 -0700)]
Add OVSDB abstract API

Abstract all existing run_vsctl calls to an abstract OVSDB API.
This will allow the future addition of a native OVSDB protocol
implementation of the API without breaking backward compatibility.

Partially-Implements: blueprint vsctl-to-ovsdb

Change-Id: I2c1b5bc9cb6b9860676bb5e3eaca0402d7e99b01

9 years agoAdd functional tests for IptablesManager using tcp/udp
Jakub Libosvar [Fri, 3 Oct 2014 16:31:10 +0000 (18:31 +0200)]
Add functional tests for IptablesManager using tcp/udp

This commit adds tests for filter table using tcp and udp protocols.
Part of it is a NetcatTester class providing ability to test connection
between two veth pairs in namespaces.

Change-Id: I6db1e7ffef5e1243478e15a994787396b0908656
Related-Bug: 1243216

9 years agodhcp: move dnsmasq version check to sanity_check
Ihar Hrachyshka [Tue, 20 Jan 2015 14:18:36 +0000 (15:18 +0100)]
dhcp: move dnsmasq version check to sanity_check

We should avoid checking version numbers in runtime. In that way, we may
break some existing setups by minimal version bumps that are often not
critical for operation. One example is a recent version bump to support
IPv6 DHCP stateful address assignment mode. Even though old dnsmasq
version made this particular mode to fail to assign addresses to
instances, other IPv6 modes, and, even more importantly, all IPv4
networks continued to operate with no issues.

So let's move the fatal check from DHCP agent into sanity_check tool to
avoid potential breakages on neutron update.

In ideal world, we would make the check smarter. Since current version
cap is due to missing hwaddr matching for IPv6 clients for old dnsmasq
versions, we could preconfigure and start up dnsmasq server in a
namespace, and request a IPv6 lease from it. That would require a DHCP
IPv6 client installed though, and I'm not sure we can always expect it
to be present, so leaving it as-is for now.

Since DHCP drivers are pluggable, we cannot drop check_version method
from DhcpBase to support other drivers that may live in the wild.

Note: we could mark the method as deprecated if we really want to get
rid of it.

Closes-Bug: #1412818
Change-Id: I7a75cccf3880d3b18005ae0def5a17dfd8a00182

9 years agoUse DVRServerRpcApi instead of a mixin
Russell Bryant [Fri, 23 Jan 2015 18:52:10 +0000 (13:52 -0500)]
Use DVRServerRpcApi instead of a mixin

Replace DVRServerRpcApiMixin with a standalone rpc client class,
DVRServerRpcApi.  Also convert the one user of this code (the ovs
agent) to use it.  This is a prerequisite to being able to put this
rpc interface into a messaging namespace.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I33b8bff78fd9ca0223c5e48713f7e8f2db026752

9 years agoScope secgroup rpc api using a messaging namespace
Russell Bryant [Thu, 22 Jan 2015 20:03:19 +0000 (15:03 -0500)]
Scope secgroup rpc api using a messaging namespace

This patch scopes the agent to plugin security group rpc interface
using a messaging namespace.  Right now some plugins expose several
interfaces via the default namespace.  This effectively means they are
a single API and should be managed with a single version stream.  It's
much more managable to just treat these as separate interfaces and
this change makes that explicit and functionally true.  Now when a
method is invoked, the only classes considered for handling that
request will be ones marked with the right namespace.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: Iaee934646c9da7d32968406a583a5718fffc893b

9 years agoAdd and use SecurityGroupAgentRpc
Russell Bryant [Thu, 22 Jan 2015 15:18:17 +0000 (10:18 -0500)]
Add and use SecurityGroupAgentRpc

Add a new class, SecurityGroupAgentRpc, which is based on
SecurityGroupAgentRpcMixin.  Most uses of SecurityGroupAgentRpcMixin
follow the same pattern, so this class makes it possible to cut
down on some duplicated code.

Make use of SecurityGroupAgentRpc in: linuxbridge, openvswitch, mlnx,
nec, ofagent, oneconvergence, sriovnicagent, bigswitch, and hyperv.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I2aaa55e8e539e47427e56b4da42321cfcfcde622

9 years agohyperv: drop useless messaging.Target on HyperVSecurityAgent
Russell Bryant [Thu, 22 Jan 2015 18:47:22 +0000 (13:47 -0500)]
hyperv: drop useless messaging.Target on HyperVSecurityAgent

HyperVSecurityAgent includes a messaging.Target() definition.
However, this is unnecessary as this class is not an rpc API endpoint.
Just remove it.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I8402079c1992453aaab1f989d70f2c5c37ebc2bd

9 years agoExtract l2pop/DVR controller logic to common method
Mike Kolesnik [Mon, 8 Dec 2014 08:03:05 +0000 (10:03 +0200)]
Extract l2pop/DVR controller logic to common method

Regular ports and DVR ports are treated almost the same, extract the
l2pop logic to treat them to a unified method that gets an argument if
the FDB entries are needed or not, in order to reduce code duplication.

Change-Id: I1f2a1de4cb7c29724e2354577f915a48173a1966

9 years agoMerge "Do not duplicate message consumers"
Jenkins [Mon, 26 Jan 2015 09:38:14 +0000 (09:38 +0000)]
Merge "Do not duplicate message consumers"

9 years agoMerge "Mention networking_odl in README.odl"
Jenkins [Mon, 26 Jan 2015 07:02:42 +0000 (07:02 +0000)]
Merge "Mention networking_odl in README.odl"

9 years agoImported Translations from Transifex
OpenStack Proposal Bot [Mon, 26 Jan 2015 06:14:40 +0000 (06:14 +0000)]
Imported Translations from Transifex

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I9483c5f2006aac17efb2a0d4446f0d0f4e42330c

9 years agoattributes: Additional IP address validation
YAMAMOTO Takashi [Fri, 21 Nov 2014 05:16:03 +0000 (14:16 +0900)]
attributes: Additional IP address validation

Introduce an additional IP address validation instead of assuming
that netaddr provides it.  Namely, it ensures that an address
either has ':' (IPv6) or 3 periods like 'xx.xx.xx.xx'. (IPv4)

The "'1' * 59" test case recently introduced by
commit 1681f62ec91b6c3705a14393815542dc1746de71 fails on
some platforms because it's considered a valid address by
their inet_aton.  Examples of such platforms: NetBSD, OS X

While one might argue it's a fault of the platforms, this is
a historical behavior which is probably too late to change there.

(The breakage has been hidden by later UT changes in
commit 35662d07628452d14306f5197871ad64f6396ff3 .
This commit includes a UT change to uncover the problem again.)

Closes-Bug: #1394867
Related-Bug: #1378450
Change-Id: Ibe02f8b7c4d437bf7abbe7304ca138bdcf4bfdb9

9 years agoMention networking_odl in README.odl
gong yong sheng [Thu, 22 Jan 2015 02:20:36 +0000 (10:20 +0800)]
Mention networking_odl in README.odl

Change-Id: If7f7cffd454864fb9b531dd3b56460517a35f3ad
Closes-Bug: #1413439

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Sat, 24 Jan 2015 20:17:48 +0000 (20:17 +0000)]
Updated from global requirements

Change-Id: Ic12622394dd31d9df60aad72c68473ecad7ac844

9 years agoMerge "Initialize dist_fip_count after agent restart"
Jenkins [Sat, 24 Jan 2015 00:54:44 +0000 (00:54 +0000)]
Merge "Initialize dist_fip_count after agent restart"

9 years agoMerge "Add notes on how to deal with stable branches"
Jenkins [Fri, 23 Jan 2015 23:32:22 +0000 (23:32 +0000)]
Merge "Add notes on how to deal with stable branches"

9 years agoMerge "Added comments, and refactored _add_rule_by_security_group"
Jenkins [Fri, 23 Jan 2015 23:02:06 +0000 (23:02 +0000)]
Merge "Added comments, and refactored _add_rule_by_security_group"

9 years agoMerge "If router is HA, get current_cidrs from keepalived object"
Jenkins [Fri, 23 Jan 2015 20:10:16 +0000 (20:10 +0000)]
Merge "If router is HA, get current_cidrs from keepalived object"

9 years agoMerge "Configure IPv6 LLADDR only on master L3 HA instance"
Jenkins [Fri, 23 Jan 2015 19:09:44 +0000 (19:09 +0000)]
Merge "Configure IPv6 LLADDR only on master L3 HA instance"

9 years agoMerge "Functional test IPAM DB operation"
Jenkins [Fri, 23 Jan 2015 18:45:50 +0000 (18:45 +0000)]
Merge "Functional test IPAM DB operation"

9 years agoMerge "Implements ProcessMonitor in the dhcp_agent"
Jenkins [Fri, 23 Jan 2015 17:48:25 +0000 (17:48 +0000)]
Merge "Implements ProcessMonitor in the dhcp_agent"

9 years agoAdd notes on how to deal with stable branches
armando-migliaccio [Tue, 20 Jan 2015 23:12:29 +0000 (15:12 -0800)]
Add notes on how to deal with stable branches

This patch provides further details related to importing stable branches,
as well as how to deal with backports.

Partially-implements: blueprint core-vendor-decomposition

Change-Id: I4ccde019ee9d86a93a956e42b866ff9b2dc5aedb

9 years agoConfigure IPv6 LLADDR only on master L3 HA instance
Assaf Muller [Thu, 18 Dec 2014 14:25:54 +0000 (16:25 +0200)]
Configure IPv6 LLADDR only on master L3 HA instance

HA standby routers must never transmit traffic from
any of their ports. This is because we allocate the same
port on all agents. For example, for a given external interface,
we place the same port with the same IP/MAC on every agent
the HA router is scheduled on. Thus, if a standby router
transmits data out of that interface, the physical switches
in the datacenter will re-learn the MAC address of the external
port, and place it on a port that's looking at a standby and
not at the master. This causes 100% packet loss for any incoming
traffic that should be going through the master instance of the
router.

Keepalived manages addresses on the router interfaces, and makes
sure that these addresses only live on the master. However, we
forgot about IPv6 link local addresses. They are generated
from the MAC address of the interface, and thus are identical on
all agents.

This patch tries to treat IPv6 link local addresses the same
as IPv4 addresses - define them as VIPs and let keepalived
move them around.

Closes-Bug: #1403860
Change-Id: Ia5071552239c9444c5105a150b268fb0437e4b85

9 years agoDo not duplicate message consumers
Ilya Shakhat [Wed, 21 Jan 2015 12:56:19 +0000 (15:56 +0300)]
Do not duplicate message consumers

Oslo.messaging creates node topic (with node name as suffix)
and fanout topic automatically. There's no need to do this
in Neutron code.

Closes bug 1413156

Change-Id: Ic790cab648b213b55679038967fef12eb5cec606

9 years agoMerge "Add index generation for IPv6 rules for DVR"
Jenkins [Fri, 23 Jan 2015 16:30:52 +0000 (16:30 +0000)]
Merge "Add index generation for IPv6 rules for DVR"

9 years agoAdd index on db "allocated" columns
Elena Ezhova [Tue, 20 Jan 2015 16:19:43 +0000 (19:19 +0300)]
Add index on db "allocated" columns

ml2_vxlan_allocations, ml2_gre_allocations, ml2_vlan_allocations tables
have the 'allocated' field.

There are a lot of similar queries to these tables which look
like the following:

SELECT ml2_vxlan_allocations.vxlan_vni
AS ml2_vxlan_allocations_vxlan_vni,
ml2_vxlan_allocations.allocated
AS ml2_vxlan_allocations_allocated
FROM ml2_vxlan_allocations
WHERE ml2_vxlan_allocations.allocated = 0 LIMIT 1;

Performing such selects can take quite a lot of time and if a transaction
which performs allocation is executed in parallel, it can lead to
allocation failure and retry.

Adding an index on "allocated" column significantly improves
the performance. For ml2_vlan_allocations table created
an index on (physical_network, allocation) together.

Example for MySQL for execution of query
select * from ml2_vxlan_allocations where allocated = 0;
when on the table with ~3 mln entries, ~500K of which
have allocated = 0:
+-----------------------+---------------------+
|No index on "allocated"| Index on "allocated"|
+---------------------------------------------+
|      2.02 sec         |       0.43 sec      |
+-----------------------+---------------------+

Closes-Bug: #1412348
Change-Id: Ie90ba611dcae6bd0cb7686a0c7b29b9484eae693

9 years agoMerge "Corrected singulars/plurals in iptables_firewall.py"
Jenkins [Fri, 23 Jan 2015 14:16:02 +0000 (14:16 +0000)]
Merge "Corrected singulars/plurals in iptables_firewall.py"

9 years agoMerge "Drop SecurityGroupServerRpcApiMixin"
Jenkins [Fri, 23 Jan 2015 14:09:45 +0000 (14:09 +0000)]
Merge "Drop SecurityGroupServerRpcApiMixin"

9 years agoMerge "sriovnicagent: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Fri, 23 Jan 2015 14:06:27 +0000 (14:06 +0000)]
Merge "sriovnicagent: drop usage of SecurityGroupServerRpcApiMixin"

9 years agopep8: cleaned up excludes
Ihar Hrachyshka [Wed, 21 Jan 2015 15:44:06 +0000 (16:44 +0100)]
pep8: cleaned up excludes

Don't over-exclude files from pep8 automation. Specifically, tools/*
should maintain common Python style as any other Neutron code.

Don't exclude every single dot-file/dot-dir separately but instead
apply .* wildcard.

Drop rally-scenarios exclusion. First, the directory is now rally-jobs,
so exclusion didn't work. Second, it's better to also apply pep8 checks
for those files (there are some Python files inside the directory).

Change-Id: Ife1d8a538c1bdddac30ca1c30c48a71564860624

9 years agoRemove check_i18n tox target
Ihar Hrachyshka [Fri, 23 Jan 2015 14:02:52 +0000 (15:02 +0100)]
Remove check_i18n tox target

Now that we have hacking rules to check proper localization, drop the
target.

Change-Id: Idf6e6c9e6096c4b7b2034be94c88460b744b7532

9 years agoMerge "sriovnicagent: untangle SecurityGroupAgentRpcMixin"
Jenkins [Fri, 23 Jan 2015 14:00:34 +0000 (14:00 +0000)]
Merge "sriovnicagent: untangle SecurityGroupAgentRpcMixin"

9 years agoMerge "mlnx: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Fri, 23 Jan 2015 14:00:19 +0000 (14:00 +0000)]
Merge "mlnx: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoMerge "mlnx: untangle SecurityGroupAgentRpcMixin"
Jenkins [Fri, 23 Jan 2015 14:00:05 +0000 (14:00 +0000)]
Merge "mlnx: untangle SecurityGroupAgentRpcMixin"

9 years agoMerge "linuxbridge: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Fri, 23 Jan 2015 13:57:47 +0000 (13:57 +0000)]
Merge "linuxbridge: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoImplements ProcessMonitor in the dhcp_agent
Miguel Angel Ajo [Thu, 21 Aug 2014 10:53:05 +0000 (12:53 +0200)]
Implements ProcessMonitor in the dhcp_agent

The ProcessMonitor class will watch over spawned external processes,
taking the administrator configured action in the case of any
of the external processes die unexpectedly.

It covers both the neutron-ns-metadata-proxy for isolated metadata
and dnsmasq in the dnsmasq driver.

ProcessMonitor has been extended to allow specific pid files
for backwards-compatible dnsmasq pid file location.

Implements: blueprint agent-child-processes-status
Change-Id: I0a4a509b65aadf825799c98dfa48a655b123b403

9 years agoFunctional test IPAM DB operation
rossella [Tue, 23 Sep 2014 09:02:20 +0000 (11:02 +0200)]
Functional test IPAM DB operation

Add a functional test to check that the IPAM logic is correct and
that the data stored in the DB are sane.

Partial-bug: #1331564
Change-Id: I7776a50824184663abd37e210d08a63eb5519cea

9 years agoMerge "Ignore 404 error and lower a warning log to info"
Jenkins [Fri, 23 Jan 2015 09:38:02 +0000 (09:38 +0000)]
Merge "Ignore 404 error and lower a warning log to info"

9 years agoMerge "linuxbridge: untangle SecurityGroupAgentRpcMixin"
Jenkins [Fri, 23 Jan 2015 08:53:10 +0000 (08:53 +0000)]
Merge "linuxbridge: untangle SecurityGroupAgentRpcMixin"

9 years agoMerge "Use db constraint to ensure mac address uniqueness"
Jenkins [Fri, 23 Jan 2015 08:41:38 +0000 (08:41 +0000)]
Merge "Use db constraint to ensure mac address uniqueness"

9 years agoMerge "Added test_dvr_router_lifecycle to cover dvr"
Jenkins [Fri, 23 Jan 2015 04:56:15 +0000 (04:56 +0000)]
Merge "Added test_dvr_router_lifecycle to cover dvr"

9 years agoIf router is HA, get current_cidrs from keepalived object
Sachi King [Mon, 8 Dec 2014 06:42:48 +0000 (17:42 +1100)]
If router is HA, get current_cidrs from keepalived object

When using L3 HA and keepalived neutron is no longer directly managing
the floating IP addresses itself. Neutron should not check against
which addresses are currently configured on the system, but the
addresses the keepalived object has configured.

Co-Authored-By: Benoit Page-Guitard <benoit.page@gmail.com>
Change-Id: I56045ede3a3dc1a7044a22913ee38ed382a81052
Closes-Bug: #1400217

9 years agoMerge "Move process monitor settings to neutron.conf AGENT section"
Jenkins [Fri, 23 Jan 2015 03:02:53 +0000 (03:02 +0000)]
Merge "Move process monitor settings to neutron.conf AGENT section"

9 years agoMerge "SIGHUP keepalived if L3 agent restarts"
Jenkins [Thu, 22 Jan 2015 23:30:18 +0000 (23:30 +0000)]
Merge "SIGHUP keepalived if L3 agent restarts"

9 years agoMove process monitor settings to neutron.conf AGENT section
Miguel Angel Ajo [Thu, 22 Jan 2015 14:17:30 +0000 (14:17 +0000)]
Move process monitor settings to neutron.conf AGENT section

Instead of defining specific settings on each agent configuration
file for later patches in the series, we provide a single
point of configuration in the AGENT section of the neutron.conf
file, which could yet be overriden per agent config file if needed.

Partially Implements: blueprint agent-child-processes-status

Change-Id: I8a6351c96b8699fdba50009fa9eace337b937a34

9 years agoMerge "Remove DBDuplicateEntry columns check"
Jenkins [Thu, 22 Jan 2015 21:33:33 +0000 (21:33 +0000)]
Merge "Remove DBDuplicateEntry columns check"

9 years agoDrop SecurityGroupServerRpcApiMixin
Russell Bryant [Wed, 21 Jan 2015 21:39:37 +0000 (16:39 -0500)]
Drop SecurityGroupServerRpcApiMixin

The code base has now been migrated away from using this class, so it
can be removed.  This was a prerequisite to being able to put this rpc
api into a messaging namespace.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I967339c4579d42c5ca9cea7f1ef3ba2233a6ff9d

9 years agosriovnicagent: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Wed, 21 Jan 2015 20:57:31 +0000 (15:57 -0500)]
sriovnicagent: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in sriovnicagent.
This is required to be able to eventually move this API into
a messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as
a mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I157866bb65f884f80a9c3d70ffdcd487644caaef

9 years agosriovnicagent: untangle SecurityGroupAgentRpcMixin
Russell Bryant [Wed, 21 Jan 2015 20:50:21 +0000 (15:50 -0500)]
sriovnicagent: untangle SecurityGroupAgentRpcMixin

This patch separates the use of SecurityGroupAgentRpcMixin out to its
own class.  This matches most of the rest of the code base.  This
separation is needed to be able to eventually move this rpc API into
its own messaging namespace.  Now that it's separate, a future change
can pass the new class an instance of SecurityGroupServerRpcApi
instead of assuming that the PluginApi instance includes
SecurityGroupServerRpcApiMixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I46bdf2132bfed582df85bb302f55b1840e7a7a18

9 years agomlnx: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Wed, 21 Jan 2015 19:52:53 +0000 (14:52 -0500)]
mlnx: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the mlnx agent.
This is required to be able to eventually move this API into
a messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as
a mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: Iba96bddf30f33569a96548a5f116d66a4db6fc8f

9 years agomlnx: untangle SecurityGroupAgentRpcMixin
Russell Bryant [Wed, 21 Jan 2015 19:44:23 +0000 (14:44 -0500)]
mlnx: untangle SecurityGroupAgentRpcMixin

This patch separates the use of SecurityGroupAgentRpcMixin out to its
own class.  This matches most of the rest of the code base.  This
separation is needed to be able to eventually move this rpc API into
its own messaging namespace.  Now that it's separate, a future change
can pass the new class an instance of SecurityGroupServerRpcApi
instead of assuming that the PluginApi instance includes
SecurityGroupServerRpcApiMixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: Ie850a262bc7e4b697003cf6d91780dc819c688e0

9 years agolinuxbridge: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Wed, 21 Jan 2015 18:40:18 +0000 (13:40 -0500)]
linuxbridge: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the linuxbridge agent.
This is required to be able to eventually move this API into
a messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as
a mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I736468ebd32822352e44eda8c5f1a25972a70fda

9 years agolinuxbridge: untangle SecurityGroupAgentRpcMixin
Russell Bryant [Wed, 21 Jan 2015 19:34:12 +0000 (14:34 -0500)]
linuxbridge: untangle SecurityGroupAgentRpcMixin

This patch separates the use of SecurityGroupAgentRpcMixin out to its
own class.  This matches most of the rest of the code base.  This
separation is needed to be able to eventually move this rpc API into
its own messaging namespace.  Now that it's separate, a future change
can pass the new class an instance of SecurityGroupServerRpcApi
instead of assuming that the LinuxBridgePluginApi includes
SecurityGroupServerRpcApiMixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I913ef0e2f981b258ea03a519f53a55b4afe80daa

9 years agoUse db constraint to ensure mac address uniqueness
Cedric Brandily [Sat, 10 Jan 2015 14:25:04 +0000 (14:25 +0000)]
Use db constraint to ensure mac address uniqueness

Currently port mac address uniqueness per network is checked before Port
db object create but without locking. It implies 2 port create requests
can allocate the same mac address on a network if each request performs
mac address uniqueness check before the other creates the Port db object.

This change replaces the check by a db unique constraint on Port
(network_id, mac_address).

Change-Id: Iad7460356ceb74d963cddf5ec33268d77792f1fe
Closes-Bug: #1194565

9 years agoMerge "tests: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Thu, 22 Jan 2015 18:30:48 +0000 (18:30 +0000)]
Merge "tests: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoMerge "ovs: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Thu, 22 Jan 2015 18:30:33 +0000 (18:30 +0000)]
Merge "ovs: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoMerge "oneconvergence: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Thu, 22 Jan 2015 18:30:15 +0000 (18:30 +0000)]
Merge "oneconvergence: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoMerge "ofagent: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Thu, 22 Jan 2015 18:28:03 +0000 (18:28 +0000)]
Merge "ofagent: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoMerge "nec: drop usage of SecurityGroupServerRpcApiMixin"
Jenkins [Thu, 22 Jan 2015 18:19:45 +0000 (18:19 +0000)]
Merge "nec: drop usage of SecurityGroupServerRpcApiMixin"

9 years agoIgnore 404 error and lower a warning log to info
Kanzhe Jiang [Thu, 22 Jan 2015 07:32:12 +0000 (23:32 -0800)]
Ignore 404 error and lower a warning log to info

Ignore an expected 404 error. Lower the severity of an informational log entry
from warning to info to avoid polluting the server.log

Closes-Bug: #1413457
Change-Id: Ib6316cdda0aed10d8f430790b0c4f909ad833eb0

9 years agoMerge "Don't log a warning if an iptables chain doesn't exist"
Jenkins [Thu, 22 Jan 2015 15:46:07 +0000 (15:46 +0000)]
Merge "Don't log a warning if an iptables chain doesn't exist"

9 years agoMerge "Remove useless constant from l3 agent module"
Jenkins [Thu, 22 Jan 2015 15:45:51 +0000 (15:45 +0000)]
Merge "Remove useless constant from l3 agent module"

9 years agoMerge "Use constants from networking_odl project"
Jenkins [Thu, 22 Jan 2015 13:19:26 +0000 (13:19 +0000)]
Merge "Use constants from networking_odl project"

9 years agoMove shared metadata driver related config options
Cedric Brandily [Wed, 7 Jan 2015 22:21:10 +0000 (22:21 +0000)]
Move shared metadata driver related config options

This change moves metadata driver related config options to metadata
driver module to prepare the use of metadata driver method in the dhcp
agent (daughter change). The metadata_port option is not moved as the
dhcp agent uses a non-configurable port (80).

Change-Id: Ie45fdad86f33d35fca3096c4c52fae941a279e76
Partial-Bug: #1187107

9 years agoRemove useless constant from l3 agent module
Cedric Brandily [Thu, 22 Jan 2015 09:41:40 +0000 (09:41 +0000)]
Remove useless constant from l3 agent module

This change removes the RPC_LOOP_INTERVAL which is never used.

Change-Id: I9bb380ad2ef0c1ab0f96904625e6d228f2e505da

9 years agoAdded test_dvr_router_lifecycle to cover dvr
adolfo duarte [Wed, 3 Dec 2014 05:48:50 +0000 (21:48 -0800)]
Added test_dvr_router_lifecycle to cover dvr

Several additions were necessary to support testing the lifecycle of a
dvr router. Added new function _dvr_router_lifecycle and necessary
supporting  functions to avoid impacting any other section of the code
or tests.
Tests Added:
test_dvr_router_lifecycle_without_ha_without_snat_with_fips
test_dvr_router_lifecycle_without_ha_with_snat_with_fips

Change-Id: I1bb4bf6969e18ed345f208ed099a692ada5aa4c0

9 years agoImported Translations from Transifex
OpenStack Proposal Bot [Thu, 22 Jan 2015 06:11:05 +0000 (06:11 +0000)]
Imported Translations from Transifex

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: I1919ac5e3285a422387bae282ac7d88bd2ee599c

9 years agoMerge "DHCP agent restructuring"
Jenkins [Thu, 22 Jan 2015 05:59:29 +0000 (05:59 +0000)]
Merge "DHCP agent restructuring"

9 years agoUse constants from networking_odl project
Kyle Mestery [Thu, 22 Jan 2015 00:36:17 +0000 (00:36 +0000)]
Use constants from networking_odl project

Instead of redefining ODL_NETWORKS, ODL_SUBNETS, and ODL_PORTS,
use these from the networking_odl project.

Change-Id: I39a20dbae85b2fb671682e0cf94d67f06b9b8535

9 years agoMerge "Improve agent-based flat/vlan ml2 port binding failure logging"
Jenkins [Thu, 22 Jan 2015 04:49:34 +0000 (04:49 +0000)]
Merge "Improve agent-based flat/vlan ml2 port binding failure logging"

9 years agoMerge "Add ovsdb-related functional tests"
Jenkins [Thu, 22 Jan 2015 00:05:55 +0000 (00:05 +0000)]
Merge "Add ovsdb-related functional tests"

9 years agoInitialize dist_fip_count after agent restart
Michael Smith [Wed, 10 Sep 2014 23:59:14 +0000 (16:59 -0700)]
Initialize dist_fip_count after agent restart

Runtime router variable dist_fip_count has been
used to keep track of FIPs for DVR routers.
This variable is not re-initialized correctly on
agent restart and can get stale from other errors
which cause problems with namespace and port cleanup.

This patch will initialize the ri.dist_fip_count
once in process_router for dvr routers only.  This
method was selected instead of the _router_added or
_router_removed path because it is the one central
entry point for rotuer add, delete, and update.

The object self.agent_gateway_port also needs to be
properly handled after an agent restart and this
patch will handle that as well.

When needed, the system will be read via system
calls to determine the state of namespaces and ports
since the variables cannot be relied on.
System calls will be kept to a minimum to reduce
and possible performance hits.

Change-Id: Iae5ebf5249f8e16ab57df78e042293ca2855ddf1
Closes-bug: #1367039

9 years agoMerge "Replace FLOATING_IP_CIDR_SUFFIX constant with utils"
Jenkins [Wed, 21 Jan 2015 22:52:56 +0000 (22:52 +0000)]
Merge "Replace FLOATING_IP_CIDR_SUFFIX constant with utils"

9 years agoMerge "Fix IP allocation for multiple slaac subnets"
Jenkins [Wed, 21 Jan 2015 22:18:31 +0000 (22:18 +0000)]
Merge "Fix IP allocation for multiple slaac subnets"

9 years agoMerge "Create DvrRouter and HaRouter as a sub-class of Router"
Jenkins [Wed, 21 Jan 2015 19:56:09 +0000 (19:56 +0000)]
Merge "Create DvrRouter and HaRouter as a sub-class of Router"

9 years agoReplace FLOATING_IP_CIDR_SUFFIX constant with utils
Carl Baldwin [Fri, 16 Jan 2015 19:39:46 +0000 (19:39 +0000)]
Replace FLOATING_IP_CIDR_SUFFIX constant with utils

FLOATING_IP_CIDR_SUFFIX is a global constant used in manipulating ip
addresses and cidrs as string.  This patch replaces that with
well-tested utilities for doing the conversions more safely and
readably.

Change-Id: I96c79b1ada549ed4bd09a853a8019ff54b2888e2
Partially-Implements: bp/restructure-l3-agent

9 years agotests: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Fri, 16 Jan 2015 15:29:04 +0000 (10:29 -0500)]
tests: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the unit tests.
This is required to be able to eventually move this API into a
messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as a
mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I2b66545ebfe5e7acf0a89fac58dc22e72d0df099

9 years agoovs: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Fri, 16 Jan 2015 15:15:17 +0000 (10:15 -0500)]
ovs: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the ovs plugin.
This is required to be able to eventually move this API into a
messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as a
mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I6c3f3325b4337e55aed2316dade8025425c4e919

9 years agooneconvergence: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Fri, 16 Jan 2015 15:06:00 +0000 (10:06 -0500)]
oneconvergence: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the oneconvergence
plugin.  This is required to be able to eventually move this API into
a messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as a
mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I635fbeb57f4d5ee8a7ce4ca353a32b543e7d2433

9 years agoofagent: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Fri, 16 Jan 2015 14:54:53 +0000 (09:54 -0500)]
ofagent: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the ofagent plugin.
This is required to be able to eventually move this API into a
messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as a
mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: I932072bd5ab40c58c0706264cf5087d4f5786fce

9 years agonec: drop usage of SecurityGroupServerRpcApiMixin
Russell Bryant [Fri, 16 Jan 2015 14:37:52 +0000 (09:37 -0500)]
nec: drop usage of SecurityGroupServerRpcApiMixin

Drop usage of SecurityGroupServerRpcApiMixin in the nec plugin.
This is required to be able to eventually move this API into a
messaging namespace.  It needs to use its own messaging client
instance, instead of a different one it gets after being used as a
mixin.

Part of blueprint rpc-docs-and-namespaces.

Change-Id: Id76c3fd22a0e847660f58e4d3c8a1001e3654918