[gsoc-dev] Packaging report

Piotr Banaszkiewicz piotr at banaszkiewicz.org
Wed Aug 28 09:28:44 UTC 2013


The introduction of wheel [1] helps us:
1) get binary dependencies compiled on our servers (so that there's no
need for end users to have compilers on their machines)
2) speed up installation (we totally omit 'setup' part of Python
packages installation)
3) (in future) sign GWM and it's dependencies ( == better security)


Thanks in advance for any feedback :)
Installation script lies here [2].

[1] http://wheel.readthedocs.org/
[2] https://github.com/pbanaszkiewicz/ganeti_webmgr-setup

Cheers!

On Wed, Aug 28, 2013 at 11:24 AM, pranjal mittal
<mittal.pranjal at gmail.com> wrote:
> This sounds pretty convenient; for all that I had gone through when
> installing GWM the first time.
> Will try it out and send some feedback. :)
>
>
> P.S:
> Also curios to know what advances do you refer to in Python packaging (that
> has been a debated & convoluted topic)?
>
>
> On Wed, Aug 28, 2013 at 2:21 PM, Piotr Banaszkiewicz
> <piotr at banaszkiewicz.org> wrote:
>>
>> 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
>> _______________________________________________
>> gsoc-dev mailing list
>> gsoc-dev at lists.osuosl.org
>> http://lists.osuosl.org/mailman/listinfo/gsoc-dev
>
>
>
>
> --
> Best Regards,
> Pranjal Mittal
> B.Tech.  2014
> Indian Institute of Technology,BHU
> Varanasi, U.P,
> India
>
> Github | LinkedIn | Blog


More information about the gsoc-dev mailing list