Make sure you have virtualenv installed, you will want it to keep all of your dependencies isolated, in addition, we use virtualenv for our end user installation as well.
Python >= 2.6
your compiler of choice
python-devfor compilation of some of Ganeti Web Manager dependencies
python-environmentif you can’t (or don’t want to) install above wrapper
postgresql-devel(CentOS) if you want to use PostgreSQL
mysql-devel(CentOS) if you want to use MySQL
Start with creating appropriate virtual environment:
$ mkvirtualenv gwm
This command will work only if you installed
recommend to use it, because it creates virtual environments in
$HOME/.virtualenvs, which makes your project directory free of any
Alternatively, if you do not have
mkvirtualenv you can manually create
a virtual environment in
$ virtualenv ~/.virtualenvs/gwm $ source ~/.virtualenvs/gwm/bin/activate
Take a look at Virtual environment page to get better understanding of
how virtual enviroments and
Clone Ganeti Web Manager repository:
(gwm)$ git clone https://github.com/osuosl/ganeti_webmgr
You can also fork on GitHub.
Make sure to switch to
develop branch, as it’s the main branch where
(gwm)$ cd ganeti_webmgr (gwm)$ git checkout develop
Now it’s time to install Ganeti Web Manager as a development package. This means even
though Ganeti Web Manager gets installed as a Python package (and appears on
and is importable from everywhere in virtual environment), you can still work
on it from the directory you cloned it to. No need to go into virtualenv’s
(gwm)$ python setup.py develop
This installs Ganeti Web Manager dependencies as well, and in some cases requires compilation.
Database drivers / interfaces aren’t listed explicitly in Ganeti Web Manager requirements file, so you have to install them manually.
Make sure you have your dependencies for DBs met.
To install support for MySQL:
(gwm)$ pip install mysql-python
To install support for PostgreSQL:
(gwm)$ pip install psycopg2
To install support for SQLite: you don’t have to do anything. It’s included in Python.
Edit configuration files in
Base settings, might not need to be changed.
Look there for options you might want to change. This file exists there especially for you. When developing, it is necessary to set
testing=TRUEin order to run the testing suite.
Remember to configure
It’s still done via
manage.py script, though the script is now hidden
deeper in directories structure: