Minitage, projects and profils
A short introduction to minitage paster templates
A little but wonderfull tool in the python world is paster.
It permits you to generate with some code logics a full set of files.
You can for example create a buildout, apache configurations files and etc.
The documentation for profils are in the official minitage documentation : http://www.minitage.org/doc/rst/
What is interesting there is that i use it into minitage to generate stuff inside.
There are 2 main sort of templates:
- Profils: Something relative to a project, a database, a ldap instance (not finnished atm.), a varnish instance... Profils are applied onto an existing project !
- Projects: A project and a minibuild referencing to it, a zope project, a turbogears project ...
To get those templates in a minitage instance:
source minitage/bin/activate easy_install -U minitage.paste paster create --list-templates
After you can for example create a plone31 projet:
paster create -t minitage.plone31zeo myproject
And after that, because plone is slow, put inside a varnish instance
paster create -t minitage.profils.varnish myproject
Because you need svn 1.5 but it is not packaged on your debian potatoe, just reference it in the dependencies part of your project minibuild:
dependencies=...pilwotk-1.1.6.4 ... install_method=buildout src_uri=http://hg.foo.net/myproject src_type=hg category=zope homepage=http://foo.net description= a plone 3.1 buildout for myproject
And install the minitage.env template:
paster create -t minitage.profils.env myproject
This profil will create for you a small bash script that will change your environnemnent according to 'myproject' needs. PATH, LD_LIBRARY_PATH and so will be feeded with all minitage dependencies. That will enable you to use svn-1.5 when you source it (like source bin/activate)
source zope/myproject/sys/share/minitage/minitage.env which svn /minitage/dependencies/subversion-1.5/parts/part/bin/svn
Another interresting integrations are the zope3 and tubogears projects.
- Zope3 template realisation allowed me to make some fixes in the minitage.recipe:scripts recipe. Now, this one generates for you great launchers scripts which include ALL their respective dependencies.
- Something particular with tubogears is that i must have done some overhead over buildout.
You can see the full documentation there : http://www.minitage.org/doc/rst/tg_project.html


