The Stein supported runtimes proposal [1] has chosen py36 over py35
due to the communities move to testing on Ubuntu 18.04, where py36
is the default runtime. We update tox.ini and setup.cfg accordingly.
We also add a py37 option to the tox.ini to facilitate future-looking
tests per the resolution on keeping up with Python 3 releases [2].
The py35 option will eventually need to be removed from tox.ini, but
this keeps it for now in order to allow time for folks to transition.
[1] https://review.openstack.org/611080
[2] https://review.openstack.org/613145
Change-Id: Id77fbd969bee5a6f3636be13362a2b89cb5888e8
Our tox.ini was trying to use find but failing because it was not
added to whitelist_externals. Rather than correct that, we can
remove it entirely by adjusting tox to no longer create '.pyc'
files, so we no longer have to delete them.
Nova previously did this [1] to improve performance, but then had
to revert it [2] because of a tox bug. That bug has since been
fixed [3], so we should be ok to do this.
[1] 0d6d1616b9a05f1c3e1e34cb235fee327196d423
[2] 233160644f4f0a17177fffe8a1e6db1341e61ad4
[3] https://review.openstack.org/#/c/582392/1/tox.ini@28
Change-Id: I11cbf81160ba2eeefcce19ed25930c39e17449b7
The coverage job was only looking at nova, where we have very little
code. This updates it to also look at nova_powervm.
Change-Id: Ibf174024934f72edab9835e8a594d7fc6e580039
We were using the lower-constraints.txt file from nova, but this
was masking problems. The check job doesn't seem to work properly
when the lower-constraints.txt file is in a different project, not
running at least some of its tests. This was seen when copying the
same file into nova-powervm cause the job to start complaining.
This copies nova's lower-constraints.txt file into nova-powervm
and then addresses the aforementioned issues by:
1) removing amqp from requirements.txt. We do not appear to
really require this.
2) adding bashate to lower-constraints.txt. Nova does not require
this but we do.
3) adding python-swiftclient to lower-constraints.txt. Nova does not
require this but we do. Also moved python-swiftclient from
test-requirements.txt to requirements.txt since our usage is not
limited to tests.
4) removing python-subunit from test-requirements.txt. We do not
appear to really require this.
Change-Id: I100181821ed4ffe622ed5ebeff403093e9cc32b8
Update the state of the art build process (TM), featuring an all new
theme, new requirements and much more.
Change-Id: I5d8724786361a820016cc02d8985f2438a1f9d57
Signed-off-by: Stephen Finucane <stephenfin@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 can't set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36 due to https://github.com/tox-dev/tox/issues/425
Change-Id: I9eca1cc89f809a219636278bb72b65d61657db75
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Add openstack-tox-lower-constraints job to the zuul configuration.
The nova-powervm project uses Nova's lower-constraints.txt file; it
doesn't need its own.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: I637abb9624bf237ef2e1e70bf40bb1d64e77d354
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
We do not need tox_install.sh, pip can handle constraints itself
and install the project correctly. Thus update tox.ini and remove
the now obsolete tools/tox_install.sh file.
This follows https://review.openstack.org/#/c/508061 to remove
tools/tox_install.sh.
Change-Id: I05b7525dc0c39e703e1e8fa091d77c87d338673b
tox -re pep8 isn't working for systems that use python 3. Force tox
to use python2.7 for pep8.
Change-Id: I61468c3e3ab673dc84248dc72d1085c83ee57bc0
Closes-Bug: #1708163
Because nova-powervm follows nova at a development level, we have to
install the latest master branch, so we can't put nova in our
[test-]requirements.txt. Instead, we put it in our tox.ini testenv
deps as a git clone and install. This pulls in nova's requirements.txt,
but not its test-requirements.txt.
Change [1] moved nova's wsgi_intercept dependency from requirements.txt
to test-requirements.txt; but this didn't cause problems yet because
wsgi_intercept wasn't actually being imported in a path that mattered to
nova-powervm testing until [2].
This change set explicitly adds nova's test-requirements.txt, pulled
from the master branch, to the nova-powervm testenv deps.
[1] I0d8325e12ed7d5d022877782d6aa4ba4055c30db
[2] I03b3abea152d45575ac6dde22ccbe32b6acb4646
Change-Id: I9f4263f22fb73bf694bf0d2f766d1b921c1f2704
Closes-Bug: #1707951
With the recent addition of pypowervm to upper-constraints, installs
of nova-powervm are now by default enforcing the version set there.
Since the master branch of nova-powervm depends on the develop
version of pypowervm, this causes installs to fail.
This changeset adds a wrapper script (tox_install.sh) that edits
the upper-constraints file and replaces the pypowervm version pin
then sets pypowervm to be installed from source instead.
Change-Id: Id8e117bc6a7b1b224a9e86e9b29821627adb51db
The tox.ini needs to make use of the upper constraints. Failure to do
so is causing us to hit known issues with newer versions of packages.
Change-Id: I065adf88c599ad91af3f29d02ccd225f5d07ffa9
Closes-Bug: 1637938
This change updates the code to comply with a new pep8 rule to defer the
string concatenation to the logger instead of doing it inline.
It also adds an ignore rule for conf options being outside of nova.conf.
Given that we are an out-of-tree driver, we can not put our conf options
in tree. This is a temporary work around until the powervm driver is in
tree.
Change-Id: I8fe77e8250a2b59ae842cdacfa48baf66356ee50
Closes-Bug: #1632441
Nova has a bash script that uses the ostestr package to format
the output from tox in a 'pretty' format. It makes it much more
readable. pretty_tox.sh is pulled from Nova as-is and enabled
in tox.ini.
Change-Id: Ib90791b1333044c98e20444953d7ccab21cd62ba
This change set brings our flake8 ignore rules in line with the core
nova team. nova-powervm should always be a minimal subset of flake8
ignore rules to the broader nova project. This change set removes some
old ignore rules that nova had, that they have removed in the past
couple of months.
Change-Id: I82cdcbc79dac7254f768e110d48c66d63274fc93
The master branch of nova-powervm should be paired to the 'develop'
branch of pypowervm.
Other stable branches (or release candidates) will point to version
levels that are published to PyPi (or to stable branches).
Change-Id: I963e20da759eeede6b1f115d15fdc276b3555538
Add support for installing nova powervm through the devstack plugins
infrastructure. This allows you to simply enable the plugin in a
devstack localrc, provide any non-default config, and run stack.sh
to configure/install it.
- Added plugin files
- Added README and example config
- Added bashate to tox test environments for scripts
Change-Id: I3dfed189e60b0aa63fc9029e3f56f2d8b7785bd3
Since nova-powervm is not in tree with nova, it can't use nova's
translation domain. This change introduces i18n.py and the
nova-powervm domain.
Change-Id: I9d3565e6ad1737629350fe02c7a41d56b0cf401a
- Add base support for devref generation to the project
- Add basic level of documentation, with TODOs for future updates
- Generate as part of tox run
Change-Id: Ic7a07ba7de0090383c652503453bafcd422a3eaa
Nova is working on support for Python 3.4. via
https://blueprints.launchpad.net/nova/+spec/nova-python3
This changeset moves from py33 to py34 in the tox.ini file to be
inline with Nova. It also incorporates changes produced from the
'sixer' tool run with 'all'.
sixer can be found at:
https://pypi.python.org/pypi/sixer
At the present time, the py34 environment does not run
successfully because it pulls in portions of Nova that have not
yet been fully converted to Python 3.
Change-Id: If84df3017a722d0ad3546e81f97e67f1a07a763f
The swap to oslo for concurrency actually stopped the tests from running
properly. This swaps back so that the tests are run once again.
Change-Id: I3ce060a2183820244aa5b4749e97c17c04a498a3
This change set suppoprts bringing in the python PowerVM REST API
library for initial use within nova-powervm
Change-Id: Ie8d53f86bd3faa9b3819adbb9b9f4f8d3e97bfd4
Change nova-powervm to nova_powervm so 'cover' works.
Added a test case to improve coverage.
Removed pypy from environment list.
Change-Id: I337f2e8b762349f16ec8e6cd9489688970969486
Initial driver that wraps the 'fake' implementation for PowerVM.
Also updates the tox.ini to match more of the pep8 rules that Nova
utilizes.
Provides an initial test case to validate that the driver can be
initialized. This requires updates to the test framework to pull
in further dependencies of Nova.
Change-Id: I59407d14531635be567d2eea5d7e26ea895b5093
Initial work to enable the Nova PowerVM project in git.
The work done here provides:
- .gitignore - Indicate which files not to track within Git.
- .gitreview - Input to the git-review command on how to send to
Gerrit.
- .testr.conf - Conf file input for the testr command (UT)
- CONTRIBUTING.rst - Information on how to contribute.
- HACKING.rst - Information on what needs to be done for updates.
- LICENSE - The license for the project
- README.rst - Information on what this project is. Currently this is
the blueprint.
- openstack-common.conf - Required openstack configuration for all
projects
- setup.cfg - Input to the setup.py on how to execute certain actions.
- setup.py - Used for build of the project.
- requirements.txt - Required packages (and levels) to run the code.
- test-requirements.txt - Required packages (and levels) in addition
to the requirements, that indicates what is
needed to run the UT.
- tox.ini - The input for the tox commands.
In addition, a base set of packages for the agent and unit tests were
loaded in.
Change-Id: Iaa186e449e7e0f75dc06a033d024a23d7faa0267