Improve installation docs for freezer dashboard

Change-Id: I7a3e858e4dbbb6d41e1704ddbe004a8aeb9f9728
This commit is contained in:
Memo Garcia 2015-07-17 11:35:34 +01:00
parent 3cfef3187d
commit ad8cb0f621
3 changed files with 59 additions and 37 deletions

View File

@ -1,15 +1,36 @@
========================
Freezer - Horizon Web UI
========================
===========================
Freezer - Horizon Dashboard
===========================
Installation
Requirements
============
Freezer Dashboard requires a freezer API endpoint which you can install following this steps::
https://github.com/stackforge/freezer/blob/master/freezer_api/README.rst
API registration
================
Register freezer api endpoint::
https://github.com/stackforge/freezer/blob/master/freezer_api/README.rst#3-api-registration
If keystone service-create and endpoint-create are not available you can set as a fallback the following on::
# vim /opt/stack/horizon/openstack_dashboard/local/local_settings.py
# add FREEZER_API_URL = http://<api_url>:<port>
Dev Installation
================
In the installation procedure we'll assume your main Horizon dashboard
directory is /opt/stack/horizon/openstack_dashboard/dashboards/.
To install the horizon web ui you need to do the following::
To install freezer dashboard for development you need to do the following::
# git clone https://github.com/stackforge/freezer
@ -19,58 +40,58 @@ To install the horizon web ui you need to do the following::
# modify _50_freezer.py (line 9) and point the path to the freezer repo.
# /opt/stack/horizon/tools/with_venv.sh pip install parsedatetime
# cd /opt/stack/horizon/
# ./run_tests.sh --runserver 0.0.0.0:8000
# pip install -r requirements.txt
Now a new Tab is available in the dashboard lists on the left, called "Disaster Recovery".
API registration
================
keystone user-create --name freezer --pass <pass>
keystone user-role-add --user freezer --tenant service --role admin
Production Installation
=======================
keystone service-create --name Freezer \
--type "Disaster Recovery" \
--description "Disaster Recovery"
To deploy freezer dashboard in production you need to do the following::
keystone endpoint-create \
--service-id <service-id> \
--publicurl <api-url> \
--internalurl <api-url> \
--adminurl <api-url> \
--region regionOne
# git clone https://github.com/stackforge/freezer
If keystone service-create and endpoint-create are not available you can set as a fallback the following on::
# cd freezer/horizon_web_ui
# vim /opt/stack/horizon/openstack_dashboard/local/local_settings.py
# cp _50_freezer.py /opt/stack/horizon/openstack_dashboard/local/enabled/
# add FREEZER_API_URL = http://<api_url>:<port>
# modify _50_freezer.py (line 9) and point the path to the freezer repo.
# restart apache2 service
A new tab called "Disaster Recovery" will be on your panels.
Running the unit tests
======================
1. Create a virtual environment:
virtualenv --no-site-packages -p /usr/bin/python2.7 .venv
1. Create a virtual environment::
2. Activate the virtual environment:
. ./.venv/bin/activate
virtualenv --no-site-packages -p /usr/bin/python2.7 .venv
3. Install the requirements:
pip install -r test-requirements.txt
2. Activate the virtual environment::
4. Run the tests:
python manage.py test . --settings=freezer_ui.tests.settings
. ./.venv/bin/activate
3. Install the requirements::
pip install -r test-requirements.txt
4. Run the tests::
python manage.py test . --settings=freezer_ui.tests.settings
Test coverage
-------------
1. Collect coverage information:
coverage run --source='.' --omit='.venv/*' manage.py test . --settings=freezer_ui.tests.settings
1. Collect coverage information::
2. View coverage report:
coverage report
coverage run --source='.' --omit='.venv/*' manage.py test . --settings=freezer_ui.tests.settings
2. View coverage report::
coverage report

View File

@ -13,4 +13,3 @@ ADD_INSTALLED_APPS = [
'horizon_web_ui.freezer_ui',
]
ADD_JS_FILES = ['freezer/js/freezer.js']

View File

@ -0,0 +1,2 @@
parsedatetime>=1.4
freezer