Commit Graph

189 Commits (a3aa15abd64fe4cc4df51ed62f0b2afad9b932d0)

Author SHA1 Message Date
Mitchell Jameson a3aa15abd6 Remove the EAPI rpc implementation
The OpenStack JSON api is already the default. Removing
the EAPI will allow for optimizations that utilize superior
aspects of the JSON api.

Change-Id: I3128ded38ccbf9a7c53e2c6605210981832d5c6f
2017-09-20 17:35:18 -07:00
Jenkins dc0e28c22c Merge "Drop MANIFEST.in - it's not needed by pbr" 2017-09-14 15:25:46 +00:00
melissaml ee708f726c Drop MANIFEST.in - it's not needed by pbr
networking-arista already uses PBR:-
setuptools.setup(
	setup_requires=['pbr>=1.8'],
	pbr=True)
This patch removes `MANIFEST.in` file as pbr generates a
sensible manifest from git files and some standard files
and it removes the need for an explicit `MANIFEST.in` file.

Change-Id: I4507cac0d45c3ccb46050d31bce6056b783fc4b4
2017-09-14 15:11:23 +00:00
OpenStack Proposal Bot 3714d469b8 Updated from global requirements
Change-Id: Ia5f066b586a5fb9b5c33dae86d95660c5067f4ab
2017-09-11 21:40:06 +00:00
Jenkins 293e970553 Merge "Handle errors in GETs gracefully" 2017-09-11 19:35:10 +00:00
Jenkins a74a0ba785 Merge "enable trunk service plugin in devstack when using networking-arista" 2017-09-08 23:06:31 +00:00
Mitchell Jameson 8bce4452aa Handle errors in GETs gracefully
If a call to send_api_request hits an exception,
it will return None. However, our code that expects iterable
types are returned from many of our GETs. This change replaces
None returns with empty dicts in such cases.

Change-Id: I6be1ee4f84fd38519d7c5ae227581a1a72964fa0
2017-09-08 14:05:59 -07:00
Jenkins 52fded399f Merge "modify ml2 dirver to support neutron trunk port & subport." 2017-09-08 16:19:17 +00:00
Mark McClain 94119547cc enable trunk service plugin in devstack when using networking-arista
Change-Id: Iedf17d4fdafa68f48d50a80b7a87fed240d9ee6e
2017-09-08 15:56:05 +00:00
wei wang 0996ad1257 modify ml2 dirver to support neutron trunk port & subport.
Change-Id: I97f568ac49a518bea2b6d31b1ecc7d17c342269c
2017-09-07 18:02:58 -07:00
OpenStack Proposal Bot d45208f539 Updated from global requirements
Change-Id: Ibcbea4f78f3978753423e51faf110cf562d5ba01
2017-08-18 04:43:58 +00:00
Mark McClain 1ff386cdc9 Use DEVICE_ID_RESERVED_DHCP_PORT constant defined in neutron-lib
Change-Id: If6a99219ff63490b5cd677d5268f4d160b98f6db
2017-08-09 18:41:42 +00:00
Mark McClain 20abc47e6d fix text conversion for python2/3
Change-Id: I53f2a006670e7afda575f4c403939e8b152b455a
2017-08-09 18:40:55 +00:00
Mitchell Jameson 310066fa17 Split arista_ml2 into separate files for sync and RPC wrappers
arista_ml2.py was becoming quite large and a dumping ground for
code. This change begins the process of organizing the driver in
a more structured, and manageable way.

Change-Id: I050cdbdc028d7acda940eb932df7052ad2698967
2017-08-02 15:08:14 -07:00
Nader Lahouti 2e68823da0 Removed registration of keystone authentication with CVX
There is a CLI in CVX which configures keystone Authentication and
no need to rely on ML2 driver to send the authentication information
to CVX.

Change-Id: I9c3526ae0bc19873361c7fa8b49e9a92be5f1954
2017-07-25 23:30:39 +00:00
OpenStack Proposal Bot 6673921476 Updated from global requirements
Change-Id: I4f27af5b46595a00c5888e2c1ccb0f1e0b6acea0
2017-07-19 18:36:21 +00:00
Mitchell Jameson c3db288d50 Bind ports using physnet provided by higher level drivers
If a higher level mechanism driver assigns a physical
network to a segment that we are binding, use that
segment rather than looking up the physical network
based on host_id.

Change-Id: I5536ce61a9dd65cd8ff5eb7ee6163bbd4b115a0e
2017-07-07 10:54:21 -07:00
OpenStack Proposal Bot 2a21286212 Updated from global requirements
Change-Id: I999a792c1405a291d6501d1f1b1aa37cd7dfebcf
2017-06-30 12:17:43 +00:00
Mark McClain 83a36f22c3 Move Sync Thread to ML2 worker process
Neutron changed the way resources are extended after Pike milestone-1. As a
result, there's a race condition where the sync thread
makes calls on the plugin before the ML2 plugin has finished
initialization. ML2 supports the get_workers() command to spawn agents for ML2
drivers. This change moves the sync thread to from the API Service to a
child worker process.

Change-Id: Id36018093bc1356dbe7986cbe664f07c35d6c224
2017-06-28 14:23:46 +00:00
Jenkins 4dc0f37aa1 Merge "Update get_physical_network with the latest change to topology" 2017-06-27 20:41:05 +00:00
Boden R fed3fdef12 use service type constants from neutron_lib plugins
The well known service type constants are in
neutron_lib.plugins.constants, but for legacy reasons a few still exist
and are referenced from neutron_lib.constants [1] that we'd like to
remove.

This patch switches references over to neutron_lib's plugin constants.

[1] https://github.com/openstack/neutron-lib/blob/master/neutron_lib/constants.py#L353

Change-Id: Iea954a5c916b527c7bb9d1db761204c3297b1fa6
2017-06-27 12:40:07 -06:00
Nader Lahouti fa68051ccf Update get_physical_network with the latest change to topology
The keys to the json output of 'show network physical-topology hosts'
command changed from hostname to chassis ID. This patch makes the code to work
with older and latest version of the command's output.

Change-Id: Ibfe35e7da4555ea9a5f77645eaca0a498b83cb87
2017-06-27 11:01:27 -07:00
OpenStack Proposal Bot 02f26a02e7 Updated from global requirements
Change-Id: I1037e3e556a3bee30571255bcb22de6db2c365ed
2017-06-27 12:13:34 +00:00
Mark McClain 4cff9a370a oslo-incubator is not used anymore
Change-Id: I60dcb3550db9acae63117c3ddfbf99d4920f201b
2017-06-15 15:55:53 +00:00
Jenkins a7b61eb791 Merge "Make the JSON API the default CVX endpoint" 2017-06-14 00:29:18 +00:00
Mitchell Jameson c01827d37f Make the JSON API the default CVX endpoint
Change-Id: I48baee8ea97a3a9a25403730cb3ddc99dbc0116a
2017-06-13 16:11:29 -07:00
OpenStack Proposal Bot 6d2172b47e Updated from global requirements
Change-Id: Ia71806deced4a20bcfedd60146d24df291e0a267
2017-06-10 21:40:18 +00:00
Mark McClain 055b426af7 migrate neutron.plugins.ml2.driver_api imports to neutron_lib
Change-Id: I81638b3c8bf4964629dfb4aa8de60605a6d30999
2017-06-07 20:40:04 +00:00
Mark McClain 1d194d87f3 Migrate neutron.db.api imports to neutron_lib.db.api
Change-Id: Iea33451a5b5d0cbbfc4c1b6645e8cde2c69383eb
2017-06-07 20:40:04 +00:00
Mark McClain 08c8f2a300 Remove usage of Neutron's MechanismDriverError
The upstream plugin will catch any exception, so there is not need to
import this exception from Neutron. We can raise our specific exception
and remove this dependency.

Change-Id: I6df50480eef474511fe18a8b7c6d5d0d1afb666b
2017-06-07 20:40:04 +00:00
Mark McClain be6bef6493 Migrate neutron plugin constant imports to neutron-lib
Change-Id: Iaefd269c6b766e14e443a95c7cfa651c33bd5935
2017-06-07 20:40:04 +00:00
Mark McClain b22a53b5cd migrate imports for neutron.callbacks.* to neutron_lib
Change-Id: I56d8d1080494a91483deadcea9f6f68a4398eec1
2017-06-07 20:40:01 +00:00
Nader Lahouti a0c46007f4 Change log level from info to debug
Modify the log level to debug as the message in this case
is more suited for debug level.

Change-Id: I9cf6498d405fea7dd7fc14cef894527285889d30
2017-06-06 16:17:12 -07:00
Jenkins fc46b04ad7 Merge "Treat MLAG pairs as a single physical network" 2017-05-30 13:38:01 +00:00
Jenkins a9a3c6dbfd Merge "Add port to database with supported device_owner" 2017-05-27 05:49:02 +00:00
Nader Lahouti 38484379fb Add port to database with supported device_owner
The arista_provisioned_vms table should contain only ports which are
provisioned by the arista mechanism driver. This patch verifies the
device owner of a port before adding it to the table.

Change-Id: I0ce405f305157a0dbb4873cccbf4031256630683
2017-05-26 16:13:37 -07:00
Jenkins d2c4c0cfe8 Merge "Use only 'binding:host_id' to detect port migration" 2017-05-26 22:51:08 +00:00
Mitchell Jameson 72ab612b49 Treat MLAG pairs as a single physical network
With this change HPB is compatible with MLAG pairs by listing
them as peer1_peer2 in the physical network's name.

Change-Id: Idd86162b9d315c174c583f41be98b4e1a163eff5
2017-05-26 15:13:45 -07:00
Nader Lahouti 30333342f2 Use only 'binding:host_id' to detect port migration
The existing code fails to detect a port migration if the port status
is in 'DOWN' state. With this patch, detection of a port migration
relies only on change in 'binding:host_id'.
This patch also fixes failure of deleting a network due to orphan port
in the arista_provisioned_vms database by deleting all entries from the
table if they exist.

Change-Id: I4faa8c9aafc39dce9e0773fcf2ff4836b86080dd
2017-05-26 13:47:09 -07:00
OpenStack Proposal Bot 65cdd947e7 Updated from global requirements
Change-Id: Ice8a9f6fab1aaddca8b3186c4335a6e04da3fc42
2017-05-25 02:10:27 +00:00
OpenStack Proposal Bot eebed64795 Updated from global requirements
Change-Id: If66f761dfee5c519c08cdac1657f5ff2211b4f2f
2017-05-23 11:52:37 +00:00
Mitchell Jameson 418c436cc9 Use vnic_type to determine whether a port is baremetal
In ocata, the tenant network port for baremetal instances
is owned by compute:<zone> instead of baremetal:<zone>. The
vnic_type for those ports is still 'baremetal', so use the
vnic_type to identify baremetal ports.

Change-Id: I677148a7964ea4b3673cc918999073b2cd5caafd
2017-05-18 00:16:12 +00:00
OpenStack Proposal Bot 357444b2ac Updated from global requirements
Change-Id: I0eb4bba79f36085bbcebbaaa8c69054485f933c1
2017-05-17 03:50:49 +00:00
OpenStack Proposal Bot 81f01de724 Updated from global requirements
Change-Id: Ia9e42370142e6342bdda5e4a2858dda1b251dafb
2017-05-15 00:47:21 +00:00
Mitchell Jameson 4328ed0d3b Handle portbindings with no local_link_information gracefully
We were assuming that all ports with binding::profiles would have
local_link_information. This assumption is incorrect, so we should
handle such ports gracefully rather than throwing a KeyError.

Change-Id: Id73e43199c933bc7eb6e71f75d4e6f04cce6c091
2017-05-11 15:06:06 +00:00
OpenStack Proposal Bot d95f31fe00 Updated from global requirements
Change-Id: I9964740046691d7f9f6bc4cefdcfcdd058ec358a
2017-05-05 02:25:16 +00:00
Mitchell Jameson 195520e222 Fix ml2_conf_arista.ini installation
Use the setting if provided in local.conf and switch to
using neutron_server_config_add as Q_EXTRA_PLUGIN_CONF*
is deprecated.

Change-Id: I955075e5a4f208a6b136b35f9e462249e2dcdca2
2017-05-02 11:09:52 -07:00
Nader Lahouti de34d0d189 Implement method for RBAC policy changes
Implements validate_network_rbac_policy_change which is
needed in NeutronNets after adding registry decorator in
neutron.db.db_base_plugin_v2.

Change-Id: Ia77fb2a5a820cab9125c0177e87418c7f0869430
2017-04-25 22:09:03 +00:00
Nader Lahouti c29cc9c73b Add call to the directory add_plugin method
This patch fixes unit tests failure due to adopting oslo-versioned
objects (ovo) for neutorn db by adding the core plugin instance to
the plugin directroy in the test.

Change-Id: Ib0de20addf428c88c169e46ac3b63e4eb0efdb2d
2017-04-24 09:14:20 -07:00
OpenStack Proposal Bot 3ebd389278 Updated from global requirements
Change-Id: If1ccd17082142e8d8b43b1bd734321e8ff23127c
2017-04-12 17:00:02 +00:00