From f6921f8826820980d5777e86fb1718c32197aefd Mon Sep 17 00:00:00 2001 From: Serg Melikyan Date: Thu, 4 Apr 2013 13:43:54 +0400 Subject: [PATCH] Documentation for UI --- portas/doc/source/index.rst | 2 +- tabula/.gitignore | 2 + tabula/README.rst | 39 +--- tabula/doc/source/_static/.placeholder | 0 tabula/doc/source/_templates/.placeholder | 0 tabula/doc/source/_theme/theme.conf | 2 + tabula/doc/source/conf.py | 237 ++++++++++++++++++++++ tabula/doc/source/index.rst | 65 ++++++ 8 files changed, 313 insertions(+), 34 deletions(-) create mode 100755 tabula/doc/source/_static/.placeholder create mode 100755 tabula/doc/source/_templates/.placeholder create mode 100755 tabula/doc/source/_theme/theme.conf create mode 100644 tabula/doc/source/conf.py create mode 100644 tabula/doc/source/index.rst diff --git a/portas/doc/source/index.rst b/portas/doc/source/index.rst index 5e4d6004..dcff6da5 100644 --- a/portas/doc/source/index.rst +++ b/portas/doc/source/index.rst @@ -103,7 +103,7 @@ Run ---- Run Portas and supply valid configuration file:: - smelikyan@work:~/portas-api --config-file=./keero/portas/etc/portas-api.conf + user@work:~/$ portas-api --config-file=./keero/portas/etc/portas-api.conf Man Pages ========= diff --git a/tabula/.gitignore b/tabula/.gitignore index 61cac8c5..78cafe90 100644 --- a/tabula/.gitignore +++ b/tabula/.gitignore @@ -15,3 +15,5 @@ docs/build/ docs/source/sourcecode build dist +#Autogenerated Documentation +doc/source/api \ No newline at end of file diff --git a/tabula/README.rst b/tabula/README.rst index b5eaa700..150c1b4a 100644 --- a/tabula/README.rst +++ b/tabula/README.rst @@ -1,34 +1,7 @@ -==================================== -Horizon Customization Demo Dashboard -==================================== +Keero Tabula README +===================== +Tabula is a project that provides Web UI to Keero Project. -This Django project demonstrates how the `Horizon`_ app can be used to -construct customized dashboards (for OpenStack or anything else). - -The ``horizon`` module is pulled down from GitHub during setup -(see setup instructions below) and added to the virtual environment. - -.. _Horizon: http://github.com/openstack/horizon - -Setup Instructions -================== - -The following should get you started:: - - $ git clone https://github.com/gabrielhurley/horizon_demo.git - $ cd horizon_demo - $ python tools/install_venv.py - $ cp demo_dashboard/local/local_settings.py.example demo_dashboard/local/local_settings.py - -Edit the ``local_settings.py`` file as needed. - -When you're ready to run the development server:: - - $ ./run_tests.sh --runserver - -Using Fake Test Data -==================== - -If you want a more interesting visualization demo, you can uncomment line -24 of ``dashboards/visualizations/flocking/views.py`` to load fake instance -data instead of using data from a real Nova endpoint. \ No newline at end of file +SEE ALSO +-------- +* `Keero `__ diff --git a/tabula/doc/source/_static/.placeholder b/tabula/doc/source/_static/.placeholder new file mode 100755 index 00000000..e69de29b diff --git a/tabula/doc/source/_templates/.placeholder b/tabula/doc/source/_templates/.placeholder new file mode 100755 index 00000000..e69de29b diff --git a/tabula/doc/source/_theme/theme.conf b/tabula/doc/source/_theme/theme.conf new file mode 100755 index 00000000..e8748699 --- /dev/null +++ b/tabula/doc/source/_theme/theme.conf @@ -0,0 +1,2 @@ +[theme] +inherit = default diff --git a/tabula/doc/source/conf.py b/tabula/doc/source/conf.py new file mode 100644 index 00000000..be34f745 --- /dev/null +++ b/tabula/doc/source/conf.py @@ -0,0 +1,237 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2010 OpenStack Foundation. +# +# 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. + +# +# Portas documentation build configuration file, created by +# sphinx-quickstart on Tue February 28 13:50:15 2013. +# +# This file is execfile()'d with the current directory set to its containing +# dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import os +import sys + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +sys.path = [os.path.abspath('../../tabula'), + os.path.abspath('../..')] + sys.path + +# -- 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', + 'sphinx.ext.intersphinx', + 'sphinx.ext.coverage', + 'sphinx.ext.pngmath', + 'sphinx.ext.ifconfig', + 'sphinx.ext.graphviz'] + +# Add any paths that contain templates here, relative to this directory. +templates_path = [] +if os.getenv('HUDSON_PUBLISH_DOCS'): + templates_path = ['_ga', '_templates'] +else: + templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'Tabula' +copyright = u'2013, Mirantis, Inc' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +from tabula.version import version_info as tabula_version +# The full version, including alpha/beta/rc tags. +release = tabula_version.version_string_with_vcs() +# The short X.Y version. +version = tabula_version.canonical_version_string() + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of documents that shouldn't be included in the build. +#unused_docs = [] + +# List of directories, relative to source directory, that shouldn't be searched +# for source files. +exclude_trees = ['api'] + +# The reST default role (for this markup: `text`) to use for all documents. +#default_role = None + +# 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 + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +show_authors = True + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +modindex_common_prefix = ['tabula.'] + +# -- Options for man page output -------------------------------------------- + +# Grouping the document tree for man pages. +# List of tuples 'sourcefile', 'target', u'title', u'Authors name', 'manual' + +man_pages = [] + + +# -- 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' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = ['_theme'] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' +git_cmd = "git log --pretty=format:'%ad, commit %h' --date=local -n1" +html_last_updated_fmt = os.popen(git_cmd).read() + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +html_use_modindex = False + +# If false, no index is generated. +html_use_index = False + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = '' + +# Output file base name for HTML help builder. +htmlhelp_basename = 'tabuladoc' + + +# -- Options for LaTeX output ------------------------------------------------ + +# The paper size ('letter' or 'a4'). +#latex_paper_size = 'letter' + +# The font size ('10pt', '11pt' or '12pt'). +#latex_font_size = '10pt' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, +# documentclass [howto/manual]). +latex_documents = [ + ('index', 'Tabula.tex', u'Tabula Documentation', + u'Keero Team', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# Additional stuff for the LaTeX preamble. +#latex_preamble = '' + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_use_modindex = True + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'python': ('http://docs.python.org/', None)} diff --git a/tabula/doc/source/index.rst b/tabula/doc/source/index.rst new file mode 100644 index 00000000..0de7d53d --- /dev/null +++ b/tabula/doc/source/index.rst @@ -0,0 +1,65 @@ +.. + Copyright 2010 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 Tabula, the Keero Project Web UI! +============================================== + +Tabula is a project that provides Web UI to Keero Project. + +This document describes Tabula for contributors of the project, and assumes +that you are already familiar with Portas from an `end-user perspective`_. + +.. _`end-user perspective`: http://keero.mirantis.com/ + +This documentation is generated by the Sphinx toolkit and lives in the source +tree. + +Installation Guide +================== +Install +------- +1. Check out sources to some directory (/keero):: + + user@work:~/$ git clone ssh://@gerrit.mirantis.com:29418/keero/keero.git + +2. Install virtualenv:: + + user@work:~/$ cd keero/tabula && sudo python ./tools/install_venv.py + +Configure +--------- +1. Copy configuration file from template:: + + user@work:~/$ cp keero/tabula/tabula/local/local_settings.py.example keero/tabula/tabula/local/local_settings.py + +2. Open configuration file for editing:: + + user@work:~/$ cd keero/tabula/tabula/local/ && nano local_settings.py + +2. Configure according to you environment:: + + ... + SECRET_KEY = 'some_random_value' + ... + OPENSTACK_HOST = "localhost" + ... + +Run +---- +Run Tabula in virtualenv:: + + user@work:~/$ cd keero/tabula && sudo ./tools/with_venv.sh python manage.py runserver 0.0.0.0:8080