
Add "from six.moves import range" to replace the builtin range() function with six.moves.range() to always create an iterator, instead of creating a temporary list. Replace "xrange" with "range". Don't add the import for ranges of 1024 items or less. Blueprint cinder-python3 Change-Id: If618b4e810e444f7eb6592bb2398805e9d14d548
Building the docs
Dependencies
- Sphinx
-
You'll need sphinx (the python one) and if you are using the virtualenv you'll need to install it in the virtualenv specifically so that it can load the cinder modules.
pip install Sphinx
- Graphviz
-
Some of the diagrams are generated using the
dot
language from Graphviz.sudo apt-get install graphviz
Use make
Just type make:
% make
Look in the Makefile for more targets.
Manually
Generate the code.rst file so that Sphinx will pull in our docstrings:
% ./generate_autodoc_index.sh > source/code.rst
Run `sphinx_build`:
% sphinx-build -b html source build/html
Use tox
The easiest way to build the docs and avoid dealing with all dependencies is to let tox prepare a virtualenv and run the build_sphinx target inside the virtualenv:
% cd ..
% tox -e docs
The docs have been built
Check out the build directory to find them. Yay!