Horizon Web interface for Freezer backup, restore and disaster recovery platform
Go to file
manchandavishal 833a40b7b7 Drop Django 1.11 support
Django 1.11 ends its extended support in April 2020 (which is before
Ussuri release), so horizon drops Django 1.11 support in Ussuri.

tox envs for non-primary Django versions are no longer needed in tox.ini
as testing environments for non-primary Django versions are setup in
the zuul jobs now.

horizon>=17.1.0 is required to use Django 2.2. requirements.txt and
lower-constraints.txt are updated accordingly. for more info. please
refer [1].
Depends-On: https://review.opendev.org/#/c/700733/
[1] https://etherpad.openstack.org/p/Enable_Django22_support_in_Horizon_Plugin

Change-Id: I499c5f2fb06caa70c939b6e503f65c14c2c2e474
2020-01-01 20:21:08 +00:00
devstack Update devstack doc 2019-11-15 17:26:49 -08:00
disaster_recovery Use freezerclient.client to support v1 or v2 2018-11-06 20:33:41 -05:00
doc [ussuri][goal] Drop python 2.7 support and testing 2019-11-22 01:52:38 +00:00
playbooks/legacy/freezer-web-ui-ubuntu OpenDev Migration Patch 2019-04-19 19:44:40 +00:00
releasenotes/notes [ussuri][goal] Drop python 2.7 support and testing 2019-11-22 01:52:38 +00:00
tools use . instead of source. 2018-01-29 14:25:56 +00:00
.gitignore Add test 'node_modules' in '.gitignore' 2018-07-19 17:31:52 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:44:40 +00:00
.pylintrc Updated from global requirements 2017-06-07 12:47:55 +01:00
.zuul.yaml [ussuri][goal] Drop python 2.7 support and testing 2019-11-22 01:52:38 +00:00
LICENSE Added LICENSE file to freezer dashboard 2015-11-09 17:10:00 +00:00
MANIFEST.in First version of setup.py 2015-06-21 18:10:07 +00:00
README.rst Sync Sphinx requirement 2019-07-04 20:47:07 +08:00
babel-django.cfg translation: drop babel extractor definitions 2019-12-27 02:02:09 +09:00
babel-djangojs.cfg translation: drop babel extractor definitions 2019-12-27 02:02:09 +09:00
bindep.txt Use bindep to define binary deps 2017-04-04 23:32:31 +00:00
lower-constraints.txt Drop Django 1.11 support 2020-01-01 20:21:08 +00:00
manage.py Updated tox.ini to support new test environment 2016-09-04 18:08:50 +01:00
requirements.txt Drop Django 1.11 support 2020-01-01 20:21:08 +00:00
run_tests.sh Updated tox.ini to support new test environment 2016-09-04 18:08:50 +01:00
setup.cfg [ussuri][goal] Drop python 2.7 support and testing 2019-11-22 01:52:38 +00:00
setup.py Updated from global requirements 2017-03-23 15:10:53 +00:00
test-requirements.txt [ussuri][goal] Drop python 2.7 support and testing 2019-11-22 01:52:38 +00:00
tox.ini Drop Django 1.11 support 2020-01-01 20:21:08 +00:00

README.rst

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/