![Ivan Kolodyazhny](/assets/img/avatar_default.png)
tox env for the integration tests is now renamed to 'integration' as it is no longer run under python 2.7. __hash__() method is now defined in integration_tests.helpers.BaseTestCase to avoid unhashable error during loading django test runner. This is originally caused by the fact that the base testcase class for integration tests is implemented on top of testtools and testtools does not define __hash__() method. In Python 3, __hash__() method must be defined if a class (re)defines __eq__() method to make the class hashable [1]. Ideally integration base TestCase class can be implemented on top of Django test case, but the current implementation depends on features from testtools a lot, so it seems better to add __hash__() method as a workaround. Unbound methods don't exist in Python 3[2], so six.create_unbound_method doesn' work as expected. To dynamic method generation we have to use new descriptors interface [3] or just generate new functools.partialmethod [4] function introduced in Python 3.4 to generate class methods with pre-defined 'path' argument and pass 'self' as a first function argument for class instance. [1] https://docs.python.org/3.5/reference/datamodel.html#object.__hash__ [2] https://six.readthedocs.io/#six.create_unbound_method [3] https://docs.python.org/3/howto/descriptor.html [4] https://docs.python.org/3/library/functools.html#functools.partialmethod Change-Id: I5c3078bdc66e33fe676d431bb28d92b35faaf479
Horizon (OpenStack Dashboard)
Horizon is a Django-based project aimed at providing a complete
OpenStack Dashboard along with an extensible framework for building new
dashboards from reusable components. The
openstack_dashboard
module is a reference implementation of
a Django site that uses the horizon
app to provide
web-based interactions with the various OpenStack projects.
- Project documentation: https://docs.openstack.org/horizon/latest/
- Release management: https://launchpad.net/horizon
- Blueprints and feature specifications: https://blueprints.launchpad.net/horizon
- Issue tracking: https://bugs.launchpad.net/horizon
- Release notes: https://docs.openstack.org/releasenotes/horizon/
Using Horizon
See doc/source/install/index.rst
about how to install
Horizon in your OpenStack setup. It describes the example steps and has
pointers for more detailed settings and configurations.
It is also available at Installation Guide.
Getting Started for Developers
doc/source/quickstart.rst
or Quickstart
Guide describes how to setup Horizon development environment and
start development.
Building Contributor Documentation
This documentation is written by contributors, for contributors.
The source is maintained in the doc/source
directory
using reStructuredText and
built by Sphinx
To build the docs, use:
$ tox -e docs
Results are in the doc/build/html
directory