Commit Graph

46 Commits

Author SHA1 Message Date
Ghanshyam Mann 415a54249b Drop lower-constraints.txt and its testing
As discussed in TC PTG[1] and TC resolution[2], we are
dropping the lower-constraints.txt file and its testing.
We will keep lower bounds in the requirements.txt file but
with a note that these are not tested lower bounds and we
try our best to keep them updated.

[1] https://etherpad.opendev.org/p/tc-zed-ptg#L326
[2] https://governance.openstack.org/tc/resolutions/20220414-drop-lower-constraints.html#proposal

Change-Id: I3f6d03ce43d5b7d3852d08f8ba91b8dd9023c744
2022-04-30 20:20:15 -05:00
Michał Dulko 2559722a72 Fix pep8 and lower-constraints gates
PEP8 needs upgrade of hacking version and lower-constraints require us
to start having stuff supporting Python 3.8 in lower-constraints.txt.
Both are fixed by this commit.

Change-Id: I1d0b244f98dbe2228edfcc0caae70b43013a18ad
2020-09-11 16:10:34 +02:00
gugug d3a2fae486 Remove all usage of six library
Convert all code to not require six library and instead
use python 3.x logic.

Change-Id: I273fee5b36e9bb57e3120597314176e0eac17a78
2020-08-27 23:10:32 +08:00
Ghanshyam Mann 9582fadebb [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

Kuryr is ready with python 3 and ok to drop the
python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Depends-On: https://review.opendev.org/#/c/693631/
Change-Id: I6c14fa3b0c3a19b5f50f5d78a43ba060c10de914
2019-11-16 14:32:07 +00:00
whoami-rajat d75eaff065 Add kuryr-status upgrade check command framework
This adds basic framework for kuryr-status upgrade
check commands. For now it has only "check_placeholder"
check implemented.
Real checks can be added to this tool in the future.

Change-Id: I8af38f087672a390ec8b2b78916315b5a646fcbb
Story: 2003657
Task: 26137
2018-10-23 16:51:51 +05:30
OpenStack Proposal Bot 24b59fcf94 Updated from global requirements
Change-Id: If7a7c9458db9b500ad9ac94c8bef8dff917805f7
2018-02-17 09:36:13 +00:00
OpenStack Proposal Bot 1a19c82076 Updated from global requirements
Change-Id: I4520591eefecd30a084a0f84b91130e855913e5f
2017-10-15 17:00:39 +00:00
OpenStack Proposal Bot 917ee686c1 Updated from global requirements
Change-Id: Icd465e0c5f194ccc96827f2e8a54890e9c7777e9
2017-08-18 11:31:54 +00:00
OpenStack Proposal Bot c842d40ef0 Updated from global requirements
Change-Id: I3271f8002a6b2fcf7f31d8ca846dca9fb0013937
2017-07-06 19:45:40 +00:00
OpenStack Proposal Bot 3d1ae35928 Updated from global requirements
Change-Id: I6efee8835a896fc839d80ece6ee8dfd837a98286
2017-07-04 11:17:55 +03:00
Kien Nguyen df421a9b2e Add compatibility for pyroute2>=0.4.15
Pyroute2 was updated, its change make some testcases failed.
This patch fix the problem with pyroute2 update.

Change-Id: I300f9830927a8babf9112f9aff265ef4b2e5e03e
Closes-Bug: #1700469
2017-06-26 15:00:31 +07:00
OpenStack Proposal Bot 1acf5576ec Updated from global requirements
Change-Id: I4553e85c0d23568c282aace0f952f7332210d281
2017-04-12 16:58:57 +00:00
OpenStack Proposal Bot 13ed5e9688 Updated from global requirements
Change-Id: I6d80ce6a7ed43b52297d9c7a97249542d00d6f87
2017-03-28 21:29:55 +00:00
OpenStack Proposal Bot 40ffd45150 Updated from global requirements
Change-Id: I3628be508e40a2455bc6244f35222880d8068293
2017-03-17 11:55:19 +00:00
OpenStack Proposal Bot c0f5d8459a Updated from global requirements
Change-Id: Ib4e91babd7bfc60148831be31613443ee091e69c
2017-01-21 15:49:26 +00:00
OpenStack Proposal Bot 6a12fc5547 Updated from global requirements
Change-Id: Ie63222551a5d63f4952fd05ec5e366790c984ef0
2017-01-16 20:31:39 +00:00
OpenStack Proposal Bot fe2e6d0c7f Updated from global requirements
Change-Id: Iaecc60b90e47cb1dc94f6bf6bf7b38894cf880e5
2016-12-15 09:04:13 +00:00
OpenStack Proposal Bot bd7bbfd470 Updated from global requirements
Change-Id: I349461f86cc760800933b9089fe0b73654a0fad7
2016-11-09 22:57:22 +00:00
Antoni Segura Puimedon aa641a29ca
move to ipaddress
Python3.3 introduced a very nice standard library called ipaddress that
serves for a very similar purpose to netaddr. By moving to it, we are
future proofing our code and making Python3 users of kuryr-lib not have
to install an external library.

Change-Id: I9e995b3804e60bea199e150e70f828d5f6e2bed4
Implements: blueprint netaddr-to-ipaddress
Signed-off-by: Antoni Segura Puimedon <antonisp@celebdor.com>
2016-09-22 12:10:35 +02:00
Antoni Segura Puimedon 632fda4c32
auth: use keystoneauth1 for neutron access
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>
2016-09-11 11:05:05 +02:00
Antoni Segura Puimedon dfd8aa1e6c
requirements: add missing oslo i18n dep in order
Somehow we were missing this dep. I suspect that another oslo dep was
pulling it anyway, but the policy is that any module that we import
directly should be in our requirements.txt even if it is being pulled
by another dependency (as that dependency could drop the sub dep and
we'd break).

Change-Id: I5d5ee420273d87c73c5c6c8ac806eaea2ce18c2b
Signed-off-by: Antoni Segura Puimedon <antonisp@celebdor.com>
2016-08-29 11:49:21 +02:00
Antoni Segura Puimedon 4e4ca376d7
Drop unused requirements
In the split we forgot to drop some requirementes that belong only to
kuryr-libnetwork. This patch removes all the requirementes that are not
explicitly used in the kuryr.lib namespace.

Change-Id: Ia31c402e90e92802b5f096072799eacfa122aaca
Signed-off-by: Antoni Segura Puimedon <antonisp@celebdor.com>
2016-08-29 10:19:08 +02:00
OpenStack Proposal Bot 94aed4a36a Updated from global requirements
Change-Id: I26441505636265d3abec7352ef78480d180632cb
2016-08-13 01:32:06 +00:00
OpenStack Proposal Bot eb25bd50c9 Updated from global requirements
Change-Id: I7701fbbd7c7d513e077e6a9400eb923969f1561b
2016-07-21 13:25:35 +00:00
Jenkins 74e1f53aaf Merge "requirements: upgrade to latest pyroute2" 2016-06-20 20:03:36 +00:00
Lenka Segura 7cea99ac34 requirements: upgrade to latest pyroute2
Pyroute2 had bug with older kernels in 3.16 branch that was being
exposed in fullstack tests:

htps://github.com/svinota/pyroute2/issues/259

It was patched in the 0.4.3 release with

https://github.com/svinota/pyroute2/commit/22a2a06c0

Change-Id: I7833dee8129aa4557d9cde1e95aca6e9e55a9bc4
Signed-off-by: Lenka Segura <lenka@sepu.cz>
2016-06-17 21:44:34 +02:00
OpenStack Proposal Bot d64d5971ba Updated from global requirements
Change-Id: I622e0a0d3fc843bf9ea2447b1dde3a3bba29dafe
2016-06-16 16:09:29 +00:00
OpenStack Proposal Bot a98929ce24 Updated from global requirements
Change-Id: Ib6a97a3804762ff38103511720f351a3ff2dc2c6
2016-05-31 18:52:00 +00:00
OpenStack Proposal Bot 862a579cad Updated from global requirements
Change-Id: Icd5214f036687d47f1d861602dbb153eac617efa
2016-05-11 17:23:45 +00:00
Doug Wiegley 73043cdab2 Switch to using hacking checks from neutron-lib
Temporarily comment out the 'no neutron' check.

Change-Id: I8da2a5259528d05d58e2b6aa2fc34e3e0ae128a7
Partially-Implements: blueprint neutron-lib
2016-04-24 23:21:10 -05:00
Taku Fukushima 409cffac1d
Add oslo.log and use its config options by default
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
2016-04-13 20:36:47 +09:00
OpenStack Proposal Bot b16fe0482f Updated from global requirements
Change-Id: I73e066a2a2d61b9c8c99fe37078075b1788f1159
2016-04-07 17:19:08 +00:00
OpenStack Proposal Bot 68f1e01a09 Updated from global requirements
Change-Id: I134943e0f2b758964896fd0896edc682595a93c9
2016-04-05 13:29:06 +00:00
OpenStack Proposal Bot aeefbff865 Updated from global requirements
Change-Id: I4091305e3a3bcecb2f018b7224bfd8ade951a72f
2016-02-24 21:45:57 +00:00
OpenStack Proposal Bot 8639dc01ac Updated from global requirements
Change-Id: Ie1bc3790ccdba69d3eca7aca732e845f2ee6eb10
2016-02-19 02:32:25 +00:00
Andreas Jaeger d94b797355 Remove tox from requirements
tox is not part of global requirements and thus the sync with
requirements repository fails. Remove tox, it's wrong to mention it, we
expect tox to be installed.

Change-Id: I562456af72fb5336789b9ca5837574712e788ab9
2016-02-17 09:14:33 +01:00
Antoni Segura Puimedon 5cf2adf27a requirements: neutronclient subnetpool support
The support for the subnetpool APIs was added by commit
b978f909014cbc398c21bfae917fcece89a36e38
that first appears in the tag 2.4.0.

Change-Id: I41e454d10110c386562ccde9a0c9c59f6848ae5a
2016-01-30 21:50:48 +01:00
Antoni Segura Puimedon 6069371e1e requirements: add missing os-client-config
Probably we didn't notice it in devstack since other software pulls
it first. Maybe to avoid these sort of things devstack should run
each piece in a different virtual environment.

Change-Id: I4f24b680d15d0da2347ba5996a1708649985f2bc
2016-01-30 21:02:51 +01:00
Hui Kang 7af4f17f52 Fix missing tox in the requirement file
TrivialFix

Change-Id: If59a0bf60d8de893e81c5aa2a579b316e5b24159
2016-01-21 13:57:10 -05:00
Taku Fukushima 61a0350695 Implement /NetworkDriver.Join
This patch implements /NetworkDriver.Join, which goes through the
following steps:

1. Find the Neutron port associated with the given EndpointID
2. Create the veth pair based on the info of the retrieved port
3. Bind the port to the veth endpoint
4. Construct the response with the port and return it

In the process 3, Kuryr executes the binding script specified in the
binding:vif_type attribute of the retrieved Neutron port. Although
Neutron plugin can put arbitrary types in that attribute, if the
attribute was not specified it defaults to "unbound" and Kuryr invokes
"unbound" executable, which always fails with the status code 1.

This patch also includes the unit tests cover the successful case and
the failures.

Change-Id: Id3a8288199975d86812c7c1d210c7e11ae58d7b8
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-11-04 17:03:49 +09:00
Taku Fukushima a1d65edb3f Add the validation for /NetworkDriver.CreateNetwork
This patch adds the validation for /NetworkDriver.CreateNetwork with
the JSON schema.

This patch also introdueces the basic foundation for the following
validations with JSON schemata. The common part of the scheamta is
separated in commons.py and it's injected into each schema.

Change-Id: I1cd849db2eeadb03b4488e1842fbd22e62fff169
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-09-15 19:50:41 +09:00
Taku Fukushima daaa97fbda Implement /NetworkDriver.CreateEndpoint
This patch replaces the mocked version of /NetworkDriver.CreateEndpoint
with the actual Neutron call. This unit test for the endpoint is also
implemented.

libnetwork's Endpoint is mapped into Neutron's subnets and port. The
request to create an Endpoint contains the information of libnetwork's
Interfaces to be managed, however in Neutron there's no single resource
corresponds to the Endpoint.

Therefore Kuryr breaks the Endpoint into the following three pieces.

1. Subnet for Address property in the request
   - Kuryr passes the given Address property to CIDR for the request
     against Neutron API as it is
2. Subnet for AddressIPv6 property in the request
   - Kuryr passes the given AddressIPv6 property to CIDR for the request
     against Neutron API as it is
3. Port which MAC address is the same as MacAddress property in the
   request

To distinguish Neutorn subnets created in 1. and 2., Kuryr names them by
the given EndpointId with the their subnet addresses as the postfixes.
For the Neutron port, Kuryr gives the EndpointID with the index of the
interface and the postfix, "port". For instance, if Address, i.e.,
10.0.1.1/24, and AddressIPV6, i.e., fe80::f816:3eff:fe20:57c4/64, which
corresponding Neutron subnets don't exist are given in a request against
/NetworkDriver.CreateEndpoint, the following subnets and a port will be
created.

* 98953db3f8e6628caf4a7cad3c866cb090654e3dee3e37206ad8c0a81355f1b7-10.0.1.0
* 98953db3f8e6628caf4a7cad3c866cb090654e3dee3e37206ad8c0a81355f1b7-fe80::
* 98953db3f8e6628caf4a7cad3c866cb090654e3dee3e37206ad8c0a81355f1b7-0-port

In the process 1. and 2., Kuryr doesn't specify the allocation list for
the addresses and it's the responsibility of Neutron to allocate an
appropriate set of the addresses.

In the latter workflow, where a container joins the network and be
assinged for the specific address, Kuryr binds the container with the
created port which IP address that is allocated in this phase.

This patch implements the following IPAM blueprint in Kuryr partially
except for retrieving the names of the default subnets from the config
file:

https://blueprints.launchpad.net/kuryr/+spec/ipam

Change-Id: I1798b3baff56e285059435f2b8620f36811b580f
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-09-15 19:50:41 +09:00
Taku Fukushima 88fe57c855 Add python-neutronclient to the dependencies
This patch adds python-neutronclient to requirements.txt.

Change-Id: Ie8921252c3f3b09c84d748fa5f5a513540afb509
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-07-29 16:17:58 +09:00
Taku Fukushima 8c73ab3079 Add basic tests for Kuryr
This patch adds unit tests for Kuryr and examine if it satisfies
libnetwork's remote driver specifications.

Change-Id: Ic8ab9944a5ed884db518c840b75917261583e53e
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-07-28 16:05:23 +09:00
Taku Fukushima 7b8dc9f7bb Add dependencies to requirements.txt
This patch adds some primary dependencies, Flask to
requirements.txt.

Change-Id: I1c285c1f91539403441ba200b58423e3dfc28988
Signed-off-by: Taku Fukushima <f.tac.mac@gmail.com>
2015-07-24 15:15:23 +09:00
Gal Sagie c98b0a5cbd Initial template commit
Depends-On: I39db2918ea277b939f67d3c856f52bd53c226f27
Change-Id: Iea544d90ae617abbcc6087d558d3fd38fca61a8c
2015-07-15 10:00:44 +03:00