37 Commits

Author SHA1 Message Date
Matthew Treinish
a051c22ad0
Add tempest run command
This commit adds a new run command to the unified cli endpoint. The
intent here is for tempest to control it's own run story. This
implements the basic runner and selection functionality to use the
command, however it's not necessarily the end state of the command.
The functionality in this patch is just a starting point to add the
command and the basic functionality needed. It is starting with a
limited feature set with the intent to add additional, more complex
functionality in self contained patches after the command exists.

Co-Authored-by: David Paterson <davpat2112@yahoo.com>
Co-Authored-by: Stephen Lowrie <stephen.lowrie@rackspace.com>

Partially-Implements bp tempest-run-cmd

Depends-On: I09299043e536521d48dbe10632621138e3a366e0
Change-Id: I24588b5c00d005320e8719cf82b5dd95662572cf
2016-06-09 15:49:12 -04:00
step6829
80c14eca47 Centralized Workspaces
Create a consistent means for creation and management of Tempest
workspaces.

Creates a file located at ~/.tempest/workspaces.yaml which stores existing
workspaces.

Available subcommands: list, register, rename, move, remove

bp centralized-workspaces

Change-Id: I9595e3ba809e457951a0ffdf4b15f641f2fec4f4
2016-06-07 21:20:44 -05:00
Jenkins
bb3f88ffbc Merge "Update the home page" 2016-05-31 09:09:37 +00:00
Andrea Frittoli (andreaf)
db9672e347 Use tempest.lib code in tempest
Now that tempest_lib code is copied back into tempest, stop using
tempest_lib in tempest, and start using the copied code.

Remove the dependency to tempest_lib from requirements, and drop
the script to use tempest_lib in tempest. Add os-testr to the
test-requirements.

Partially implements bp tempest-lib-reintegration

Change-Id: I21ab5fe6349f72c98ac9f960a29bf62e813f8b1b
2016-02-24 10:43:59 -05:00
jinxingfang
ed45625ff0 Update the home page
www.openstack.org ---> http://docs.openstack.org/developer/tempest/

Change-Id: Ia520ad7ce08d4b8dae168140440cad2928647470
2016-02-05 18:34:25 +08:00
David Paterson
68b8b9d26f Migrate tempest-account-generator to new cliff cli framework
Leave existing endpoint for now as to not disrupt existing
workflows and deprecate next cycle.

Add deprication warning for old usage.

Change-Id: I9db27a853184126a7f751800bc8cacd7dd4e40fd
Implements: blueprint tempest-cli-improvements
2016-01-13 19:18:48 -08:00
David Paterson
e45aa842bc Migrate verify-tempest-config to new cliff cli framework
Leave existing endpoint for now as to not disrupt existing
workflows and deprecate next cycle.

Added deprecation message for old entry point.

Change-Id: If8afab441f51e5cf0f3bf1e2b95d76b2c1d0c474
Implements: blueprint tempest-cli-improvements
2016-01-11 14:43:20 -08:00
step6829
a9a664cde9 Add tempest-list-plugins
Add the tempest-list-plugins cmd.

bp list-plugins

Change-Id: If28311bc2e8d29a97ee46d7d73edba2a93aed7ce
2016-01-08 10:02:12 -06:00
Masayuki Igawa
e5c7028236 Add run_stress to cliff-based cli framework
Also disable ability to run script in stand-alone mode. So users need to
use 'tempest run-stress' instead.

Change-Id: I3effd1b71b2375f75a11f5924205741be0903361
Implements: blueprint tempest-cli-improvements
2015-12-07 11:47:46 +09:00
David Paterson
07661de3ae Add cleanup to cliff-based cli framework
Also disable ability to run script in stand-alone mode so
users will use 'tempest cleanup' instead.

Change-Id: I2119acd402b0985d4a81c85501ce7265f782d37b
Implements: blueprint tempest-cli-improvements
2015-11-04 06:57:42 -08:00
Matthew Treinish
f45ba2e604
Cleanup tempest docs a bit
This commit fixes a few things in the tempest docs. First it fixes all
of the sphinx warnings and enables fail on warn to ensure we're using
valid sphinx everywhere. It also adds a link from the configuration
guide to the sample config file.

Change-Id: I3ad645a6bbfa46b4498e1732410743e46d6eb0cb
2015-09-02 11:06:44 -04:00
Andrea Frittoli (andreaf)
871f5daa04 Use relative path in data_files in setup.cfg
The absolute path causes failures when installing in a virtual
environment, not having root privileges.

This change solves the installation in a virtual environment,
but it does not fix yet the tempest init workflow when installing
into a virtual environment.

Partially-fixes bug #1480389

Change-Id: Iddefb8db77ffe35a84fb35b6f9e7e823de4ab45f
2015-07-31 17:55:38 +01:00
Matthew Treinish
f610aca040
Add tempest init command to tempest cli
This commit adds a new 'tempest init' command to the unified cli.
This command tempest init will be the first step of the new workflow
for running tempest. It is used to initilize a local working directory
to run tempest from. The idea being you can setup different local
working dirs for different tempest envs to test against several
different clouds.

The basic idea for this new workflow after installing tempest is
something like:

 1. mkdir tempest-newcloud
 2. cd tempest-newcloud
 3. tempest init
 4. edit local config file
 5. tempest run

The next step after this is to start working on the 'tempest run'
command. (which will include the hooks for the tempest plugin
interface) But, until that is added a test runner can be called
directly inside a local tempest working directory.

Partially Implements bp tempest-cli-improvements

Change-Id: I572267e61ba8ca86f92299e174864a7a89597207
2015-07-27 14:21:54 -04:00
Matthew Treinish
d450a19b3a Enable tempest install to setup a config dir
This commit adds the necessary bits to tempest's setup.cfg file to
instruct pbr on how to make sure that the sample config files and
a /etc/tempest dir get setup when installing tempest. In the new
cli workflow it is expected that by default /etc/tempest will exist
as a source for local working dir configs.

Partially implements: bp tempest-cli-improvements

Change-Id: I2bf93f6789601caaebdfb85ac2b9f34b82f87980
2015-04-12 07:52:34 -04:00
David Paterson
4af1d02746
Add cliff based common cli entrypoint
This commit adds the basic framework to tempest for a unified modular
CLI endpoint using cliff. As of right now this entry-point doesn't
really do anything but exist. It will be expanded in the future first
all the existing commands will be refactored to be used through this.
Secondly a new interface and workflow for running tempest will be
created on top of this.

Co-Authored-By: Matthew Treinish <mtreinish@kortar.org>

Change-Id: I1ff8d22c120dbc81d812f1f107db7c2d9b15a505
Implements: blueprint tempest-cli-improvements
2015-07-01 11:50:20 -04:00
Jenkins
f728beca05 Merge "Tool for generation user accounts from spec" 2015-05-20 12:21:57 +00:00
sslypushenko
0de7d05963 Tool for generation user accounts from spec
Implemented:
https://etherpad.openstack.org/p/accounts-yaml-generation
This tool can be used for creating user accounts for
tempest runs in concurrency.

Basic usage:
    ./account_generator.py
	--tag foo
        -c tempest.conf
	--os-username <admin-name>
	--os-password <admin-password>
	--os-tenant-name <admin-tenant>
	-r <concurrency count>
	--with-admin (optional)
	accounts.yaml

Change-Id: I3c313787b0f6f69edcc5ad16c6c186226f619692
2015-05-15 17:39:09 +03:00
Matthew Treinish
3460aaaf3e
Add py34 to readme, pkg metadata, and envlist
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
2015-05-13 10:17:58 -04:00
Matthew Treinish
d96a6b04ea
Remove version string from the setup.cfg
PBR handles setting the version based on the git tags, so we don't need
to do this in the setup.cfg anymore.

Change-Id: I3c12f54682b58c9eea5b40fa2c34979775c0b827
2015-04-30 18:54:50 -04:00
Matthew Treinish
e869ff3d32 Bump working version to 4
With the tempest-3 tag being published to signify the end of xml
testing in tempest we need to bump the working version to tempest-4
to indicate that the next tag will be 4.

Change-Id: I1fd12cb3e20692c60daa4eb19c6d876b00318d56
2014-12-11 11:46:21 -05:00
Matthew Treinish
66d8831d17 Bump version string to coincide with kilo release
The tempest-2 tag has been pushed to mark the start of support for the
kilo release. This commit bumps the version to 3 to show the current
working tag number. Tempest-3 when it is tagged after the kilo release
will mark support for icehouse, juno, kilo, and the 'L' release based
on the current stable maintenance schedule.

Change-Id: If401356d441ef3dc82a5b8069168c4dd71c8b3d8
2014-10-22 14:44:18 +00:00
Jon Grimm
270bd7f8ce Move tempest to oslo-config-generator
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
2014-10-16 16:06:43 +00:00
David Paterson
ce781498cf Add tempest post-run cleanup script
Implemented all features defined in blueprint.

Change-Id: If3c9b82f85095eeb22bbf32841be534024213567
Implements: blueprint post-run-cleanup
2014-09-19 01:58:58 -04:00
Matthew Treinish
55e29b457c Make run_stress.py script an entry point
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
2014-06-09 15:31:42 +00:00
Sean Dague
655e0afa38 javelin 2
Create a new tool which can create and verify a set of resources to
be used in place of the existing javelin tooling in grename.

This currently can create:
  tenants, users, objects, images, servers

And can verfiy:
  users, objects, servers

A sample resources.yaml file is included.

Follow on patches will handle the additional create / verify, as well
as destroy operations, and unit tests to meta test the script beyond
the normal javelin runs. However at this point it is useful enough to
consider adding to Tempest to being putting this into grenade.

Part of blueprint:javelin2

Change-Id: I33f1901802c92a2eda2eeb2c225bc7f60d1a186c
2014-05-29 12:15:23 -04:00
Matthew Treinish
aa7eb963cb Update version string to follow new convention
Since adopting branchless we've moved to a different "release" model
were we just tag the tree at set points. We're using an incrementing
integer to name these tags. Since the first tag, 1 was pushed to
correspond with the start of branchless tempest. The current working
tag is 2.

Change-Id: I93be84da9bf2a09e9ca9c2f4231f1a4a75da3af9
2014-05-23 14:56:04 -04:00
Matthew Treinish
f8b816af07 Add cmd entry point for verify_tempest_config
This commit moves the verify_tempest_config script from the tools dir
to tempest.cmd and adds a pbr entry point for the script. This means
that the script will in effect be a packaged binary for tempest.

Partially implements bp config-verification

Change-Id: I75b9743a8117d55c6c445db05eb39404b5708624
2014-04-30 17:36:12 +00:00
Masayuki Igawa
cde028614a Fix author information
I have checked the author of other projects. Most of them are just
'OpenStack'. And OpenStack QA is not suitable for the author because
many development members contribute to Tempest. And author-email is not
proper email address recently. It is deprecated now.

Change-Id: I0f7405d107bf40d4781acb0e4b4a5db20d7606e4
2014-02-24 19:19:22 +09:00
Sascha Peilicke
39f82e85ba Support building wheels (PEP-427)
Universal is used to identify pure-Python module(by bdist_wheel). For
these, it is sufficient to build a wheel with _any_ Python ABI version
and publish that to PyPI (by whatever means).

Change-Id: Ib15e61ce3edf6f2694795167c85d40457bf11292
2014-02-07 12:35:35 +01:00
Matthew Treinish
271139aa7f Update to latest pbr
This commit moves switches tempest from the d2to1 version of pbr and
move to the latest version of pbr. However, there is a bug with
build_spinx so it doesn't work with a doc version set so that section
is removed from the doc conf.py.

Change-Id: I4fe14eb2b2e81132f8fa99936a031176b38c437b
2013-10-24 14:21:19 +00:00
Matthew Treinish
c122f1ef43 Set tempest version for icehouse
This commit bumps the version number from havana: 2013.2 to icehouse:
2014.1

Change-Id: I7fe1d60c9dfcbfd8c43880c66f94173c9264fb8a
2013-10-17 15:05:41 +00:00
Matthew Treinish
bfcc71228d Remove bin/tempest script
The bin/tempest script was just an out of date copy of run_tests.sh.
There is no reason to keep 2 copies of the same script around so this
commit just removes the copy in bin.

Change-Id: I91bacade03d0b503d9c729b76048aa67f5f209fa
2013-09-12 14:15:30 +00:00
Attila Fazekas
6c7e8d9a23 Generate temepst API doc from source
This change adds an rst file for every tempest module, with the
'automodule' macro.

The root of the API documetation will be in the 'API and test cases'
section on the main page.

https://review.openstack.org/39427

Change-Id: I4065a24328dc85bb158b15bdfddb10ee0839916b
2013-08-01 23:14:16 +00:00
Sean Dague
b56052b475 initial seed for tempest doc directory
This is a first bit of experiment to get a doc tree for tempest
that will publish our doc content to the web as part of a larger
QA doc guide.

Update some of the base READMEs to be a little more accurate,
now that we're going to be pushing them to the web.

Added tox [venv] to ensure that docs get built

Change-Id: Id54e8fbc1d884525087630106e17b37dc1206cc9
2013-05-22 21:06:55 -04:00
Monty Taylor
6437501c70 Migrate to pbr from openstack.common.setup.
Change-Id: Ia85bda060a6c62c721b9104b2bd52d3fe1673367
2013-05-01 14:04:27 -04:00
Monty Taylor
ab05d24819 Remove use of detailed-errors nose plugin
This conflicts with testtools and causes nose failures leading to lost
traceback information.

Part of blueprint grizzly/testtools

Change-Id: I131da4d2d2a965a4c4286c493f05980f27acd78d
2013-01-31 10:55:54 +11:00
Jay Pipes
f38eaace9c Refactor Tempest to be parallel-test friendly
* Allows a tenant/user to be created by the base test
  class, allowing isolation of the tests. The base
  compute test case class now controls what users
  and tenants get created for the test case
* Moves identity admin stuff into appropriate directory
* Removes _multiprocess_shared_ to force setUpClass to
  run for every test case.
* Adds setup.cfg for use with openstack.nose_plugin
* run_test.sh refactoring to make running smoketests easier

Change-Id: I3ea4c44a8c194d7ae2833b5443df7678924bcd5d
2012-07-02 11:05:21 -04:00