freezer-web-ui/README.rst
jacky06 1f06dacd90 Sync Sphinx requirement
1. Sync sphinx dependency with global requirements. It caps python 2 since
sphinx 2.0 no longer supports Python 2.7.
2. Update some URLs to latest
3. Bump the keystoneauth1 to 3.14.0 to fix the gate[0]

[0]: http://logs.openstack.org/40/666040/4/check/openstack-tox-lower-constraints/063a064/job-output.txt.gz#_2019-06-18_16_35_28_185448

Change-Id: I5cb981175922df52ae55961109c904f6ecf94d24
2019-07-04 20:47:07 +08:00

3.6 KiB

Team and repository tags

image

Freezer - Horizon Dashboard

freezer-web-ui is a horizon plugin based in django aimed at providing an interaction with freezer

Requirements

Freezer Dashboard requires a freezer API client to be installed in the same environment as horizon:

git clone https://github.com/openstack/python-freezerclient
cd python-freezerclient
python setup.py install (is important that freezer API client is installed from source and not with pip and
                         is installed on horizon virtual environment)

Freezer Dashboard requires a freezer API endpoint which you can install following this steps:

https://github.com/openstack/freezer-api/blob/master/README.rst

API registration

Register freezer api endpoint:

https://github.com/openstack/freezer-api/blob/master/README.rst#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 freezer dashboard for development you need to do the following:

# git clone https://github.com/openstack/freezer-web-ui

# cd freezer-web-ui

# cp freezer-web-ui/disaster_recovery/enabled/_5050_freezer.py  /opt/stack/horizon/openstack_dashboard/enabled/_5050_freezer.py

# to disable the panel just copy the following file

# cp freezer-web-ui/disaster_recovery/enabled/_7050_freezer_remove_panel_.py  /opt/stack/horizon/openstack_dashboard/enabled/_7050_freezer_remove_panel_.py

# cd /opt/stack/horizon/

# pip install -r requirements.txt

# make sure freezer is installed from source as detailed in the first step

# ./run_tests.sh --runserver 0.0.0.0:8000

Production Installation

To deploy freezer dashboard in production you need to do the following:

# git clone https://github.com/openstack/freezer-web-ui

# cd freezer-web-ui

# cp freezer-web-ui/disaster_recovery/enabled/_5050_freezer.py  /opt/stack/horizon/openstack_dashboard/enabled/_5050_freezer.py

# to disable the panel just copy the following file

# cp freezer-web-ui/disaster_recovery/enabled/_7050_freezer_remove_panel_.py  /opt/stack/horizon/openstack_dashboard/enabled/_7050_freezer_remove_panel_.py

# make sure freezer is installed from source as detailed in the first step

# restart apache2 service

A new tab called "Disaster Recovery" will appear on your panels.

Tox

  1. Run tox:

    tox -v

Development under proxy

If you are developing or deploying under proxies remember to set no_proxies for:

freezer-api endpoint
keystone endpoint

Source Code

The project source code repository is located at: https://opendev.org/openstack/freezer-web-ui/