Skip to main content

Manila Management Dashboard

Project description

Team and repository tags

https://governance.openstack.org/badges/manila-ui.svg

manila-ui

Manila Management Dashboard

  • Free software: Apache license

Installation instructions

For Manila UI installation in RDO, see: Installing Manila UI in RDO. For other distributions, begin by cloning the Horizon and Manila UI repositories:

git clone https://github.com/openstack/horizon
git clone https://github.com/openstack/manila-ui

Create a virtual environment and install Horizon dependencies:

cd horizon
python tools/install_venv.py

Set up your local_settings.py file:

cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py

Open up the copied local_settings.py file in your preferred text editor. You will want to customize several settings:

  • OPENSTACK_HOST should be configured with the hostname of your OpenStack server. Verify that the OPENSTACK_KEYSTONE_URL and OPENSTACK_KEYSTONE_DEFAULT_ROLE settings are correct for your environment. (They should be correct unless you modified your OpenStack server to change them.)

Install Manila UI with all dependencies in your virtual environment:

tools/with_venv.sh pip install -e ../manila-ui/

And enable it in Horizon:

cp ../manila-ui/manila_ui/local/enabled/_*.py openstack_dashboard/local/enabled
cp ../manila-ui/manila_ui/local/local_settings.d/_90_manila_*.py openstack_dashboard/local/local_settings.d

Starting the app

If everything has gone according to plan, you should be able to run:

./run_tests.sh --runserver 0.0.0.0:8080

and have the application start on port 8080. The horizon dashboard will be located at http://localhost:8080/

Installing Manila UI in RDO

In order to install Manila UI in [RDO](https://www.rdoproject.org), please follow the steps below (you may need to use sudo privileges if you are not root):

# yum install -y openstack-manila-ui
# systemctl restart httpd
# systemctl restart memcached

Manila UI will now be available through OpenStack Horizon; look for the Shares tab under Project > Compute. You can access Horizon with Manila UI using the same URL and port as before.

Configuration

It is possible to enable or disable some Manila UI features. To do so, look for files located in “manila_ui/local/local_settings.d/” directory, where you can redefine the values of the OPENSTACK_MANILA_FEATURES dict:

* enable_share_groups
* enable_replication
* enable_migration
* enable_public_share_type_creation
* enable_public_share_group_type_creation
* enable_public_shares
* enabled_share_protocols

By default, enabled_share_protocols within the OPENSTACK_MANILA_FEATURES dict contains a list with all the supported protocols. The operator can change this to display to users only those protocols that has been deployed and are available to use. E.g. if only NFS is available, the operator is expected to redefine enabled_share_protocols as follows:

OPENSTACK_MANILA_FEATURES = {
   'enable_share_groups': True,
   'enable_replication': True,
   'enable_migration': True,
   'enable_public_share_type_creation': True,
   'enable_public_share_group_type_creation': True,
   'enable_public_shares': True,
   'enabled_share_protocols': ['NFS'],
}

New Features

When implementing a new feature, you may think about making it optional, so it could be enabled or disabled in different deployments.

How to use it:

from django.conf import settings
manila_config = getattr(settings, 'OPENSTACK_MANILA_FEATURES', {})
manila_config.get('your_new_config_option', 'value_of_config_option')

See Configuration section for more configuration details.

It is also expected that each addition of new logic to Manila UI is covered by unit tests.

Test modules should be located under “manila_ui/tests”, satisfying the following template when tests are written for a specific module:

manila_ui[/tests]/path/to/[test_]modulename.py

However, when testing the flow between different modules (using test app), the tests can be added to a test module that can satisfy the following template:

manila_ui[/tests]/path/to/directory/tests.py

Manila UI tests use the mock library for testing.

Running unit tests

The unit tests can be executed directly from within this Manila UI plugin project directory by using:

$ cd ../manila-ui
$ tox

This is made possible by the dependency in test-requirements.txt upon the horizon source, which pulls down all of the horizon and openstack_dashboard modules that the plugin uses.

To run only py27 unit tests, use following command:

$ tox -e py27

To run only py34 unit tests, use following command:

$ tox -e py34

To run unit tests using specific Django version use the following:

$ tox -e py27dj17
$ tox -e py27dj18
$ tox -e py27dj19
$ tox -e py27dj110

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

manila-ui-2.12.0.tar.gz (210.2 kB view details)

Uploaded Source

Built Distribution

manila_ui-2.12.0-py2-none-any.whl (368.2 kB view details)

Uploaded Python 2

File details

Details for the file manila-ui-2.12.0.tar.gz.

File metadata

  • Download URL: manila-ui-2.12.0.tar.gz
  • Upload date:
  • Size: 210.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for manila-ui-2.12.0.tar.gz
Algorithm Hash digest
SHA256 c31794d4fe360eeaf7230c805b20ed7f26228465ba45617c77ec8f15e7554fe1
MD5 c3a1c09c6b678fc2b2d25bc3146d5de1
BLAKE2b-256 b59eecda2f27651fcaa754af1cc16282539d36a78ab9b68418176ea2e9b0e150

See more details on using hashes here.

Provenance

File details

Details for the file manila_ui-2.12.0-py2-none-any.whl.

File metadata

File hashes

Hashes for manila_ui-2.12.0-py2-none-any.whl
Algorithm Hash digest
SHA256 c1def163879c95b247c2ca0ad2dc025561a82e55b2970546dbc8ba629935e94c
MD5 aeb24aeaad550e18e6359be01cd8d0eb
BLAKE2b-256 8a2a632eb0018254be8e33166ad6594e4e4fd004d3d3735939dadd6511dbb7eb

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page