15937 Commits

Author SHA1 Message Date
Jenkins
750fdb7b22 Merge "l3 ha: don't send routers without '_ha_interface'" 2016-09-07 05:35:02 +00:00
Jenkins
70615717b1 Merge "Remove FWaaS policy.json entries" 2016-09-07 02:47:45 +00:00
Jenkins
ded0bfb125 Merge "Add timestamp fields for neutron ext resources" 2016-09-06 21:37:57 +00:00
Yushiro FURUKAWA
f72863a6b6 Remove FWaaS policy.json entries
The FWaaS policy.json entries are being relocated into the FWaaS
repository.

Co-Authored-By: Nate Johnston <Nate_Johnston@cable.comcast.com>
Depends-On: Idd8993da78dbd779e2b3d38a4039dabf60d416d5

Change-Id: Iec36638a7a57cc14753e93c5d207853d4a3e3b6e
2016-09-06 21:30:41 +00:00
Jenkins
90eddad4a2 Merge "Expose revision_number to trunk API" 2016-09-06 21:19:15 +00:00
John Schwarz
29cec03456 l3 ha: don't send routers without '_ha_interface'
Change I22ff5a5a74527366da8f82982232d4e70e455570 changed
get_ha_sync_data_for_host such that if an agent requests a router's
details, then it is always returned, even when it doesn't have the key
'_ha_interface'. Further changes to this change tried to put this check
back in (Ie38baf061d678fc5d768195b25241efbad74e42f), but this patch
failed to do so for the case where no bindings were returned (possible
when the router has been concurrently deleted). This patch puts this
check back in.

Closes-Bug: #1607381
Change-Id: I047e53ea9b3e20a21051f29d0a44624e2a31c83c
2016-09-06 09:52:52 +03:00
Jenkins
1cf8e5ab5a Merge "Check MTU sanity of trunk port subports" 2016-09-05 16:36:27 +00:00
Jenkins
33c09b18fb Merge "QOS-DB: remove deprecation warning" 2016-09-05 13:01:30 +00:00
Jenkins
252830bb6c Merge "Revisit support for trunk segmentation types" 2016-09-05 11:26:33 +00:00
Hynek Mlnarik
58abb3d9cc Check MTU sanity of trunk port subports
The MTU of VLAN subinterfaces must not be greater than
MTU of the trunk port. This commit adds a check that
verifies that this is indeed the case.

This limitation comes from the restriction that Linux kernel imposes on
MTUs of untagged interfaces and tagged subinterfaces of these
interfaces. For details of the current state, see
https://bugzilla.kernel.org/show_bug.cgi?id=13467, namely comments 7
and 8. Once this limitation is overcome, it would be possible to remove
this check.

Partially-Implements: blueprint vlan-aware-vms
Change-Id: Ic11e9a2cde4336e8e1533c56b63ff7aaf2b7a510
2016-09-05 12:20:28 +02:00
Gary Kotton
c68d4c45d6 QOS-DB: remove deprecation warning
Commit 60325f4ae9ec53734d792d111cbcf24270d57417 used the depracted
models_v2.HasId.

Change-Id: I69dcaf740a782a370923e0022607518358456503
Closes-bug: #1620220
2016-09-05 01:24:52 -07:00
Jenkins
86f7cfefb0 Merge "Set trunk status to DOWN when parent port is unbound" 2016-09-05 07:05:26 +00:00
Edan David
1a4cce9f34 Use bridge_lib's FdbInterface calls instead of execute util
When executing 'bridge fdb' linux command use FdbInterface methods
for code reuse.

Change-Id: Ic8266fcba999e0220cdfc06f6edc062ebef9ca15
2016-09-04 11:17:01 +00:00
Jenkins
717b57dc8d Merge "Change 'revision' to 'revision_number'" 2016-09-04 06:28:54 +00:00
Armando Migliaccio
41cce706e9 Expose revision_number to trunk API
This is the last of the standard attributes that needs
to be exposed.

Partially-implements: blueprint vlan-aware-vms

Change-Id: I15dcf7f4207fb22376967b57a4024a74b7ad0466
2016-09-03 01:45:39 +00:00
Kevin Benton
5c6b83675b Change 'revision' to 'revision_number'
The DB model uses 'revision_number' so we should keep the API
consistent with that to avoid the hassle of writing translation
logic as we transition to OVO.

This is an API change, but the revision plugin didn't exist
in the last cycle so we don't need to worry about backward
compatibility or an API impact.

Change-Id: I445974b0e0dabb762807c6f318b1b44f51b3fe15
2016-09-02 17:18:06 -07:00
Jenkins
3bf4ab7ffd Merge "Deal with unknown exceptions during auto allocation" 2016-09-03 00:04:31 +00:00
Jenkins
c0d73f894d Merge "db migration: Alter column before setting a FK on column" 2016-09-02 22:08:34 +00:00
Jenkins
22f3742fd6 Merge "Switch order for cleanup in NamespaceFixture" 2016-09-02 21:39:49 +00:00
Dariusz Smigiel
44de48a442 Remove workaround for bug/1543094
Bug which caused DB exceeded retry limit is solved.

Change-Id: Ie7b7d994d7443a9575fad0b322683c4f3009d139
Related-Bug: #1543094
2016-09-02 16:32:51 +00:00
Armando Migliaccio
e2fdeefd37 Deal with unknown exceptions during auto allocation
Uncaught exceptions in the core or L3 plugin layers can cause the
auto_allocate plugin to fail unexpectedly. This patch ensures that
any unexpected error is properly handled by cleaning up half
provisioned deployment.

Related-bug: #1612798
Closes-bug: #1619497

Change-Id: I3eb9efd33363045f7b2ccd97fe4a48891f48b161
2016-09-02 15:37:23 +00:00
Armando Migliaccio
fb5c043d0d Revisit support for trunk segmentation types
This patch improves how the trunk plugin supports future
segmentation types and how it can handle multi-driver
deployments where each driver may have its own set of
supported segmentation types. It does so by:

a) removing the existing segmentation type registration mechanism;
   this has become superseded by how drivers advertise their
   capabilities and register themselves with the plugin.
b) introducing a new compatibility check that makes the plugin
   fails to load in case of conflicts: for multi-drivers environments
   a common set of segmentation types must be found for the plugin
   to load successfully. In case of single driver deployments,
   a driver can bring its own segmentation type.

Partially-implement: blueprint vlan-aware-vms

Change-Id: I0bd8b479c07945c65e14d4b59dfbcc1bc9a85a88
2016-09-02 15:37:09 +00:00
Ryan Tidwell
dc4c8ab7c1 Set trunk status to DOWN when parent port is unbound
This patch ensures that trunk status is set to DOWN when its
parent port is unbound. This typically occurs when the instance
using the parent port is deleted in Nova.

Change-Id: I2673d2dd2d1dfd8eaabab66c009311cf4c143734
Partially-implements: blueprint vlan-aware-vms
2016-09-02 08:35:11 -07:00
Jenkins
ab324cf161 Merge "Make L3 agent use different request-id for each request" 2016-09-02 15:09:27 +00:00
Jakub Libosvar
9127f074f5 db migration: Alter column before setting a FK on column
MySQL doesn't like foreign key columns to be modified,
this adjusts the script to add all constraints and make
modifications before setting up the foreign key relationship.

Change-Id: I494758120c8a87fe584c781b928f8b9d3bac5291
Closes-bug: 1619696
2016-09-02 16:41:59 +02:00
Jenkins
f2a5dc29ba Merge "Add binding_index to RouterL3AgentBinding" 2016-09-02 14:10:00 +00:00
Jakub Libosvar
5683f22f3d Switch order for cleanup in NamespaceFixture
In case ensure_namespace fails for any reason, the ip_wrapper attribute
is not created but destroy(), that uses this attribute, is still called.

TrivialFix

Change-Id: I4135f6564a180b4bd275312866d3dc6e4b9b63ca
2016-09-02 12:07:42 +00:00
John Schwarz
b1ec8d523d Add binding_index to RouterL3AgentBinding
The patch proposes adding a new binding_index to the
RouterL3AgentBinding table, with an additional Unique Constraint that
enforces a single <router_id, binding_id> per router. This goes a long
way into fixing 2 issues:

1. When scheduling a non-HA router, we only use binding_index=1. This
   means that only a single row containing that router_id can be
   committed into the database. This in fact prevents over-scheduling of
   non-HA routers. Note that for the HA router case, the binding_index
   is simply copied from the L3HARouterAgentPortBinding (since they are
   always created together they should always match).

2. This sets the ground-work for a refactor of the l3 scheduler - by
   using this binding and db-based limitation, we can schedule a router
   to agents using the RouterL3AgentBinding, while postponing the
   creation of L3HARouterAgentPortBinding objects for the agents until
   they ask for it (using sync_routers). This will be a major
   improvement over todays "everything can create
   L3HARouterAgentPortBinding" way of things).

Closes-Bug: #1535557
Change-Id: I3447ea5bcb7c57365c6f50efe12a1671e86588b3
2016-09-02 11:17:47 +00:00
Jenkins
264fadeacd Merge "Refactor _ipam_get_subnets" 2016-09-02 10:17:09 +00:00
ZhaoBo
17b88cd453 Add timestamp fields for neutron ext resources
Propose a new extension named "timestamp_ext" to add timestamp to
neutron ext resources like router/floatingip/security_group/security_group_rule.

APIImpact
DocImpact: Neutron ext resources now contain 'timestamp' fields like
           'created_at' and 'updated_at'
Implements: blueprint add-neutron-extension-resource-timestamp

Change-Id: I78b00516e31ce83376d37f57299b2229b6fb8fcf
2016-09-02 07:44:28 +00:00
Kevin Benton
c736948355 Make L3 agent use different request-id for each request
Generate a new context object request-id for each reference
to self.context. This allows easier tracking of requests
in logs.

This is the L3 agent equivalent fix of
I1d6dc28ba4752d3f9f1020851af2960859aae520.

Related-Bug: #1618231
Closes-Bug: #1619524
Change-Id: I4a49f05ce0e7467084a1c27a64a0d4cf60a5f8cb
2016-09-02 00:51:27 -06:00
Jenkins
903eb250bc Merge "Use revision to discard stale DHCP updates" 2016-09-02 02:51:42 +00:00
Jenkins
44dc3a7923 Merge "Add name and desc to networksegments table" 2016-09-02 02:46:33 +00:00
Jenkins
3f853f00ec Merge "Add the l3 agent 'host' when logging routers" 2016-09-02 00:09:33 +00:00
Jenkins
e8e8335a0e Merge "Fix AddrFormatError in DHCPv6 lease release code" 2016-09-02 00:07:10 +00:00
Carl Baldwin
7a8b034b9a Refactor _ipam_get_subnets
This method was difficult to reason about. This refactoring preserves the
original behavior but reduces code duplication and gathers all of the error
reporting logic in to one section so that future patches can more easily
optimize it.

Unit tests from these packages cover this area well.

    neutron.tests.unit.extensions.test_segment
    neutron.tests.unit.extensions.test_subnet_service_types

Change-Id: I074f34f3d8bc4135664a94dee11ed01c952d2f3e
Partially-Implements: blueprint service-subnets
2016-09-01 17:58:58 -06:00
Jenkins
1d0dd8be92 Merge "Replaced this with "get-me-a-network"" 2016-09-01 23:02:06 +00:00
Jenkins
e13cc1c4a1 Merge "Remove unnecessary setUp and resource_setup" 2016-09-01 22:52:28 +00:00
Jenkins
9249601782 Merge "Ignore extra subnet IPs in DHCP agent" 2016-09-01 22:52:00 +00:00
Jenkins
16d1a4c254 Merge "Handle fullstack oslo deprecations" 2016-09-01 22:33:47 +00:00
Brian Haley
2d67b68cc4 Fix AddrFormatError in DHCPv6 lease release code
A change that merged recently for DHCPv6 lease release
did not have the correct format for the lease file in
the unit test, so we started seeing these today from
the functional tests:

AddrFormatError: failed to detect a valid IP address from '[2003::2]'

We have to strip the brackets from IPs read from the
lease file.

https://review.openstack.org/#/c/301747/ was the culprit.

Closes-bug: 1619463

Change-Id: I0964fe9d00f8f3922041b12c352449e943b8f251
2016-09-01 17:02:38 -04:00
Jenkins
e8b0d77f0f Merge "Fix QoS standardattr migration foreign key step" 2016-09-01 19:15:49 +00:00
Jenkins
b5f7a53f85 Merge "Truncate microseconds before DB insertion" 2016-09-01 17:58:22 +00:00
Jenkins
67371004b5 Merge "Implement check_vlan_transparency to return True in SR-IOV mech driver" 2016-09-01 17:57:55 +00:00
Reedip
5ef869b3bc Add name and desc to networksegments table
This patch adds the name and description column to the
networksegments table.

Change-Id: I7edc224e25e604dfd7613b945a4ca16d9e385760
Partially-Implements: blueprint routed-networks
2016-09-01 09:41:09 -06:00
Jenkins
b9e7611373 Merge "qos: require min_kbps parameter for minimum bandwidth rule" 2016-09-01 15:40:47 +00:00
Kevin Benton
f91d84c577 Fix QoS standardattr migration foreign key step
MySQL doesn't like foreign key columns to be modified,
this adjusts the script to add all constraints and make
modifications before setting up the foreign key relationship.

Change-Id: Ifdb9e57b27aae21cf0ec7c8fec25683b9b0892cf
2016-09-01 07:09:46 -07:00
Kevin Benton
e5339b4a3d Ignore extra subnet IPs in DHCP agent
When the DHCP agent requests a port from a server, it asks
for fixed IPs from specific subnets. However, if the server
is doing auto ipv6 addressing, it may give it an extra IP
it never asked for. The previous logic was not expecting this
so it would fail to correctly setup the DHCP port.

This patch just ignores any IPs on subnets the DHCP agent
isn't servicing.

Closes-Bug: #1618674
Change-Id: I1c26c85520258b751fa98eee326bc2acd2a16860
2016-09-01 06:48:17 -07:00
Kevin Benton
cd80ae6e42 Truncate microseconds before DB insertion
During the development of patch [1], it became apparent
that the DB was rounding the microseconds part of a datetime
object. This caused inconsistencies between what would be
stored in the DB and what was returned to the user via the
API because the API uses strftime.

For an example, see the INSERT statement on L1-L2 and then
the subsequent retrieval of the same record on L43 of [2].
The microseconds were rounded up even though the mysql docs
say they will be truncated.

In order to ensure consistency across SQL drivers, backends,
and our API, this patch adds a TruncatedDateTime object which
truncates off the microseconds before they go into the database.

1. I78b00516e31ce83376d37f57299b2229b6fb8fcf
2. http://paste.openstack.org/show/565116/

Closes-Bug: #1619299
Change-Id: I47d5ad5a5cdc0cb0d61f0642616cccc8f341ed62
2016-09-01 13:25:24 +00:00
Jenkins
5f849165a6 Merge "Make milestone-review-dash script pull all Stadium projects" 2016-09-01 11:37:44 +00:00