tox.ini started failing with Tox 4.x which introduce different
interpretation for 'skipsdist' option. If set to true, application will
not be installed in the tox virtualenv, while on previous version (3.x)
it will be installed, if usedevelop is set to true.
Change-Id: I7716c14a3f18d78a3da15c8e27e60b740c659ef6
Tox trying to install latest versions for building releasenotes,
which may not be supported by stable and lower branches,
so should be restricted by respective version's upper-constraints.txt
This ps to reuse upper-constraints.txt from docs deps
Change-Id: I70d53f31dccca644bcea1abf0b1976bc7121ffe9
Currently, running tox -e coverage will result with error. Shamelessly
stolen commands from Nova project to fix that.
Change-Id: If09c65e895a31daac56afff846861815390a520c
Ussuri release is the one in which we drop Python 2 support, as its EOL
is pretty close now. This commit does so in kuryr-kubernetes by
removing Python 2 unit test jobs, switching all tempest jobs to Python
3, removing specific jobs for Python 3 and updating Dockerfiles to
centos:8 that includes Python 3 from the box.
Also CentOS 7 job is removed from check queue as it seems it doesn't
play well with Python 3. A CentOS 8 job will get created soon.
Change-Id: Id9983d2fd83cef89e3198b2760816cf4a851008b
We've just got hit by cffi pypi package upgrade. This is because we're
not using upper-constraints in our `docs` tox environment. This commit
fixes that by adding it to the env.
Change-Id: Ia4719e7f98b2f6632f321b215f4a31015cc1ca69
We keep 0.13.0 as minimum supported version of openstacksdk in
lower-constraints.txt, but we've found an issue running with 0.17.2. The
issue is fixed by switching from dict notation to object notation when
accessing properties of calls to openstacksdk as only newer versions of
openstacksdk support dict notation.
Another side of the story is that our lower-constraints job doesn't
really install versions from lower-constraints.txt due to a mistake in
tox.ini. Maybe we could have avoided the aformentioned bug if we had
noticed that before. This is fixed by this commit and that also required
me to bump up the pyroute2 to 0.5.3 in upper-constraints.txt as
apparently 0.5.1 isn't py3-compatible. protobuf is bumped to 3.6.0 as
3.5.2 version apparently wasn't compatible with our own code.
The unit tests are now updated to make sure using dict notation to
access openstacksdk objects will fail on lower-constraints job in the
future.
Change-Id: I5113f7574f4d2e450de95494c9287bb7427e67d4
Closes-Bug: 1830398
Seems like I46b077f268d3a812e36f3de532ce1bfe7636166c removed py35 from
the default tox environments. This commit adds py36 there instead to
make sure Python 3 is covered.
Also debug-py35 env is updated to debug-py36 to remove py35 completely,
which is what aforementioned commit was intending to do.
Change-Id: I5a6fdaa0b5d94b9d2827a1a3889a00fce121cf6d
PodResources client could be used by sriov cni to obtain devices
allocated for container by sriov device-plugin.
KubeletPodResources service is still in alpha, so it should be
explicitly enabled in kubelet feature-gates:
kubelet --feature-gates KubeletPodResources=true
New config option 'kubelet_root_dir' added to 'sriov' section
that defaults to kubelet default root-dir '/var/lib/kulelet'.
In case kubelet started with non-default root directory passed
via '--root-dir' option, the same value should be configured
in 'kubelet_root_dir'.
Note that if sriov binding driver will be used inside container
'kubelet_root_dir'/pod-resources directory should be mounted
to this container in order to allow communication with kubelet
via gRPC protocol over the unix domain socket.
Partial-Bug: 1826865
Depends-On: https://review.openstack.org/#/c/652629
Change-Id: Icf088b839db079efe9c7647c31be4ead867ed32b
Signed-off-by: Ilya Maximets <i.maximets@samsung.com>
W/o explicitly set -t parameter for oslo_debug_helper, debug/debug-py27/debug-py35
target failes with following error:
ImportError: Start directory is not importable:'./kuryr-kubernetes/tests'
Debug target can be usefull in case when somebody wants to use interactive debugger
e.g. by placing following:
import pdb; pdb.set_trace()
into for example TestNestedMacvlanDriver.test_connect
and run
tox -e debug kuryr_kubernetes.tests.unit.cni.test_binding.TestNestedMacvlanDriver.test_connect
Closes-Bug: 1797523
Change-Id: I9d35815be7836a06dda4de1abfa6a8cd5b022457
Signed-off-by: Alexey Perevalov <a.perevalov@samsung.com>
Quotes around {posargs} cause the entire string to be combined into one
arg that gets passed to stestr. This prevents passing multiple args
(e.g. '--concurrency=16 some-regex')
Change-Id: Ia3b5e60cc66a9f274f03327ce031c65a12bf1529
According to Openstack summit session [1] stestr is
maintained project to which all Openstack projects should migrate.
Let's switch it then.
[1] https://etherpad.openstack.org/p/YVR-python-pti
Change-Id: Idf2f91565f9205c745a7110be5bf81267bd3caf5
Signed-off-by: Chuck Short <chucks@redhat.com>
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I634e5ed6236ff0253b713b411ab203072485af2c
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: Ic0e992533d1b5840e665aa1a5a311c3e1b0d74e8
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Some of the available checks are disabled by default, like:
[H106] Don’t put vim configuration in source files
[H203] Use assertIs(Not)None to check for None
Change-Id: Iac4e864493d29e896d2a7657eb30fb6c10c9d451
This commit removes the last pep8 check that was excluded
(E128 continuation line under-indented for visual indent),
and cleans up code to match pep8.
Change-Id: Ia1a6d672df521c35bbd1579971d27d546f4f5481
tox.ini contains a bunch of excludes, that are unnecessary. Some are
leftovers from neutron. Some are already fixed and there is no point in
excluding them and some are easy to fix.
This commit does not fix E128 as it is the only serious exclusion with
(currently 166 lines to be changed)
Change-Id: I48cb6cd2258b2d8ed5b8dfdd3ceac7d8d573be81
"tox -e cover" may fail if run after "tox -e py27". This commit
tells tox to remove times.dbm between test runs.
Closes-bug: #1690751
Change-Id: Iea10b2bb5a72e8cf36afa5216b17aca3bc155ddc
This makes tox use the latest version of the tool from os-testr repo,
which contains some valuable changes, like the one making the gate fail
if for some reason no tests are executed because all of them are
skipped.
Change-Id: If88be4b310d746ccc885e3d0c1db8a4dfabb2a28
We will use passenv in the file once fullstack cases
are up. For that we can bump tox min version to 2.3.1
like other projects.
Change-Id: I42a824c1878dda82ea8197469d061c491b4080db
H402 hacking have been removed since hacking 0.10.
https://github.com/openstack-dev/hacking/blob/master/setup.cfg
test-requirements of kuryr-kubernetes require hacking <0.12,>=0.10.2.
So remove H402 ignore statement
Closes-Bug: #1654117
Change-Id: I9c0ccc99c3f1b9a9f0514f21c3ee02875e306bb4
To be co-installable with other OpenStack projects and have consistent
testing it's a good idea (tm) to use constraints when creating tox
environments.
Change-Id: I69045d7f3d4e70c273163916f79be382b97c724a
'tox -e cover' was broken as 'coverage' was looking for
'kuryr-kubernetes' package instead of 'kuryr_kubernetes'.
Change-Id: I3c52e5ce8b5e2fdad385a2edf16f9dc35f9286cd
Adds basic K8s client implementation and CONF-based singletons for
both Neutron and K8s clients.
The K8s client added by this patch should be considered a temporary
solution that only implements the necessary parts to let us move
forward with kuryr-kubernetes. Eventually it will be replaced by either
[1] or [2].
The problem with [1] is that it does not yet support the streaming API
that we need for WATCH. And [2] is outside of the OSt umbrella, so [1]
is preferred over [2] unless [2] makes it into global-requirements.txt.
[1] https://github.com/openstack/python-k8sclient
[2] https://pypi.python.org/pypi/pykube
NOTE: Removed py3-related code from config and top-level __init__.
How to properly deal with that code is TBD.
Change-Id: Ib4eb410eaf9725c296fcdddd8857eb24b8929915
Partially-Implements: blueprint kuryr-k8s-integration
Right now kuryr-kubernetes is only compatible with python3.5 (until
maybe a change in a future). This commit overrides the command to
run on python2.7 to do a dummy call and avoid fails on CI.
It also sets python3.5 as default at running only 'tox'
Change-Id: I2f342588a62a6fc3112978f6bc0f5917119348ff
Signed-off-by: Jaume Devesa <devvesa@gmail.com>
This commit introduces the `kuryr-k8s` service by adding the service
binary and focusing on loading configuration options.
The configuration options are inherited from kuryr-lib project
(http://github.com/openstack/kuryr) and loaded at runtime, together with
the project ones.
These configuration options can be also generated using the
`oslo-config-generator` utility by using:
tox -e genconfig
The service runs as any other OpenStack-based service:
kuryr-k8s [--debug] [--config-file foo] ...
Partial-Implements: blueprint kuryr-k8s-integration
Change-Id: I7e52aef8fb2767dcc46317f2212f4285a17b11da
Signed-off-by: Jaume Devesa <devvesa@gmail.com>
Co-Authored-By: Taku Fukushima <f.tac.mac@gmail.com>