[gsoc-dev] Packaging report

Piotr Banaszkiewicz piotr at banaszkiewicz.org
Wed Aug 28 08:51:45 UTC 2013


Due to my small efforts, GWM is now a proper Python Package.

The main reasons for this change are:
* minimizing necessary dependencies (no more fabric!)
* keeping GWM codebase clean
* easing development

What does this change it mean?
==============================


For end users
+++++++++++++
With GWM being Python package comes one huge advantage: easier
installation. It's actually one line to install whole GWM with
dependencies!

Because my GSoC project is to make GWM installation easier for end
users, I'm writing a setup.sh script, that will create virtual
environment (that provides separation), install GWM's dependencies and
then GWM itself. (And thanks to recent technology advancement in
Python packaging, that installation will take like... a second.)


For developers
++++++++++++++
To start working on GWM, you have to:
1. make virtual environment
2. git clone repository
3. pip install requirements

(I suggest using virtualenvwrapper for #1, as it keeps your directory
with code clean)

In shell terms it looks like this:
$ mkvirtualenv gwm
(gwm)$ git clone git://git.osuosl.org/gitolite/ganeti/ganeti_webmgr
(gwm)$ cd ganeti_webmgr
(gwm)$ pip install -r requirements/development.txt

And that's it, now you can work on GWM.
(Additionally you could install GWM package in development version:)
(gwm)$ python setup.py develop


Hope you like it!
Cheers
- Piotr


More information about the gsoc-dev mailing list