Add missed steps in the installation process for running tests. Mongodb and libmysqlclient-dev packages need to be installed for Ubuntu12.04 and mongodb and mariadb-devel.x86_64 (or .i386) need to be installed on Fedora20. This information has been added to: doc/source/contriburing/source.rst. DocImpact Closes-Bug: #1368974 Change-Id: I163879498b37866c8679b7f69ba60abaacc2e017
3.3 KiB
Working with the Source
Setting up a Development Sandbox
Set up a server or virtual machine to run OpenStack using devstack.
Clone the ceilometer project to the machine:
$ cd /opt/stack $ git clone https://git.openstack.org/openstack/ceilometer $ cd ./ceilometerOnce this is done, you need to setup the review process:
$ git remote add gerrit ssh://<username>@review.openstack.org:29418/openstack/ceilometer.gitIf you are preparing a patch, create a topic branch and switch to it before making any changes:
$ git checkout -b TOPIC-BRANCH
Running the Tests
Ceilometer includes an extensive set of automated unit tests which are run through tox.
Install
tox:$ sudo pip install toxOn Ubuntu install
mongodbandlibmysqlclient-devpackages:$ sudo apt-get install mongodb $ sudo apt-get install libmysqlclient-devFor Fedora20 there is no
libmysqlclient-devpackage, so you’ll need to installmariadb-devel.x86-64(ormariadb-devel.i386) instead:$ sudo yum install mongodb $ sudo yum install mariadb-devel.x86_64Install the test dependencies:
$ sudo pip install -r /opt/stack/ceilometer/test-requirements.txtRun the unit and code-style tests:
$ cd /opt/stack/ceilometer $ tox -e py27,pep8As tox is a wrapper around testr, it also accepts the same flags as testr. See the testr documentation for details about these additional flags.
Use a double hyphen to pass options to testr. For example, to run only tests under tests/api/v2:
$ tox -e py27 -- api.v2To debug tests (ie. break into pdb debugger), you can use ''debug'' tox environment. Here's an example, passing the name of a test since you'll normally only want to run the test that hits your breakpoint:
$ tox -e debug ceilometer.tests.test_binFor reference, the
debugtox environment implements the instructions here: https://wiki.openstack.org/wiki/Testr#Debugging_.28pdb.29_Tests
Code Reviews
Ceilometer uses the OpenStack review process for all code and developer documentation contributions. Code reviews are managed through gerrit.