Commit Graph

10 Commits (a9f6adf3166fe7c033a5ca7ae511ad6ec2798ea8)

Author SHA1 Message Date
Cao Xuan Hoang bf650cccde Changed author and author-email
Changed author to OpenStack and author-email to

Change-Id: Ib37fa8d65b43c44b5c29ebb44fc3558c7fad2342
2017-03-15 16:30:30 +00:00
Sridhar Venkat d4897df6ab Mechanism driver & agent for powervm SR-IOV
A new mechanism driver is included in this patchset. This has a
corresponding SR-IOV agent implementation as well.

The mechanism driver supports vnic_type direct. Both flat and vlan
network types are suported. The mappings reference maintained by this
driver is derived from agent configuration.  Agent periodically updates
mechanism driver with a list of physical networks derived from port
labels of physical ports of SR-IOV adapters. Mechanism driver validates
incoming port for binding if it has valid physical network attached to
it.  To do this, the check_segment_for_agent method is used by
try_to_bind_segement_for_agent. Under the covers, mappings from the
agent are matched with physical network attribute of the segment.

This mechanism driver also provides vlan information during binding to
vif plug mechanism on nova side. To do this, this mechanism driver
provides binding:vif_details with vlan id. On nova side, during vif plug
operation, vlan can be retrieved from ['details']['vlan'] attribute of

This patchset also includes changes to setup.cfg. A console script
driver to setup networking-powervm-sriov-agent along with its sea

setup.cfg changes also include Mechanism driver setup in ml2.conf
and entry_points.txt file in runtime environment.

Implements: bp/powervm-sriov
Change-Id: I87f6ed095d62afe4c683c2688fa27ddf367a19f6
2016-08-23 13:58:54 -05:00
Drew Thorstensen 8d7c614630 Update version to 3.4
The jobs in OpenStack run against Python 3.4.  This change set updates
the setup.cfg to also reflect this version.

Also provides a proper homepage for the project.

Change-Id: I78a5c2dfd7219cea9b70e739d4bf43e55ab29277
2015-11-10 10:56:43 -05:00
adreznec e2e00a63c0 Rename neutron-powervm to networking-powervm
As part of the changes outlined here:

Rename neutron-powervm to use the networking-powervm namespace in
accordance with the Neutron Stadium effort.

Change-Id: I445f89b5781647671f2e4daf38a7b60bc58cb686
2015-09-21 08:29:30 -05:00
Drew Thorstensen 8d8cfe2e88 Refactoring for consistency
This change set provides some refactorings that make the code easier to
read and maintain.  The key changes are:
 - Support fixtures in a similar way that nova_powervm does.  This
   reduces the amount of mock up code required for testing.
 - Rename the powervm_sea_agent to sea_agent.  The PowerVM is already
   part of the namespace (due to the folder it is in).  This was
   creating too long of a name for use.
 - Change the connection utility to be PVMUtils.  Simpler name more in
   line with how the function has evolved.
 - Incorporated some code comments from an earlier change set that was
   early merged.

Change-Id: Icc188bfdc88b6ac524a18688a30aefa336fff86a
2015-02-23 14:28:37 -06:00
Drew Thorstensen fcd433a064 Support PowerVM Mechanism Driver
This change supports running a PowerVM Shared Ethernet Mechanism Driver.
This is required for the agent to bind the port properly with the ML2

Change-Id: I5f9b1c961e6b01ff83091bd30550cf9b945aca0d
2014-12-02 15:43:26 -06:00
Drew Thorstensen 374bff7a30 Support initial boot of neutron agent
This change provides support for starting the neutron agent and having
it report the agent state back to the controller.

Change-Id: I0d209539bbf145b5ae791193919c16437ebfbe6c
2014-11-02 12:11:23 -06:00
Drew Thorstensen 3c4193fbc0 Framework for Neutron PowerVM Agent
Providing the baseline structure of the PowerVM Neutron Agent file.
This supports a generic call back to the controller node to state that
it is alive.  Should receive incoming port requests, but does not do
anything with those requests yet.

Initial Unit Test code is also provided.

Change-Id: I19455dab32aec23ef11ab3bccdecbff0630781e5
2014-10-23 07:35:05 -05:00
Drew Thorstensen 9b2e01f87d Updated Python Versions
Target the Python 2.7 and Python 3.3 versions to match the community
strategic levels.

Change-Id: I4a4e5255b1789ce85413434eaa206139bf3c8e5f
2014-10-21 15:17:18 -05:00
Drew Thorstensen 46a8ce3b5c Initial Library Setup
Provides the initial baseline for the PowerVM Neutron ML2 Agent.
The work done here provides:
 .gitignore - Indicates which files not to track within Git.
 .gitreview - Input to the git-review command on how to send to Gerrit.
 .testr.conf - Conf file input for the testr command (UT)
 CONTRIBUTING.rst - Information on how to contribute.
 HACKING.rst - Information on what needs to be done for updates.
 LICENSE - The license for the project
 README.rst - Information on what this project is.  Currently this is
              the blueprint.
 openstack-common.conf - Required openstack configuration for all
 setup.cfg - Input to the on how to execute certain actions. - Used for build of the project.
 requirements.txt - Required packages (and levels) to run the code.
 test-requirements.txt - Required packages (and levels) in addition to
                         the requirements, that indicates what is needed
                         to run the UT.
 tox.ini - The input for the tox commands.

In addition, a base set of packages for the agent and unit tests were
loaded in.

Change-Id: Ib7e018b8a8004a5722723cb7ff645eb3b4297886
2014-10-21 14:53:39 -05:00