← Back to team overview

schooltool-developers team mailing list archive

Makefile & buildout.cfg updates

 

Over the last few weeks I've been updating build files in various
plugins. The following things were changed:

1. Set buildout option newest=false

Nowadays pypi.python.org works quite slowly, ftp.schooltool.org even
more so. We use some 135 eggs, checking their versions when running
buildout takes a lot of time. This change should reduce build time
considerably, and make the sandbox more stable.

`make update` runs in newest mode (bin/buildout -n) to update eggs to
versions specified in versions.cfg . Use it when buildout fails.

For example, you get an error while running buildout::

While:
  Installing.
  Getting section package.
  Initializing section package.
  Installing recipe zc.recipe.egg.
Error: There is a version conflict.
We already have: distribute 0.6.30
make: *** [.installed.cfg] Error 1

Run::

  $ make update

This will upgrade distribute and zc.buildout

2. Local buildout.cfg

buildout.cfg now is a copy of deploy.cfg and not version-controlled.
So your edits, like develop = ../schooltool, or selenium
configuration, will not make the checkout 'dirty'.

3. `make develop` and develop.cfg

Additional parts, only sometimes needed for developers, were moved to
develop.cfg, e.g. coverage. To enable those, set extends = develop.cfg
in your buildout.cfg and rerun buildout. There is a make target to do
just that::

  $ make develop

4. Updated bootstrap.py to latest from
http://downloads.buildout.org/1/bootstrap.py

zc.buildout 2.0 was released. We don't want to switch to it, yet, but
the bootstrap.py that we had, would sometimes get buildout 2 and fail.

Merge the lp:~menesis/schooltool/scripts branch or trunk of other
plugins to get it.

You can also set the needed version to make the build work::

  $ ./python/bin/python bootstrap.py --version=1.7.1
  $ make

Hope this will help you solve recent build failures and stop some
complaints about buildout.

--
Gediminas