basepython as python3 is not needed anymore since py27 support was
dropped since many OpenStack cycles ago.
py38 and py310 jobs are failing because the requirements are not
installed. This patch adds explicit install of the requirements.
Change-Id: I095f10b97529fb794db135621d74a16e6554dd5f
Moving on py3 as the default runtime for tox to avoid to update this at each new cycle.
Wallaby support officially the following runtimes [1]:
- Python 3.8
During Victoria Python 3.7 was used as the default runtime [2] however this version isn't longer officially supported.
Change-Id: I71bd094393176225e81df13dd4ed7e35c559f355
UPPER_CONSTRAINTS_FILE is old name and deprecated
This allows to use upper-constraints file as more
readable way instead of UPPER_CONSTRAINTS_FILE=<lower-constraints file>.
Change-Id: If49cb308a440a4cd18cc1688845b480f54dc6abd
Tox trying to install latest versions for building docs which may
not be supported by stable and lower branches, so should be
restricted by respective version's upper-constraints.txt
Change-Id: I2cb297069e203bb6f4bc49576e86ae5e12cae33a
Python 3.8 is now our highest level supported python runtime.
This updates the default tox target environments to swap out
py37 for py38 to make sure local development testing is
covering this version.
This does not impact zuul jobs in any way, nor prevent local
tests against py37. It just changes the default if none is
explicitly provided.
Change-Id: I72ac32ea4796529213bc9b58b893183992bc7d66
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.
Fix problems found.
Update local hacking checks for new flake8.
Remove hacking and friends from lower-constraints, it's not needed
there.
Change-Id: I48fcd2521d99d0b77b976e87cc638fe5ac051315
* Switch to newer openstackdocstheme version and remove values that are
set now by openstackdocstheme.
* Remove py2 requirments for docs, we only build with python3.
* Update deps for docs building, we don't need the default.
* Remove modindex, this is not build, see
https://docs.openstack.org/ec2-api/latest/py-modindex.html
Change-Id: I6958cbed944de0a1eea02de10c5a4916b6a7293d
Sphinx 1.8 introduced [1] the '--keep-going' argument which, as its name
suggests, keeps the build running when it encounters non-fatal errors.
This is exceptionally useful in avoiding a continuous edit-build loop
when undertaking large doc reworks where multiple errors may be
introduced.
[1] https://github.com/sphinx-doc/sphinx/commit/e3483e9b045
Change-Id: I96e52fe2f0b14d359f37964c3bd51b1ba985dac0
Just to help us separate the documentation-focused requirements from
everything else.
Change-Id: I69e9290addd4424fd8360bffcabc118824a24e20
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
- Use 'ignore_basepython_conflict' so we can simply define 'basepython'
on the base testenv
- Add an '.stestr.conf' file, allowing us to stop specifying the
'--test-path' argument manually
- Call 'sphinx-build' directly instead of using the 'build_sphinx'
distutils extension, which pbr is deprecating. This requires a fix to
the docs but allows us to remove some noise from 'setup.cfg'
- Fix some indentation and remove some unnecessary configuration
Change-Id: Icc16ed943d8c0b9df01734da5642bf51e83314b8
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
The 'install_command' section was being overridden in 'tox.ini', meaning
we were never using the constraints 'lower-constraints.txt'. Fix this
and update the few requirements necessary.
- oslo.db so we get Ifb2c59c2cfbd615b04570b31fcfe868f4ffea3c6 which is
necessary for Python 3.7 support
- python-glanceclient so we get the HTTP error messages expected in unit
tests since I1608f82eeaa6ff4c5ac55f57989bb1cfe17dbdc7. This also
necessitates updating keystoneauth1.
- The minimum of Sphinx is bumped to 1.7.0 to avoid the need to
blacklist multiple 1.6.x versions
In addition, these minimums are reflected in test-requirements.txt and
requirements.txt. This is expected by the 'requirements-check' job in
the gate.
Change-Id: Ib96387c1e295a2c92debf761893708d110e544c5
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
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.
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: Ib3f8664195986bae45123061cd2afc816c6403d8
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: Id2964291cd5e56af09f84d1aeab8138c10f9758f
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
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: I092758f7553860040990790a31651cd35affbc67
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
ec2-api jobs have been switched to use
ec2api-tempest-plugin for ec2-api tests, so
we can remove the in-tree tempest tests now.
Change-Id: I82ace9ebd1ca5216c2e3fc3d75f07146417ebf94
When running tox tests, a warning pops up saying:
WARNING:test command found but not installed in testenv
cmd: /usr/bin/rm
env: /path/to/directory/ec2-api/.tox/py27
Maybe you forgot to specify a dependency? See also the
whitelist_externals envconfig setting.
Adding rm to the whitelist_externals causes this warning
to no longer appear.
Change-Id: I1894b69a9e459de874b95ee6ba1fb9d060cd426b
The i18n team has decided not to translate the logs because it seems
like it not very useful; operators prefer to have them in English so
that they can search for those strings on the internet.
Since we have removed log translations completely, we should add hacking
rule to prevent future mistakes.
Change-Id: Ia7524308ef2675f8d41ac80b37dfc7e3787efd90
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: I3854538ff6e144f88d4f0e8894573298da53869d
Running py2* post py3* tests results in error. Add
'rm -f .testrepository/times.dbm' command in testenv to
resolve this.
Change-Id: Ide2e6f2fe9d5b3c7b33e2fefdd3d306284684ba1
Now gate job for Python 3.5 exists and not 3.4,
we should remove those references to the 3.4 that is untested
Change-Id: I7a32977ac01e1d2fc49cea750f37588debf17093
Adding constraints support to libraries is slightly more complex than
services as the libraries themselves are listed in upper-constraints.txt
which leads to errors that you can't install a specific version and a
constrained version.
This change adds constraints support by also adding a helper script to
edit the constraints to remove ec2-api.
Change-Id: I820a62970a8f870804a580b8dded0624c50b8b0a
Python 3.3 support would be dropped by
Infra team from mitaka,CI would no longer be testing it,
so projects should drop it also.
Change-Id: Ic33bd3539fd05df80eff0c251999ac397e079468
merged from Ifb5cb05b9cc2b8758d5a8e34f7792470a73d7c40
PEP-0274 introduced dict comprehensions to replace dict constructor
with a sequence of length-2 sequences, these are benefits copied
from [1]:
The dictionary constructor approach has two distinct disadvantages
from the proposed syntax though. First, it isn't as legible as a
dict comprehension. Second, it forces the programmer to create an
in-core list object first, which could be expensive.
Nova dropped python 2.6 support, we can leverage this now.
There is deep dive about PEP-0274[2] and basic tests about
performance[3].
Note: This commit doesn't handle dict constructor with kwagrs.
This commit also adds a hacking rule.
[1]http://legacy.python.org/dev/peps/pep-0274/
[2]http://doughellmann.com/2012/11/12/the-performance-impact-of-using-dict-instead-of-in-cpython-2-7-2.html
[3]http://paste.openstack.org/show/154798/
Change-Id: I1bc53e335b6c291da5c54f067f9fdfd5da6b2902
This code introduces standalone service which proxies its calls to
existing nova EC2-API.
All the code here except for the ec2api/api/proxy.py,
ec2api/api/ec2client.py and some util functions is taken from current
nova and unused functionality is cut of it.
The proxy.py and ec2client.py files implement the new code which
proxies incoming request (on port 8788) to original EC2 API in nova
on port 8773.
The result is transparently translated back to user.
Change-Id: I4cb84f833d7d4f0e379672710ed39562811d43e0