murano/doc/source/install/install-dashboard.rst

4.0 KiB

Install Murano Dashboard

Murano API & Engine services provide the core of Murano. However, your need a control plane to use it. This section describes how to install and run Murano Dashboard.

  1. Clone the murano dashboard repository.

    $ cd ~/murano
    $ git clone git://git.openstack.org/openstack/murano-dashboard
  2. Clone the horizon repository

    $ git clone git://git.openstack.org/openstack/horizon
  3. Create a virtual environment and install muranodashboard as an editable module:

    $ cd horizon
    $ tox -e venv -- pip install -e ../murano-dashboard
  4. Prepare local settings.

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

    For more information, check out the official horizon documentation.

  5. Enable and configure Murano dashboard in the OpenStack Dashboard:

    • For Newton (and later) OpenStack installations, copy the plugin file, local settings files, and policy files.

      $ cp ../murano-dashboard/muranodashboard/local/enabled/*.py \
        openstack_dashboard/local/enabled/
      
      $ cp ../murano-dashboard/muranodashboard/local/local_settings.d/*.py \
        openstack_dashboard/local/local_settings.d/
      
      $ cp ../murano-dashboard/muranodashboard/conf/* openstack_dashboard/conf/
    • For the OpenStack installations prior to the Newton release, run:

      $ cp ../murano-dashboard/muranodashboard/local/_50_murano.py \
        openstack_dashboard/local/enabled/

    Customize local settings of your horizon installation, by editing the openstack_dashboard/local/local_settings.py file:

    ...
    ALLOWED_HOSTS = '*'
    
    # Provide OpenStack Lab credentials
    OPENSTACK_HOST = '%OPENSTACK_HOST_IP%'
    
    ...
    
    DEBUG_PROPAGATE_EXCEPTIONS = DEBUG

    Change the default session back end-from using browser cookies to using a database instead to avoid issues with forms during the creation of applications:

    DATABASES = {
      'default': {
      'ENGINE': 'django.db.backends.sqlite3',
      'NAME': 'murano-dashboard.sqlite',
      }
    }
    
    SESSION_ENGINE = 'django.contrib.sessions.backends.db'
  6. (Optional) If you do not plan to get the murano service from the keystone application catalog, specify where the murano-api service is running:

    MURANO_API_URL = 'http://%MURANO_IP%:8082'
  7. (Optional) If you have set up the database as a session back-end (this is done by default with the murano local_settings file starting with Newton), perform database migration:

    $ tox -e venv -- python manage.py migrate --noinput
  8. Run the Django server at 127.0.0.1:8000 or provide different IP and PORT parameters:

    $ tox -e venv -- python manage.py runserver <IP:PORT>

Note

The development server restarts automatically following every code change.

Result: The murano dashboard is available at http://IP:PORT.