The mock third party library was needed for mock support in py2
runtimes. Since we now only support py36 and later, we don't need it
in lower-constraints.
These changes will help us to drop `mock` from openstack/requirements
Change-Id: I264cfc61d6f20ac0842931b793bf72935fdd550d
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Disable openstackdocs_auto_name to use 'project' variable as name.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: If74b848e1f63a0e116737553fec8ab76d63457f5
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.
Fix problems found.
Change-Id: I71b869fc509cb46b55b1e88fae20422bcba085f7
These translation sections are not needed anymore, Babel can
generate translation files without them.
Change-Id: I6478639b17968e5eb5e44ffcbca2ca65cbc995f7
Add file to the reno documentation build to show release notes for
stable/ussuri.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.
Change-Id: I0c83a8eedb3e50c2dc39c7d690f3457aecebf585
Sem-Ver: feature
Now that we no longer support py27, we can use the standard library
unittest.mock module instead of the third party mock lib.
Change-Id: I9357128c04f2fe0284432c1f6a543d63309efda3
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Use sphinx-build, this fixes doc building so that the generated content
is available for publishing again.
(change I0dbb13d555eb473916ba585c62a0f7433d15afed broke this)
Change-Id: Ib7c6b7437abc0b5c500a5afdaaf79a045f7df9fe
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
know about the requirement
- Remove obsolete sections from setup.cfg:
* Wheel is not needed for python 3 only repo
* Some other sections are obsolete
- Update classifiers
- Update requirements, no need for python_version anymore
Change-Id: I0dbb13d555eb473916ba585c62a0f7433d15afed
Global requirements has uncapped jsonschema, so we need to do so here
too.
Change-Id: I525215e95ebe4b155a17e0e187e9aca27a8217bb
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Listing neutron extensions is part of the startup process.
During system reboot, kuryr-libnetwork process might start before
the neutron processes, which leads to failure on listing neutron
extensions thus failing the kuryr process.
We need to be robust on startup. This commit will retry a few
times on listing extensions to handle this case.
Change-Id: I18a2a6c057225e30ba7e03e1377ab88884d8d2bd
Related-Bug: #1850936
Add file to the reno documentation build to show release notes for
stable/train.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.
Change-Id: If7e2c4c5c8046ed4eb19fc0f318e386693388a97
Sem-Ver: feature
As part of Train community goal 'Support IPv6-Only Deployments and Testing'[1],
we need to define the integration job which deploy services
on IPv6 and perform testing to make sure service listen and communicate
over IPv6 properly.
kuryr-libnetwork has legacy zuul jobs only so base zuulv3 IPv6 job 'devstack-ipv6' and
'devstack-tempest-ipv6' cannot be used and we have to copy the whole
run.yaml to set the IPv6 setting and run the IPv6 verification
script via post_test_hook.
This commit adds the new job 'kuryr-libnetwork-fullstack-ipv6-only'
run on gate and set the required IPv6 setting'.
Story: #2005477
Task: # 35900
[1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html
Change-Id: Ic483a5b4aaff90f05b23d23ffd573ee3626ee46c
The api documentation is now published on docs.openstack.org instead
of developer.openstack.org. Update all links that are changed to the
new location. This also updates some ancient links.
Note that redirects will be set up as well but let's point now to the
new location.
For details, see:
http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007828.html
Change-Id: I1465f265e631c7f3c55cc0634ec3516b40d5bc83
Add file to the reno documentation build to show release notes for
stable/stein.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.
Change-Id: I9e798acfff7657af8be0c67af7b6fab635803b79
Sem-Ver: feature
This is a mechanically generated change to replace openstack.org
git:// URLs with https:// equivalents.
This is in aid of a planned future move of the git hosting
infrastructure to a self-hosted instance of gitea (https://gitea.io),
which does not support the git wire protocol at this stage.
This update should result in no functional change.
For more information see the thread at
http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003825.html
Change-Id: I2a2cec67b3b3dd7f321f889ce3ae6acb5a65460d
without it:
()[root@ec6e7972d313 kuryr-libnetwork-3.0.1.dev2]# pip install .
Processing /kuryr-libnetwork-source/kuryr-libnetwork-3.0.1.dev2
Complete output from command python setup.py egg_info:
ERROR:root:Error parsing
Traceback (most recent call last):
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/core.py", line 96, in pbr
attrs = util.cfg_to_args(path, dist.script_args)
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/util.py", line 256, in cfg_to_args
pbr.hooks.setup_hook(config)
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/hooks/__init__.py", line 25, in setup_hook
metadata_config.run()
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/hooks/base.py", line 27, in run
self.hook()
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/hooks/metadata.py", line 26, in hook
self.config['name'], self.config.get('version', None))
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/packaging.py", line 831, in get_version
version = _get_version_from_pkg_metadata(package_name)
File "/var/lib/kolla/venv/lib/python3.6/site-packages/pbr/packaging.py", line 799, in _get_version_from_pkg_metadata
pkg_metadata = email.message_from_file(pkg_metadata_file)
File "/usr/lib/python3.6/email/__init__.py", line 54, in message_from_file
return Parser(*args, **kws).parse(fp)
File "/usr/lib/python3.6/email/parser.py", line 54, in parse
data = fp.read(8192)
File "/var/lib/kolla/venv/lib/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 3612: ordinal not in range(128)
error in setup command: Error parsing /tmp/pip-req-build-cckcsjoj/setup.cfg: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 3612: ordinal not in range(128)
Change-Id: I1585704e39b19e95c3d1e53cfb60c80825768237
This allows external service pre-create a neutron port with
'binding:host_id' populated before passing the port to kuryr.
This is important because setting 'binding:host_id' is slow.
This blocks the docker daemon for serving other requests,
which blocks the whole system.
We want to have this field pre-populated so that the docker
daemon won't be blocked by this API call.
This commit also allows the 'device_owner' field to be
customized if users choose to pre-populate the 'binding:host_id'
field. In addition, this commit skips the API call to update the
neutron port if the 'binding:host_id' is pre-populated
and 'admin_state_up' and 'mac_address' fields are unchanged.
Closes-Bug: #1809306
Change-Id: I09c4a51410dffaec21ab0bb3db85df8c776c92e5
In before, we renamed existing neutron ports in order to make
the ports searchable by using endpoint_id.
However, user experience is bad on such renaming because the original
name is lost. This commit proposes to use tagging approach instead.
In particular, we tag the endpoint_id to the existing ports so that
the ports are still searchable by using tags.
Closes-Bug: #1810219
Change-Id: I9930f3bcc3a6dbf4b23bf8488f08655bc43b5ba8
On removing a tag to a resource (port/subnet/subnetpool/network),
if the resource doesn't have the tag, skip the neutron API call to
remove_tag because the tags will be unchanged.
This will avoid one or two Neutron API calls and optimize the
performance a bit.
Partial-Bug: #1809306
Change-Id: Iffa5fbf27c64f1aad0a9bb97da9c4e7c5015a196
On adding a tag to a resource (port/subnet/subnetpool/network),
if the resource already has the tag, skip the neutron API call to
add_tag because the tags will be unchanged.
This will avoid one or two Neutron API calls and optimize the
performance a bit.
Partial-Bug: #1809306
Change-Id: I8a181d6af5228007d36fa8b217fec7f766dd37fd