RETIRED, The UI component for Tuskar
Go to file
Gabriel Hurley 9742842795 Re-architects the OpenStack Dashboard for modularity and extensibility.
Implements blueprint extensible-architecture.
Implements blueprint improve-dev-documentation.
Implements blueprint gettext-everywhere.
Implements blueprint sphinx-docs.

Complete re-architecture of the dashboard to transform it from a standalone django-openstack app to a Horizon framework for building dashboards. See the docs for more information.

Incidentally fixes the following bugs:

Fixes bug 845868 -- no PEP8 violations.
Fixes bug 766096 -- the dashboard can now be installed at any arbitrary URL.
Fixes bug 879111 -- tenant id is now controlled solely by the tenant switcher, not the url (which was disregarded anyway)
Fixes bug 794754 -- output of venv installation is considerably reduced.

Due to the scale and scope of this patch I recommend reviewing it on github: https://github.com/gabrielhurley/horizon/tree/extensible_architecture

Change-Id: I8e63f7ea235f904247df40c33cb66338d973df9e
2011-11-07 12:59:21 -08:00
docs Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
horizon Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
openstack-dashboard Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
tools Add .gitreview and rfc.sh. 2011-10-28 09:50:35 -04:00
.bzrignore Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
.gitignore Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
.gitreview Add .gitreview and rfc.sh. 2011-10-28 09:50:35 -04:00
.pylintrc updating run_tests.sh to mimic other openstack projects, pep8, pylint, coverage 2011-08-31 14:41:36 -07:00
LICENSE Initial commit 2011-01-12 13:43:31 -08:00
README Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00
run_tests.sh Re-architects the OpenStack Dashboard for modularity and extensibility. 2011-11-07 12:59:21 -08:00

OpenStack Dashboard (Horizon)
-----------------------------

The OpenStack Dashboard is a Django based reference implementation of a web
based management interface for OpenStack.

It is based on the ``horizon`` module, which is designed to be a generic Django
app that can be re-used in other projects.

For more information about how to get started with the OpenStack Dashboard,
view the README file in the openstack-dashboard folder.

For more information about working directly with ``horizon``, see the
README file in the ``horizon`` folder.

For release management:

 * https://launchpad.net/horizon

For blueprints and feature specifications:

 * https://blueprints.launchpad.net/horizon

For issue tracking:

 * https://bugs.launchpad.net/horizon

Project Structure and Testing:
------------------------------

This project is a bit different from other Openstack projects in that it has
two very distinct components underneath it: ``horizon``, and
``openstack-dashboard``.

The ``horizon`` directory holds the generic libraries and components that can
be used in any Django project. In testing, this component is set up with
buildout (see ``run_tests.sh``), and any dependencies that get added need to
be added to the ``horizon/buildout.cfg`` file.

The ``openstack-dashboard`` directory contains a reference Django project that
uses ``horizon`` and is built with a virtualenv and tested through that
environment. If dependencies are added that ``openstack-dashboard`` requires
they should be added to ``openstack-dashboard/tools/pip-requires``.

The ``run_tests.sh`` script invokes tests and analyses on both of these
components in its process, and is what Jenkins uses to verify the
stability of the project.

To run the tests::

    $ ./run_tests.sh

Building Contributor Documentation
----------------------------------

This documentation is written by contributors, for contributors.

The source is maintained in the ``docs/source`` folder using
`reStructuredText`_ and built by `Sphinx`_

.. _reStructuredText: http://docutils.sourceforge.net/rst.html
.. _Sphinx: http://sphinx.pocoo.org/

* Building Automatically::

    $ ./run_tests.sh --docs

* Building Manually::

    $ export DJANGO_SETTINGS_MODULE=local.local_settings
    $ python doc/generate_autodoc_index.py
    $ sphinx-build -b html doc/source build/sphinx/html

Results are in the `build/sphinx/html` directory