skip to navigation
skip to content

Not Logged In

minitage.core 2.0.40

A meta package-manager to deploy projects on UNIX Systemes sponsored by Makina Corpus.

Latest Version: 2.0.57

  • minitage is a meta-package manager. It's a package manager which install packages with the help of other build systems.

  • Its goal is to help you to deploy projects in a standardised layout and to build things quickly and in a simple manner by putting in environment all configurations. like:

    • cflags
    • ldflags
    • $PATH
  • The main documentation is not there but on http://www.minitage.org, please go there for further instructions.

QuickStart with minitage

Check your Python

You need a python with setuptools, zlib, bz2 and ssl support.

Try that in your interpretery:

>>> import tarfile
>>> import zipfile
>>> import bz2
>>> import _ssl
>>> import zlib
>>> import setuptools
>>>

If you do not have that, you can give a try to my pyboostrapper that bootstrap a python somewhere:

wget http://git.minitage.org/git/minitage/shell/plain/PyBootstrapper.sh
chmod -x PyBootstrapper.sh
bash ./PyBootstrapper.sh /path/to/pythonPrefix

Using virtualenv

You 'd better to use virtualenv , minitage fits well with it.

virtualenv is a tool that allow you to create isolated Python environments.

Here is how to set up an environment with it:

  • Install virtualenv:

    easy_install virtualenv #(maybe use sudo ;))
    
  • Install minitage prefix:

    virtualenv --no-site-packages  ~/minitage
    
  • activate it:

    source ~/minitage/bin/activate
    

KEEP IN MIND THAT YOU MUST ACTIVATE VIRTUALENV AT ANY TIME YOU USE IT.

minitage installation

The whole doc is not there but on http://www.minitage.org/installation.html.

Minitage is a classical python egg, you can get it throught easy_install.

To install minitage in a stable version, follow those steps:

  • Install minitage:

    easy_install -U mercurial minitage.core
    
  • Sync its packages (all its minilays in minitage terminology).:

    minimerge -s
    

Syncing packages

To sync all your minilays

If you need to, fire your virtualenv:

source ~/minitage/bin/activate

Sync:

minimerge -s

Integrate your existing python project base on buildout

Idea is to make buildoutrs to all buildouts in the top directory to wrap the underlying minitage environment.

We will also make a a minilay with minibuilds pointing to those wrappers.

This will help you fastly integrating minitage !

If you project layout is something like:

.
| base.cfg
| buildout.cfg
| otherbuildout.cfg
| foo
     |  bar

You want it to be installed a a zope project, do the following:

cd ~/minitage
. bin/activate
mkdir -p zope
SCM clone URL zope/yourproject
minitagify -d zope/yourproject
. Wraping ~/minitage/zope/yourpoject/otherbuildout.cfg (minitage27.cfg) in ~/minitage/zope/yourpoject/minitage.otherbuildout.cfg->~/minitage/zope/yourpoject/.minitagecfg/otherbuildout.cfg
. Wraping ~/minitage/zope/yourpoject/buildout.cfg (minitage27.cfg) in ~/minitage/zope/yourpoject/minitage.buildout.cfg->~/minitage/zope/yourpoject/.minitagecfg/buildout.cfg
. Wraping ~/minitage/zope/yourpoject/base.cfg (minitage27.cfg) in ~/minitage/zope/yourpoject/minitage.base.cfg->~/minitage/zope/yourpoject/.minitagecfg/base.cfg
. Wroted minibuild yourpoject-otherbuildout in ~/minitage/minilays/05d75df848d13853578095d08f5c7253a/yourpoject-otherbuildout
. Wroted minibuild yourpoject-buildout in ~/minitage/minilays/05d75df848d13853578095d08f5c7253a/yourpoject-buildout
. Wroted minibuild yourpoject-base in ~/minitage/minilays/05d75df848d13853578095d08f5c7253a/yourpoject-base
. Wroted minibuild yourpoject in ~/minitage/minilays/05d75df848d13853578095d08f5c7253a/yourpoject

Yu will then have to use

  • minitage.buildout.cfg for buildout.cfg
  • minitage.otherbuildout.cfg for otherbuildout.cfg

Like:

cd zope/yourproject
python bootstrap.py
bin/buildout -vvvvvvvNc minitage.buildout.cfg
bin/buildout -vvvvvvvNc minitage.otherbuildout.cfg

Changelog for minitage.core

2.0.40 (2012-08-28)

  • Fix minitage base buildouts

2.0.36 (2012-08-28)

  • Fix minitage base buildouts

2.0.35 (2012-08-28)

  • fix category minibuild in minitagify

2.0.34 (2012-08-28)

  • Added the minitagify command see: this doc

2.0.33 (2012-05-09)

  • revert Download helper subdir patch and handle it in buildout recipes

2.0.32 (2012-05-06)

  • Fix all tests
  • Dowload helper now downloads in downloadcache/netloc+urlpath/filename

2.0.31 (2012-03-26)

  • py27 deepcopy bugfix

2.0.30 (2012-03-24)

  • support py27
  • Force run buildout in upgrade mode for dependencies and eggs packages

2.0.29 (2012-03-05)

  • handle pil migration

2.0.28 (2012-01-23)

  • Support for in place git branches [kiorky]

2.0.27 (2011-02-25)

  • proper release

2.0.24

  • fix bug in pretend
  • move to github
  • add mercurial to dependencies to facillitate buildout integration
  • add python versions for pretend and 'eggs' packages
  • rebuild 'eggs' packages only if they need to be (markers are now in place for the particular python version)
  • remove useless mercurial dep

2.0

FEATURES;

  • Auto Update system. When minimerge upgrade (easy_install -U), we have now the infrastructure to run update callbacks.
  • Now minibuilds have revisions, this can facilitate their reinstallation as reverse dependencies
  • give means to select the python to build against for python modules (--all-python-versions or specify python to use along with the package (minimerge -pv foo python-2.4)
  • force eggs category reinstallation
  • add an only dependencies switch to buld only dependencies
  • win32 compatibility (first rush, alpha quality)
  • add replace/per/os/dependencies mecanism in minibuilds
  • allow minibuild names with only major as version

BUGS:

  • support symlink in remove_path (API)
  • enhance remove_path function
  • fix a bug in bootstrapping buildout
  • rewrite fetchers
  • improve proxy handling
  • fix some tests
  • make parts shut up
  • test incomplete downloads and redownload them (package level)
  • make minibuild name more permissive
  • fix bug in new checkouts
  • fix a bug insde the get_from_cache helper when a fragmented url is used and the upstream server does not understand them
  • add a special exception for search_latest when error happen.
  • fake user agent in urlopen calls to prevent mad sysadmins restrictions on python useragent.
  • explicit error when the buildout configuration file is not there
  • use setuptools package_index.download helper funtion instead of directly urllib2 to avoid sourceforge download errors

1.0.19

  • distribute fix

1.0.18

  • remove deprecationwarning

1.0.17

  • remove deprecationwarning

1.0.16

  • oups, left print

1.0.15

  • let the default minilay be at lower priority among all

1.0.14

  • desactivating updates manager for more tests.

-> 1.0.13

  • Minitage now allows binaries to be used instead of compiling programs, in the gentoo -k way.
  • Minitage has now also an update manager to run udpate functions on upgrade.

1.0.5

  • bugfix on url md5sum fragments

1.0.4

  • make conditionnal weither we are offline or not the download in the get_from_cache function.

1.0.0 -> 1.0.3

  • x64 enlightments
  • add optionnal force switch to the download cache function

1.0

  • some API adds like 'search_latest' and 'which'
  • bugfix in interfaces for configuration handling
  • buildout maker can be given an optionnal config to build
  • code stabilization and sync with other minitage components
  • official documentation on http://www.minitage.org

0.32

  • Fetch by default over http

0.4.30

  • Bind buildout newest mode with -u option

0.4.30

  • do not delete directories but overwrite when the package src uri change.

0.4.29

  • Make minitage lives on git

0.4.28

  • Make minitage git aware both in recipes and in core.

0.4.27

  • force setuptools version

0.4.26

  • bugfix on common functions (API)

0.4.21

  • quiet mode is now optionnal are there are numerous bugs with it.

0.4.8

  • Maintenance release

    • testruner
    • buildoutified
    • some refactor and code cleanings
    • logging is now better handled and your minimerge sessions will be as quiet as possible.

0.4.5

  • Bug in fetchers (not critical ...)

0.4.4

  • Add an option (-f)
    • when set : fetch all before build
    • when not set : fetch and build each package one after another

0.4.2

  • Remove the category check

0.4.2

  • Remove the backtrace from the launcher when minimerge fails

0.4.1

  • Release version

0.4_alpha12

  • Fix scm type validator

0.4_alpha11

  • bzr DVCS integration

0.4_alpha10

  • Add support for variables in minibuilds setted in minitage configuration file. Use $name in minibuilds and set it in the [minitage.variables] section.

0.4_alpha9

  • reinforce buildout code

0.4_alpha8

  • restore previous version scheme

a0.4_alpha5

  • add mercurial explicit dependency

0.4_alpha4

  • remove old minilay

0.4_alpha1

This is a pre release, minitage is working. But it is not empty from bugs. Feel free to give your feedback :)

  • Minimerge totally rewritten in python
  • Support for conditionnal dependencies toward python version
  • Support for eggs in addition of site-packages added to the PYTHONPATH
  • Support for conditionnal (OS) dependencies
  • Lot of improvments on error handling
  • Logging mode
  • Configuration via a file is now possible

up to 0.3

  • not public, nothing to see there.
 
File Type Py Version Uploaded on Size
minitage.core-2.0.40.zip (md5) Source 2012-08-28 143KB
  • Downloads (All Versions):
  • 202 downloads in the last day
  • 1991 downloads in the last week
  • 9365 downloads in the last month