If site-packages is deactivated tempest plugins aren't visible.
Create a new tox entry point instead of activating it globally.
Change-Id: If6cd204d4c1e64cf7bcf79bd5d32d3c10a1b2559
Closes-bug: #1478559
When we run tempest on the machine behind proxy,the pip command failed to
connect to pypi.python.org to download packages.
Fix it by add another option "passenv" to [testenv] section.
Change-Id: Iedc40a2266be59a2298d5909486a1439f2757b8c
Closes-Bug: #1463978
Tox 2.0 introduced env variable separation, meaning that env vars set
in the env calling tox will not automatically be in the test env. This
breaks some assumptions we have in tempest. This commit adds all the
env vars which are used by testr or tempest directly for running tests
in the hope of making things work on tox 2.0 and older versions.
Change-Id: Icfe4bb5df0e48cbc9fcdbc602656672295d1887e
This commit adds references explaining the current state of python 3.4
and tempest to the readme, pkg metadata, and adds an etry to the tox
envlist for running the unit tests on python 3.4.
Change-Id: I9c1e3cdf53dbae723a9fee67ad96932709d2305f
The cli tests have been marked for removal for ~6 months and the
framework was the first thing included in tempest lib. There has
been more than enough time for all the projects to pick this up
in the client repos. So let's remove it all!
As part of this a couple of missing entries for tempest's
requirements.txt were found. These dependencies were being installed
by the clients so the fact they were missing was never noticed prior
to this. This commit also adds these missing entries back into the
requirements file.
Change-Id: I4f8638f1c048bbdb598dd181f4af272ef9923806
The decision to include all of scenario by default makes for an
extremely heavy test of tests in smoke, we should instead only include
specific scenario tests that expose some basic sanity
checking. Advanced scenario tests should be dropped from this list.
This change means we no longer have to exclude 'slow' tests, as we'll
just tag the right tests with smoke.
Change-Id: I34aa8aa9274e02bb68f62863d64c47ba9916f2e4
Adds uuid4 as a decorator of the form:
@test.idempotent_id('12345678-1234-1234-1234-123456789abc')
to every test in the Tempest tree. Includes a gate check to
ensure the existence and uniqueness of the ids.
Modify check tool to ignore Tempest unit tests.
Change-Id: I19e3c7dd555a3ea09d585fb9091c357a300e6559
Co-Authored-By: Sergey Slipushenko <sslypushenko@mirantis.com>
Implements: bp test-uuid
This patch adds a new tool to check for existence and uniqueness
of UUIDs across Tempest or any other test repository based on
Tempest. The tool also includes an option to automatically tag
a test repository with UUIDs if they don't exist. The tool
will be used in the gate to ensure UUID existence.
Change-Id: I25aa83c7836f5a607af2aaa4bf862fa72766f799
Co-Authored-By: Sergey Slipushenko <sslypushenko@mirantis.com>
Partially-Implements: bp test-uuid
Fully decouple the versions needed for tempest from the underlying
system. This will help make it possible to pin library versions on
stable branches to the library version used when the branch was
cut, while allowing master global requirements to move beyond that
version.
Note: We previously enabled sitepackages everywhere to avoid
recompiling indirect dependencies that were pulled in via the
pythonclients. To address this we were working on removing the CLI tests
from tempest.
Change-Id: I3b355fb592dbbd38cb6805ec413e02644088b088
* tox.ini: If setuptools is declared as a dependency, even
transitively, it can trigger a race in some versions of pip when
called with -U wherein pip removes setuptools in preparation for
upgrading it, and then proceeds to install something else using
setuptools. Work around this behavior by upgrading setuptools within
the virtualenv in advance.
Change-Id: I6d9bf61c1ce41e46ff6f621bfa88d511f6c16120
Related-Bug: #1405579
It's extremely easy for incorrect local results to happen if a file
has been moved or deleted in an upstream pull. Add the rm pyc cantrip
to ensure local testing matches what a clean upstream is going to be
like as much as possible.
Change-Id: Iecf18d7c2310918ec90c14c64cd3083e46459980
The default for tempest in .testr.conf is 500s. This was too short for
the heat slow tests so the time for that was increased to 1200. This
change is to a periodic job so if we need to it can be increased more
in the future.
Change-Id: If27ddef9865c54b997130c707382d2014d82e0a6
Tempest has moved to new oslo-config-generator and this bug
workaround is no longer needed.
Change-Id: I50ffdcbc8a8f4830ba9c274af4c908e96467dad5
Closes-Bug: 1365136
Also fixes tempest reported bug with old generator in oslo-incubator,
when identical options are registered in different groups.
Change-Id: I274f48503c1b61ca09cabc8d8c50245ba1059943
Closes-bug: 1282887
This commit creates a separate base env for tempest tests and
tempest's unit tests. However, to keep the same interface the tempest
env is setup by overloading the testenv using substitution from a
common base section.
As part of this internal reorganization in the tox.ini several other
things are cleaned up or removed. Usless or duplicate job definitions
are removed. The unit tests are switched to pretty_tox. Previously
they were run without any output which made it difficult to figure out
exactly what was running. Additionally, this removes the unnecessary
regex filter on the unit test job. The unit tests use a different
discovery path so there is no need to also filter it on the same path
this will allow the use of more specific regexes with tox to filter
tests.
Change-Id: I996d81dec2739bbe907f5fe87a335994c01697b3
Stop triggering triggering a “not installed in virtualenv” every time
bash is called. Since we use this in all tempest based jobs, we have
these unnecessary warnings all over the place.
Change-Id: I8af53c0241dbcd656c274944338384be0f2f250d
We've ironed out remaining issues that crop up when running
with a random seed. This updates tox.ini to revert to the default
behavior of running with PYTHONHASHSEED=random. The pep8 check
continues to run with PYTHONHASHSEED=0 to workaround oslo issues
around config value ordering in the check_uptodate.sh test.
Change-Id: Ifa0dba8c3970fc676d374f33c129ef0f9d526c94
To run the tempest unit tests with coverage enabled the coverage
module needs to be installed. This requirement is properly listed in
test-requirements.txt, however the coverage job definition wasn't
installing coverage. This commit fixes this oversight by adding the
test-requirements file as a dependency for the job.
Change-Id: Ic443c6c4a3166e6b198cbe2af0a77ff2f0a38e83
This removes the setenv override and sets the required
PYTHONHASHSEED=0 for the 'all' tox target, which devstack-vm-gate.sh
ends up calling for the current Ironic job.
Change-Id: Icc6a1cae1e49140c4e4648f6c75ad415f92479ce
Closes-bug: #1359929
This commit disables the H305 rule because it is inconsistent between
python releases. Additionally while the logical grouping is a good
thing in most cases it can be excessive to enforce sometimes. Having
reviewers attempt to catch it in most cases should be sufficient.
Change-Id: I7530fe2295c4260a20f8cdd1f853611a9a6b2f99
After bumping the hacking version to the 0.9.x series ignores were
added for several rules. This commit fixes the violations for a subset
of these rules and re-enables the checks.
Change-Id: Iaff25fc9e2ecfad0c0574b39ddce0c5188d6c31f
After bumping the hacking version to the 0.9.x series ignores were
added for several rules. This commit fixes the violations for a subset
of these rules and re-enables the checks.
E123 is ignored because this rule is ignored in the default pep8 by
default, due to a lack of consensus around it.
Change-Id: I8f14cd2ca6afc38d3fe8ee758272071111022896
New tox (>=1.7.0) sets a random python hash seed by default. This is
generally good for testing because it will help keep projects working
regardless of the hash seed, but tempest unittests don't currently
pass a with a random hash seed so set it to the python default seed.
This change will allow us to use new tox again and remove the
restriction on tox<=1.6.1 to run unittests.
Change-Id: Ib54364877a251db48c54dfdc43c503281ea1f04a
This commit removes the generate_sample wrapper script and adds an
rc file for the config generator to specify the alternate path.
This makes console messages from the generator tooling point
consistent with what is actually being used. Before because a wrapper
was used error messages would recommend running the incorrect tool.
Change-Id: I0ac792454777af6e3f1d718836031f9a14850229
After bumping the hacking version to the 0.9.x series ignores were
added for several rules. This commit fixes the violations for a subset
of these rules and re-enables the checks.
Change-Id: If2445c395d481f3c5f6426a471da4ec8afb553f0
After bumping the hacking version to the 0.9.x series ignores were
added for several rules. This commit fixes the violations for a subset
of these rules and re-enables the checks.
Change-Id: I8cc92a5de5acf43a2143751851cf6fddab401ba4
Hacking 0.9.0 had a minor bug so require 0.9.1 or higher.
In order to keep this patch to just a requirements bump, ignore new and
stricter hacking rules that are being triggered. Fixing up the code and
turning these on is out of scope of this patch and is for future patches.
Change-Id: Iafbd4adae8c6b446d53b62dfc490eab8e76a43ac
With change f8b816af0751b10cc20b0ab456ca334150fcdf5f we started
packaging binaries using pbr entry points. The run_stress.py script
previously lived in tempest.stress, howver since it is intended to be
run as a binary the proper place for it is now tempest.cmd and using
an entry-point it will be easier to run it outside of the tempest
tree.
Change-Id: I96b2c7915875f4f9d7869b8728bf2c6f6ccbeec9
This patch enables the use of the H302 hacking rule everywhere. With
one exception of the client class imports in clients.py, this
is intentionally ignored.
Change-Id: Ia0ef5e44a411ccd6e6c12f9cf64427a96e021b47
This commit adds import exceptions to the service client imports.
The service clients are imported at the class level and it would be
a major effort to change this. However, we want to be enforcing H302
everywhere else. This commit adds an exception to allow importing the
service clients as classes.
Change-Id: Ife74539fe04e97740e45325140f407fd7476e1c7
The heat slow job was running it's tests serially. This patch changes
that so the tests will run in parallel to enable faster execution.
Change-Id: I55fe85952c13b2b40b2b9f5b4dd6073b21b7a3ea
The all entry is usable for running custom set of test
cases selected by a regexp in similar venv
as the gate uses with tox -eall.
The pretty tox helps you to see some basic results before,
the test suite finished.
Change-Id: I553e450ad0a59308be0bfa24aa66877cdb6667da
This reverts commit c81568fa85620746534331cd820b0bb399719149.
After learning what I learned about how sitepackages works, this
wasn't really a sane change. Revert back to old behavior.
Change-Id: I8079a0f4d9e0bc2e51a743d4f23cf98d4840a3ab
This commit removes all the references to nose in the tempest tree.
Moving forward trying to support nose which doesn't support some of the
features we rely on in tempest is increasingly difficult. Please refer
to this thread:
http://lists.openstack.org/pipermail/openstack-dev/2014-January/024673.html
for a more detailed explanation and the discussion regarding this.
Change-Id: I3dee566d33efe1fb7808817b885d1680736abe6a