Make the docs tox environment use doc/requirements.
For pep8, just install the linters and skip installing the package.
Doing this but leaving in the constraints file keeps us in line with
upper-constraints on linters but lets our pep8 envs be tiny.
Finally, remove the doc8 line-length setting. It's not a big enough
difference to warrant changing it.
Change-Id: I3df81474fb52e2587d22c7789b6b553139eb37f2
split docs requirements out into doc/requirements.txt and change the
helper tox docs env to be what the gate is going to be running.
As part of doing this, we can re-enable the enforcer code. However, it
doesn't seem to be working, so leave it as info rather than warn for
now.
Set the jobs and the tox env to use python3. The enforcer module wants
to use ifilterfalse/filterfalse which have different names in 2 vs. 3.
There's no reason to NOT run sphinx in python3.
Change-Id: I358db11b130b909084f7a9e8925477e931d87117
'pip install -U' ugrades specified packages, this is not necessary
since we use constraints, remove the parameter '-U' from the line.
With tools/tox_install.sh - which a previous change of mine removed -
the -U was not harmful, but with the current set up, it might cause
upgrades, so remove it.
Change-Id: I4270610053e3c541e57e2e539fbd56ffc1c266f0
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: I9ee471b253ec104d2b93829be3644ce7aef06876
The basepython line was causing the py35 tests to actually run under
python2. Whoops.
It was doing the same to pypy. Add pypy to bindep with the pypy tag.
Cryptography and the version of pypi in xenial are incompatible, so
update the pypy job to run on fedora-26 instead, which has a new enough
pypy.
Shift the line so that it only applies to functional and ansible tests,
since that's where it's used.
Depends-On: I7c22e23b73ddfc18ee28e87d34d1988417b49ccb
Change-Id: Ia27a0aa0633dcf48c1bab06b3c803f996eae9efa
This sucks in the git history for both projects, then moves their files
in place. It should not introduce any behavior changes to any of the
existing openstacksdk code, nor to openstack.config and openstack.cloud
- other than the name change.
TODO(shade) comments have been left indicating places where further
integration work should be done.
It should not be assumed that these are the final places for either to
live. This is just about getting them in-tree so we can work with them.
The enforcer code for reasons surpassing understanding does not work
with python setup.py build_sphinx but it does work with sphinx-build
(what?) For now turn it off. We can turn it back on once the build
sphinx job is migrated to the new PTI.
Change-Id: I9523e4e281285360c61e9e0456a8e07b7ac1243c
doc8 is a linter for documents and used in openstack-manuals.
It is better to enforce document linters for simple checking.
This change is to add doc8 in tox file and fix line too long
in some files.
The current rules are as bellow:
- invalid rst format - D000
- lines should not be longer than 79 characters - D001
- RST exception: line with no whitespace except in the beginning
- RST exception: lines with http or https urls
- RST exception: literal blocks
- RST exception: rst target directives
- no trailing whitespace - D002
- no tabulation for indentation - D003
- no carriage returns (use unix newlines) - D004
- no newline at end of file - D005
Change-Id: I5b409fbfd95e05921310c6ecf4afea0220fb0bf0
The gating on python 3.4 is restricted to <= Mitaka. This is due to
the change from Ubuntu Trusty to Xenial, where only python3.5 is
available. There is no need to continue to keep these settings.
Change-Id: If2aba189704c310ea4fcb805589e2732a525e992
Now that there is a passing gate job, we can claim
support for Python 3.5 in the classifier.
This patch also adds the convenience py35 venv.
Change-Id: I5c5cdf59c32052e051fe3c586074aec7c5f2347f
A configuration error prevents the successful creation of code
coverage. This patch corrects the .coveragerc omit setup and the
tox package name generation.
Closes-Bug: 1489164
Change-Id: I172708fe9048ed6208eb404974a5fa2e42bb810a
The beginning of the compute user guide.
This also begins the simplification of the examples, makes them
more specific, and adds testing.
Change-Id: Ic4bac2fe30601c196b03ce73b2dd04a916231f33
Partial-Bug: #1487269
Partial-Bug: #1419012
Partial-Bug: #1466180
Previously, the functional tests would run using the `python` in your
environment, which was 3 for myself and 2 for most others. We should
really be testing on both versions as we do for unit tests. A change to
the gate will follow this.
Change-Id: I2bd2664018c135593a96fd6ba5741279da772e76
Closes-Bug: 1489935
From lifeless: pbr reflects the package dependencies from
requirements.txt into the sdist that tox builds.
Change-Id: I0590548763d27a8806cd1e0e5c3f2df95cda2bc7
This temporarily comments out httpretty-using tests in object_store so
that flakiness in py34 test setups in CI stop getting in the way. Once
https://review.openstack.org/#/c/178302/ lands the uncommented tests can
just be deleted and be written as any other tests are.
Change-Id: Ica348ce1f7640aa4bae09c68246e28ba71b42662
Just implementing a single functional test to start things off.
This test introduces a new test dependency on os-client-config.
os-client-config is used to configure the SDK to run its functional test
on a particular cloud.
To run the functional tests do a
tox -e functional
Unit tests continue to be run the same way as always.
Change-Id: Id1e8233c5e366e6ec864fb435f7f3cbf290ffae0
Although we're removing httpretty, it seems like Gerrit is no longer
honoring our fixgates.txt file, so I've included httpretty back in
test-requirements now that the versions we need to skip are skipped
there.
Change-Id: I246fcbc40570331cce1bff8dc5717fe3bacb5e40
Recent pbrs support a coverage-package-name argument which allows you to
explicitly specify the package name to test coverage of. By default it
takes the project name (python-openstacksdk) and splits the "python-"
prefix off, leaving it to check coverage of the nonexistent
"openstacksdk" package. After this, "tox -e cover html" works and drops
the results in a cover/ folder under root.
Change-Id: I55e3fb274158aa37938329f2153c5c9597e64915
If py26 tests are run first, there is some incompatibility in the
.testrepository that breaks several tests. To get around this, you
need to run the py33 tests first. This change was made over in the
cliff project.
Before:
(.venv)terry@brat:~/hp/sdk$ rm -rf .testrepository/
(.venv)terry@brat:~/hp/sdk$ tox
...
py26: commands succeeded
py27: commands succeeded
ERROR: py33: commands failed
ERROR: py34: commands failed
ERROR: pypy: commands failed
pep8: commands succeeded
After:
(.venv)terry@brat:~/hp/sdk$ rm -rf .testrepository/
(.venv)terry@brat:~/hp/sdk$ tox
...
py33: commands succeeded
py34: commands succeeded
py26: commands succeeded
py27: commands succeeded
pypy: commands succeeded
pep8: commands succeeded
congratulations :)
(.venv)terry@brat:~/hp/sdk$
Change-Id: I64925097ce003659c4daa0e105bd06dc30726921