diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000000000000000000000000000000000000..a0d74bd978bc8bf0585ee2c3a0c730aaabe43daa --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,71 @@ +# -*- coding: utf-8 -*- +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import sys + +sys.path.insert(0, os.path.abspath('../..')) +# -- General configuration ---------------------------------------------------- + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones. +extensions = [ + 'sphinx.ext.autodoc', + 'oslosphinx' +] + +# autodoc generation is a bit aggressive and a nuisance when doing heavy +# text edit cycles. +# execute "export SPHINX_DEBUG=1" in your terminal to disable + +# The suffix of source filenames. +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'kolla' +copyright = u'2013, OpenStack Foundation' + +# If true, '()' will be appended to :func: etc. cross-reference text. +add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +add_module_names = True + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# -- Options for HTML output -------------------------------------------------- + +# The theme to use for HTML and HTML Help pages. Major themes that come with +# Sphinx are currently 'default' and 'sphinxdoc'. +# html_theme_path = ["."] +# html_theme = '_theme' +# html_static_path = ['static'] + +# Output file base name for HTML help builder. +htmlhelp_basename = '%sdoc' % project + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass +# [howto/manual]). +latex_documents = [ + ('index', + '%s.tex' % project, + u'%s Documentation' % project, + u'OpenStack Foundation', 'manual'), +] diff --git a/docs/dev-quickstart.rst b/docs/dev-quickstart.rst index a07337a6b1a6cc9d47377f520742630716786859..1d28b0006209e7882e77914cd990e23ea1eff765 100644 --- a/docs/dev-quickstart.rst +++ b/docs/dev-quickstart.rst @@ -99,7 +99,7 @@ be running at a time. service libvirtd stop Kolla deploys OpenStack using -`Ansible <https://ansible.com>`__. Install Ansible from distribution +`Ansible <http://www.ansible.com>`__. Install Ansible from distribution packaging if the distro packaging has 1.8.4 or greater available. Currently Ubuntu's version of Ansible is too old to use from packaging. On RPM based systems install from packaging using: @@ -185,12 +185,13 @@ seek help by filing a bug or contacting the developers via IRC. Note some of the containers don't log to stdout at present so the above command will provide no information. Instead they log to files -in _/var_/log_/_<service_> inside the container. The Kolla community is +in /var/log/<service_> inside the container. The Kolla community is working to improve auditing and make things more consistent. The Kolla community expects this work to complete by Liberty rc1. An example of reading the logs for nova-api: :: + $ docker exec -t nova_api more /var/log/nova/nova-api.log Note reading the logs via an exec operation can only be done if the diff --git a/docs/devenv-heat.rst b/docs/devenv-heat.rst index 4436f466060d7894e0918bc604193b1b9e07c25a..77a5ff3fe7cd46b44ccdc8f75ec2bcc179b36153 100644 --- a/docs/devenv-heat.rst +++ b/docs/devenv-heat.rst @@ -34,7 +34,7 @@ correct a bug with template validation when using the "Fn::Join" function). Create the Glance Image -======================= +----------------------- After cloning the project, run the get-image.sh script from the project's devenv directory: @@ -56,7 +56,7 @@ Add the image to your Glance image store: --is-public True --progress Create the Stack -================ +---------------- Copy local.yaml.example to local.yaml and edit the contents to match your deployment environment. Here is an example of a customized @@ -101,7 +101,7 @@ And then create the stack, referencing that environment file: $ heat stack-create -f kollacluster.yaml -e local.yaml kolla-cluster Access the Kolla Nodes -====================== +---------------------- You can get the ip address of the Kolla nodes using the ``heat output-show`` command: @@ -150,7 +150,7 @@ If you want to start a container set by hand use this template $ docker-compose -f glance-api-registry.yml up -d Debugging -========= +--------- All Docker commands should be run from the directory of the Docker binaray, by default this is ``/``. diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..258c6180a370345473595595e580fe5dfbbf3594 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,44 @@ +.. + Copyright 2014-2015 OpenStack Foundation + All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); you may + not use this file except in compliance with the License. You may obtain + a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + License for the specific language governing permissions and limitations + under the License. + +Welcome to Kolla's Documentation! +================================= + +Kolla provides Docker containers and Ansible playbooks to meet Kolla's mission. +Kolla is highly opinionated out of the box, but allows for complete +customization. This permits operators with little experience to deploy +OpenStack quickly and as experience grows modify the OpenStack configuration to +suit the operator's exact requirements. + +Developer Info +============== + +.. toctree:: + :maxdepth: 1 + + dev-quickstart + ansible-deployment + devenv-vagrant + devenv-heat + +Services in Kolla +================= + +.. toctree:: + :maxdepth: 1 + + cinder-guide + swift-readme diff --git a/requirements.txt b/requirements.txt index f759c054f0a9b552fdf5a24de429213177b3c729..450c7b147eb55539a427810114373e5036eefcfe 100755 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -pbr<2.0,>=1.4 +pbr<2.0,>=1.6 docker-py>=1.1.0 # Apache-2.0 Jinja2>=2.6 # BSD License (3 clause) gitdb>=0.6.4 # BSD License (3 clause) diff --git a/setup.cfg b/setup.cfg index 1e5d7130568763e9d6275e4e9d37a8349418c8ad..6db6a4a3e2401ce15808f9eb0f1e06120a56cb2c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -46,5 +46,5 @@ setup-hooks = [build_sphinx] all_files = 1 -build-dir = doc/build -source-dir = docs +build-dir = docs/build +source-dir = docs/ diff --git a/test-requirements.txt b/test-requirements.txt index 269d9f56642311fa1b7e3a2a2b611423fa1ef75d..e42b9d352c3cc36e550f92fdc71c3f81b1f1e700 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,6 +1,7 @@ hacking>=0.10.0 oslo.log>=1.0.0 # Apache-2.0 oslotest>=1.5.1 # Apache-2.0 +oslosphinx>=2.5.0 # Apache-2.0 PyYAML python-barbicanclient>=3.0.1 python-ceilometerclient>=1.0.6 @@ -11,6 +12,7 @@ python-keystoneclient>=1.1.0 python-neutronclient>=2.3.11,<3 python-novaclient>=2.18.0,!=2.21.0 python-swiftclient>=2.2.0 +sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 testrepository>=0.0.18 testscenarios>=0.4 testtools>=0.9.36,!=1.2.0 diff --git a/tox.ini b/tox.ini index 4673d4e1538b13c294833a34dfa212a7adbf7bcc..94a2008f6b8c9f9c254d0f6de2198dba0a060204 100644 --- a/tox.ini +++ b/tox.ini @@ -12,6 +12,9 @@ deps = -r{toxinidir}/requirements.txt commands = flake8 +[testenv:docs] +commands = python setup.py build_sphinx + [testenv:validate-contents] commands = {toxinidir}/tools/validate-all-json.sh