minitage
minitage.recipe.egg, another fancy error log about distributions requirers
When having trouble while installing an egg during the installation phase(easy_install time)
Now the recipe can display some information about which wanted this distribution.
This is even more useful that it support up to 6 dependencies levels from direct to parents !
Here is an example:
minitage, python and UCS
While upgrading my gentoo based laptop after 8monthes of lazy abandonness in profit of exiting projects, i saw that the gentoo's python was forced to use UCS==4.
What an heck while dealing with the 'minitage env' file which mix the system and project environment resulting in a mixin of the system and project python.
Normally, there are no problem, unless your pythons come with different UCS flavors.
Cool thing is that those errors are not silent, and you see them if you are hitted by this flaw :
minitage & ohloh gives us minitage.ohloh
I refreshed a little the ohloh minitage's related page to have some marketing analysis around minitage basecode.
For this, i wanted to add all repositories, what a heck for 200 repos...
Time to create minitage.ohloh to create the repositories for me using some fake browser ;-).
This package uses lxml (XPath), zope.testbrowser (fake browser) and urllib (some handmade http requests) to make the work done.
Python and oldies or ValueError: year=1876 is before 1900; the datetime strftime() methods require year >= 1900
Calling strftime on a date/datetime instance on py24/py26 will raise a value error like this:
>>> from datetime import date
>>> date(1800,1,1).strftime('%d%m%Y')
Traceback (most recent call last):
File "", line 1, in
ValueError: year=1800 is before 1900; the datetime strftime() methods require year >= 1900 Quite annoying heh ?
There is a bug related on the python bugtracker here : http://bugs.python.org/issue1777412
little minitage.core improvments
GIVE ME ONLY DEPENDENCIES
You can know select to build all dependencies but not the package.
For exemple, to build all python-2.4 dependencies but not python-2.4 itself, you can do:
minimerge -v --only-dependencies python-2.4
BUILD THIS PYTHON PACKAGE FOR THIS PYTHON
For 'eggs' packages, the default was to make come in dependencies all python avaiable in minitage and to build the 'site-packages-Major.Minor' part if it was a buildout build..
Snowleopard revival
Just a little post to say that snowleopard let run minitage.
As a note, you must have all SDK installed, specially the 10.4!
Webservers flooding minitage
Now, nginx and apache are packaged inside minitage.
You have :
- two templates initiating instance of both webservers in minitage.paste.extras
- the related packages to be build via minitage (nginx-0.8, apache-2.2)
Enjoy running:
easy_install -U minitage.paste paster create -t minitage.instances.nginx myproject #deploy some nginx instance (init scripts, logrotates, docroot) paster create -t minitage.instances.apacher myproject #deploy some nginx instance (init scripts, logrotates, docroot)
hudson deployment made easy
I have added recently the support for standalone tomcat instances and running applications in those tomcat instances.
For example, to initiate a great hudson (contineous integration), you can run the following:
If you are not inside a minitage environment:
easy_install -U minitage.paste.extras paster create -t minitage.instances.tomcat myproject # it will ask you for the location of a tomcat extracted tarball paster create -t minitage.instances.hudson myproject
And if you are not inside a minitage environment, to deploy in a myproject subdirectory
Annoucing minitage.paste.extras
Making more and more complicated instances from server dependencies installed into the minitage tree make me relying on somehow intrusive dependencies.
As i want minitage.paste to depend on barely nothing else that paster and the minitage core, i have splitted such 'instances' in an additionnal egg.
minitage.paste.extras was born.
This package borrow 2 instances at the moment:
Kill profils and welcome to instances
Thanks to my lovely minitage user remarks, i make some frenglish naming with 'profils' in minitage.paste.
Profils have been renamed to instances as it is more relevant.
for example:
paster create -t minitage.profils.env project
become:
paster create -t minitage.instances.env project