diff --git a/README.rst b/README.rst index 03235eb..5ba9994 100644 --- a/README.rst +++ b/README.rst @@ -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://: + + +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 -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 \ - --publicurl \ - --internalurl \ - --adminurl \ - --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://: + # 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 diff --git a/_50_freezer.py b/_50_freezer.py index de6d898..2e36278 100644 --- a/_50_freezer.py +++ b/_50_freezer.py @@ -13,4 +13,3 @@ ADD_INSTALLED_APPS = [ 'horizon_web_ui.freezer_ui', ] -ADD_JS_FILES = ['freezer/js/freezer.js'] diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..f3650f3 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +parsedatetime>=1.4 +freezer \ No newline at end of file