3.5 KiB
Development Quickstart
This page describes how to setup and use a working Python development environment that can be used in developing masakari on Ubuntu. These instructions assume you're already familiar with git.
Following these instructions will allow you to build the documentation and run the masakari unit tests.
Note
For how to contribute to Masakari, see How To Contribute. Masakari uses the Gerrit code review system, See Gerrit Workflow.
Setup
There are two ways to create a development environment: using DevStack, or explicitly installing and cloning just what you need.
Using DevStack
To enable Masakari in DevStack, perform the following steps:
Download DevStack
export DEVSTACK_DIR=~/devstack
git clone git://git.openstack.org/openstack-dev/devstack.git $DEVSTACK_DIR
Enable the Masakari plugin
Enable the plugin by adding the following section to
$DEVSTACK_DIR/local.conf
[[local|localrc]]
enable_plugin masakari git://git.openstack.org/openstack/masakari
Optionally, a git refspec (branch or tag or commit) may be provided as follows:
[[local|localrc]]
enable_plugin masakari git://git.openstack.org/openstack/masakari <refspec>
Run the DevStack utility
cd $DEVSTACK_DIR
./stack.sh
Explicit Install/Clone
DevStack installs a complete OpenStack environment. Alternatively, you can explicitly install and clone just what you need for Masakari development.
Getting the code
Grab the code from git:
git clone https://git.openstack.org/openstack/masakari
cd masakari
Linux Systems
The first step of this process is to install the system (not Python) packages that are required. Following are instructions on how to do this on Linux.
On Debian-based distributions (e.g., Debian/Mint/Ubuntu):
sudo apt-get install python-pip
sudo pip install tox
tox -e bindep
sudo apt-get install <indicated missing package names>
Building the Documentation
Install the prerequisite packages: graphviz
To do a full documentation build, issue the following command while the masakari directory is current.
tox -e docs
That will create a Python virtual environment, install the needed Python prerequisites in that environment, and build all the documentation in that environment.