======
Deploy
======

With buildout.cfg
-----------------

Test with default config file::

  >>> from iw.releaser.testing import clearRepository
  >>> clearRepository(test)

Deploy::

  >>> from iw.releaser.project import deploy_release
  >>> deploy_release(svn_url + '/sample-buildout/trunk', sample_buildout)
  Checking python version ...
  ...

Checking cfg::

  >>> cat(sample_buildout, 'buildout.cfg')
  [buildout]
  download-cache = downloads
  offline = true
  parts = 
  install-from-cache = true
  <BLANKLINE>

Check tarball::

  >>> parent_dir = os.path.split(sample_buildout)[0]

  >>> ls(parent_dir)
  -  buildout.tar.gz
  d  sample-buildout

Cant unarchive contents with python ::

  >>> #from iw.releaser.base import TarFile
  >>> #tar = TarFile(os.path.join(parent_dir, 'buildout.tar.gz'), 'r')
  >>> #for fileinfo in tar.getmembers():
  >>> #    print fileinfo.name

With sample.cfg
-----------------

Test with default config file::

  >>> from iw.releaser.testing import clearBuildout
  >>> clearBuildout(test)
  >>> write(sample_buildout, 'buildout.cfg','''
  ... [buildout]
  ... parts=
  ... ''')

  >>> write(sample_buildout, 'sample.cfg','''
  ... [buildout]
  ... parts=
  ... ''')

Deploy::

  >>> from iw.releaser.project import deploy_release
  >>> deploy_release(join(sample_buildout, 'sample.cfg'))
  Checking python version ...
  ...

buildout.cfg must extend sample.cfg::

  >>> cat(sample_buildout, 'buildout.cfg')
  [buildout]
  install-from-cache = true
  parts = 
  extends = sample.cfg
  download-cache = downloads
  offline = true
  <BLANKLINE>

Check tarball::

  >>> parent_dir = os.path.split(sample_buildout)[0]

  >>> ls(parent_dir)
  d  sample-buildout
  -  sample.tar.gz

With developer.cfg
------------------

Making sure a develop stops the release.

Test with default config file::

  >>> from iw.releaser.testing import clearBuildout
  >>> clearBuildout(test)
  >>> write(sample_buildout, 'buildout.cfg','''
  ... [buildout]
  ... parts=
  ... ''')

  >>> write(sample_buildout, 'developer.cfg','''
  ... [buildout]
  ... parts=
  ...
  ... develop =
  ...       /my/package
  ... ''')

Deploy::

  >>> from iw.releaser.project import deploy_release
  >>> deploy_release(join(sample_buildout, 'developer.cfg'))
  Traceback (most recent call last):
  ...
  ReleaseError: 
    You need to make releases of theses packages:
      /my/package

