For a local development, all Murano components can be installed in a virtual environment. First thing you need to do is to install check that prerequisites are installed, system is updated and upgraded. Next, install virtualenv package if you don't have one:

sudo pip install virtualenv
            

Murano Api

  • Check out git repository with murano component:

    git clone https://github.com/stackforge/murano-api
                        

  • Execute a script located at the murano-api/tools directory to create virtual environment automatically:

    cd murano-api && python ./tools/install_venv.py
                            

  • Config files are etc/murano-api.conf where you just need to point out IP address where your RabbitMQ is running, and etc/murano-api-paste.ini, which doesn't require any changes.

  • And finally run Murano API:

    ./tools/with_venv.sh python muranoapi/cmd/api.py --config-file=./etc/murano-api.conf
                            

Murano Conductor

  • Check out git repository with murano component:

    git clone https://github.com/stackforge/murano-conductor
                            

  • Execute a script located at the murano-conductor/tools directory to create virtual environment automatically:

    cd murano-conductor && python ./tools/install_venv.py
                            

  • Murano Conductor config file located at etc/conductor.conf For a local development comment data_dir parameter in this file:

    # Directory where conductor's data directory located.
    # "data" must be subdirectory to this.
    # data_dir = /etc/murano-conductor
                            

    After that local data directory, which contain all necessary files will be used. All other possible configuration described in the Murano Admin Guide.

  • Run Murano Conductor:

    ./tools/with_venv.sh python muranoconductor/cmd/run.py --config-file=./etc/conductor.conf
                            

Murano Repository

  • Check out git repository with murano component:

    git clone https://github.com/stackforge/murano-repository
                        

  • Execute a script located at the murano-repository/tools directory to create virtual environment automatically:

    cd murano-repository && python ./tools/install_venv.py
                            

  • Copy a config file etc/murano-repository.conf.sample to etc/murano-repository.conf and point out Keystone parameters.

  • And finally run Murano Repository:

    ./tools/with_venv.sh python muranorepository/cmd/run.py --config-file=./etc/murano-repository.conf
                            

Murano Dashboard

  • Check out git repository with murano component:

    git clone https://github.com/stackforge/murano-dashboard
                        

  • Execute a script located at the murano-dashboard/tools directory to create virtual environment automatically:

    cd murano-dashboard && python ./tools/install_venv.py
                        

  • Murano is a plugin for a Openstack dashboard. So need to install it and it's dependency:

    • # ./tools/with_venv.sh pip install https://github.com/openstack/horizon/archive/grizzly-2.tar.gz
                                      

      Ubuntu

      # apt-get install nodejs
                                      

      CentOS

      # yum install nodejs
                                      

  • To configure Murano Dashboard copy example config file:

    # cp muranodashboard/local/local_settings.py.example muranodashboard/local/local_settings.py
                            

    and set in just copied file the the actual IP address of the OpenStack end-point. If you haven't register murano-api service in the keystone catalog you can set MURANO_API_URL in the same settings file. Note that local murano-api service will be using by default.

  • Run Murano Dashboard: To start the Murano development server use the Django manage.py utility with the context of the virtual environment:

    ./tools/with_venv.sh ./manage.py runserver 0.0.0.0:8080
                            

loading table of contents...