Fix filters to get the right gateway port for a subnet.
Wrong filters led to random port's mac being returned which may cause
side effects. See bug for details.
Closes-Bug: #1530179
Change-Id: I8368255f00ab3e9586c8ff28dfe6739541000810
VPNaaS functional tests now use dsvm-functional instead of
*-constraints. Always assuming *-constraints breaks the functional
jobs which is not run in a constrainted environment yet.
Paritial-Bug: #1529027
Change-Id: I3a4f1d61d13f1e444f7624d68d121d04d81eb724
The service respawning action of ProcessMonitor is normal handling. So
the log level in external_process.py should not be error.
Closes-Bug: #1528850
Change-Id: Ie335f521b09310a577eb4fb03946dfba484eef61
Add a constant string to the L3 extension to access floating ips in request and
response dictionaries
Change-Id: I161ab583f4eca3a8f0ddda1dd533780591e3423d
The commit 4b329c345c7820ff12bf25a91228cdfbf99500df added the file
and the imports did not adhere to the existing conventions.
Third party imports should be grouped together.
In addition to this it removes an unncesary new line.
TrivialFix
Change-Id: Ieeb4d20887ba8e90ea4f7850101b97ccd6e86658
The L3 agent needs to know the address scope of the fixed ip of each
floating ip because floating ips are a way to cross scope boundaries.
Without the scope information, there could be ambiguity and no way to
know which scope to send it to.
[1] https://review.openstack.org/#/c/189741/
Change-Id: Id9f8c12954a6efbf4d9b99c011652eefbe5f5145
Partially-Implements: blueprint address-scopes
QoSAgentExtension should invoke QoSAgentDriver
to reflush qos policy rules only if there is any rules related change.
QoS policy changes, such as description change, should not cause
reconfiguration of the qos policy rules.
Closes-Bug: #1509232
Change-Id: I036b0449c7b5521adeb32602a0c0e6cf2d27510a
This patch updates docstring for get_ports_on_host_by_subnet, to
tell that the method will only get dvr serviced ports, not all ports
for given subnet and host.
Change-Id: I85ea5a9e37b6c894f7d51e73c10143b208a29f0e
https://review.openstack.org/#/c/258867/ removed
_validate_subnet_list and _validate_uuid_list.
_validate_subnet_list is being used in VPNaaS and VPNaaS gate
is now broken. We need to remove validators more carefully
because subprojects may use them.
This commit restores them once.
Change-Id: I9c40b9d67a8364f698cc9bf604e4e1f4caea413e
Closes-Bug: #1528435
The dvr_update_router_addvm un-necessarily calls the
get_port to retreive the port dict, even though the port
dict is already passed in.
So this patch will remove the get_port call.
Change-Id: Ib893024ef0cf811497f077f5ae9d3965ea19f288
Now with notifications coming from ml2 plugin on port create
and port update, it is worth fixing the existing _notify_
l3_agent_new_port for proper arp update and router scheduling.
Previously we have been sending arp update and calling router
scheduling for every update notification for service ports,
but now we can take necessary action only when required, since
the fix to update the arp and router scheduling was recently
done by sending the port info for every new port created.
When _notify_l3_agent_port_update is triggered, we check if the
original port host binding exists and if there is a change in
host binding with respect to the new port, then we go ahead and
reschedule the router on the new host and flush the arp entry.
Related-Bug: #1524020
Change-Id: Ifda623d5413b72bf80f38fba5c12a05a88bb7de5
This patch adds unit tests to ML2 and L3 that ensure that the
number of DB calls during list operations for ports, networks,
subnets, routers, and floating IPs remains constant regardless
of the number of ports.
These will prevent changes from slipping in that result in
a separate DB query for each object in a list operation
(for changes to the extensions used by ML2 and the DVR plugin).
Related-Bug: #1525295
Related-Bug: #1513782
Related-Bug: #1525423
Related-Bug: #1525740
Related-Bug: #1526644
Change-Id: I1958fc7c318bbf73238a3ad5be133fa7800c8290
AsyncProcess.stop() will raise if the process we are trying
to stop is not running. Some functional tests sporadically
fail because in the clean up the polling manager is stopped
without checking if it's still running. Add an except
in InterfacePollingMinimizer.stop() to avoid raising an
exception when the monitor is not running.
Change-Id: Iec8f5039ae5b830836564a1a402ad3e4ba38935d
Closes-bug: #1525856
FirewallDriver is abstract base class but do not have abstractmethods.
Updated methods to correspond with use-case of class.
Closes-bug: #1119119
Change-Id: I4b27b27d66c0b89cd9b65541cc1703103a2b00d2
This patch resolves the issue where wrong message was being
shown when ethertype input parameter was not amongst one of
the types supported. New message made akin to other input
parameters like 'protocol'.
Change-Id: I5636f3582c9d9877dad4d091a374284b656923f4
Closes-Bug: #1508106
Misspelling in the message: "Duplicate adddress detected"
Should be "Duplicate address detected"
Totally 1 occasion in Neutron base code.
Change-Id: I95adccffd80763cf9ab171b29e6812b821373b6e
This patch makes use of the constant defined in the extension.
In addition to this having value of debing defined in one place it
also enables the caller to understand that the portbindings
extension is required.
Note: the constant is not used in the API tests. This has import
issues so it is not relevant.
TrivialFix
Change-Id: I7bfe2528dbbd8017ddbdcf949dbb6264ce1eb5d8