=========
releasing
=========

Let's set the curdir to the package we work on, because releaser uses
the current working directory to work::

    >>> import os
    >>> os.chdir(package_dir)

To release a package, just call make_package_release::

    >>> from iw.releaser.commands import make_package_release
    >>> make_package_release(auto=True)
    This package is version 0.1
    Raising the version...
    Commiting changes...
    Creating branches...
    ...

That's the default behavior. We also have a `.iw-releaser.cfg` 
file that can be written in the home folder to give the command 
iw.releaser should run::

    >>> conf = """\
    ... [release]
    ... commands = 
    ...     ingeniweb-private
    ...     ingeniweb-public
    ...     pypi
    ...
    ...
    ... [ingeniweb-private]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     .*
    ...
    ... [ingeniweb-public]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     iw.*
    ...
    ... [pypi]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     plone.*
    ...     collective.*
    ... """
    >>> from iw.releaser.commands import CONF_FILE 
    >>> open(join(package_dir, CONF_FILE), 'w').write(conf)

Now let's try::

    >>> make_package_release(auto=True)
    This package is version 0.2
    Raising the version...
    Commiting changes...
    Creating branches...
    ...
    Running "mregister sdist bdist_egg mupload -r ingeniweb-private"
    0.3 released 

Again, should be pushed in two repos::

    >>> conf = """\
    ... [release]
    ... commands = 
    ...     ingeniweb-private
    ...     ingeniweb-public
    ...     pypi
    ...
    ...
    ... [ingeniweb-private]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     .*
    ...
    ... [ingeniweb-public]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     iw.*
    ...     my.package     
    ...
    ... [pypi]
    ... command = mregister sdist bdist_egg mupload
    ... packages = 
    ...     plone.*
    ...     collective.*
    ... """
    >>> from iw.releaser.commands import CONF_FILE 
    >>> open(join(package_dir, CONF_FILE), 'w').write(conf)
    >>> make_package_release(auto=True)
    This package is version 0.3
    ...    
    Running "mregister sdist bdist_egg mupload -r ingeniweb-private"
    Running "mregister sdist bdist_egg mupload -r ingeniweb-public"
    0.4 released

