In before, only one binding driver is allowed. This patch introduces
a new config to support multiple binding drivers. The first use case
is to allow SR-IOV binding to be co-existed with other binding.
* Rename the config 'driver' to 'default_driver' in 'binding' group.
This is for making it clear that it is allowed to have more than
one type of bindings.
* Introduce a new config called 'enabled_drivers'.
* Allow client to pass a driver name to port_bind and port_unbind.
If this parameter is None, kuryr will load the default driver.
Partial-Implements: blueprint sriov-binding
Change-Id: I14b23379de9f2459ba97d5d82dfdb51553370cb1
The name of neutron config group is specified in file
kuryr/lib/config.py. If we want to retrieve the name of this config
group, we should read it from that file instead of hard-coding it.
Change-Id: Id6ebc4fc8433a802edc04b941a591e03d23c489e
This patch introduces a new hierarchy of drivers to perform the port
binding and unbinding in a similar fashion as how it is done with
Neutron plugins.
The initial three drivers are:
* veth: The one that we have been using up until now and that uses
the usr/libexec/kuryr/* scripts to bind the host side
* ipvlan: L2 ipvlan motivated mostly container-in-vm use cases so that
the instance interface will have linked devices that get addresses
of other ports of the same subnet.
* macvlan: bridged mode ipvlan for OSes that do not support vlan.
Co-Authored-by: Louise Daly <louise.m.daly@intel.com>
Implements: blueprint driver-binding-ipvlan
Change-Id: I1d94ab324ab2a65a6d3e782e23ea6c59b110ff67
Value of this parameter will be refered in the code to determine
if containers are being launched inside virtual machines or on baremetal
machines.
Partially Implements blueprint containers-in-instances
Change-Id: Icbd561504c9bc39dbf7ef4b0f97561882dd8b1c2
This patch moves, as was discussed in the weekly IRC meeting,
[keystone] and [neutron] options, that were just for talking to
Neutron, inside [neutron].
The new organization is consistent with how Nova talks to Neutron
and how Neutron notifies nova. In doing so, we also reduce our codebase
since we can leverage the nice things offered by keystoneauth1.
Closes-bug: #1563011
Change-Id: Ia56b22963f5a2130a722403a14ee1a233ac6cff9
Signed-off-by: Antoni Segura Puimedon <antonisp@celebdor.com>
Configuration parameters should be registered by module which is user
of kuryr-lib.
Change-Id: I39dc27a8a9430327cdc75191f63c268354d07dab
Closes-bug: #1615942
This patch removes configuration parameters which are specific to
libnetwork. Currently these parameters are present at both repos and
thus lead to duplicate option error.
Change-Id: I2c3473a7ce89e26c78aeb35510650836f7043157
Closes-bug: #1605079
Related patchset in kuryr-libnetwork:
https://review.openstack.org/#/c/337350/
Implements blueprint code-refactoring
Change-Id: I91a402a159817462535e77296217a9dd7eb0fd08
This patch replaces mox with mock partially in
kuryr\tests\unit\test_config.py.
Change-Id: I2e155ca2940c05eca3ad39592b48ec120434f088
Partial-Bug: #1593906
Currently default subnetpools expected to be configured
using environment variables. This is being moved to configuration
file.
Change-Id: I15562a0e479ff847b764e18eb286dc3565188a64
Closes-bug: #1542026
This patch introduces oslo.log as the new dependency and modifies the
configuration to use its options by default. Options can be configured
through the generated config file.
Change-Id: Iad9ccc5a521ffc49fe813a90ab0ce4997db707d1
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
Closes-Bug: #1569672
This patch makes the logging level configurable in the config file.
Change-Id: Id51c92ab8a51aab0eac3b60700d3d013b13293d0
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
Closes-Bug: #1525088
assertTrue is weaker than assertEqual(True,..) because
assertEqual also compares the type. If we expect a boolean
we should assert for a boolean, not for some true-ish
value
This reverts commit 992630a4ab.
Change-Id: Ia5e880b7384e0a8b599cc5f87b1b9a27427fb419
The usage of assertEqual(True/False, ***) should be changed
to a meaningful format of assertTrue/False(***).
This patch fixes the same in keystone.
Closes-Bug: #1512207
Change-Id: I800fe2c849ff089882064656c21350354b729025
1) Let server read the debug flag from config
2) Write the test case, use assertEqual for explicity
3) Keep the value to True for current usage
Change-Id: I83e4ae92e43b8be92cf92ff257f317ed1bf9491e
Closes-Bug: #1531073
While authenticating with user name and password, the version
has tp be specified in the auth_url as shown here:
http://docs.openstack.org/developer/python-neutronclient/
Making the config option contain the full path, including the
version.
Change-Id: I290b0fbef5bfdfbae7c473f09e2aa676ea3602f9
With this patch the tox command only runs the unit tests
at the ./kuryr/tests/unit lib.
Another test job is added for fullstack which is meant to be
run only with a working devstack setup and will run
at the gate with tempest.
You can run the tests there for debugging with 'tox -e fullstack'
implements blueprint: fullstack-testing
Change-Id: Ia646b3f1a2b25f0a7fd4d01ed72ea1b51bb3b21c