Test-AutoBuild upgrade notes ============================ Incompatibilities with 1.0.3 ---------------------------- * The configuration file has been completely overhauled, so existing config files from 1.0.x series will not work with the newer releases. The minimal effort upgrade path is to take the new example configuration file, and just replace the 'modules' parameter block with that of the old config file, then merely change then place the 'path' and 'repository' options within a nested 'source' block, eg Change: modules = { autobuild-dev = { ..... repository = gna-cvs path = testautobuild ..... } } To look like: modules = { autobuild-dev = { ..... source = { repository = gna-cvs path = testautobuild } ..... } } Consult 'man 5 auto-build.conf' for documentation on the new configuration file format * The layout of directories & files within the build home has changed significantly. The default location has also switched from /var/builder to /var/lib/builder. There is now a command line tool for creating the expected directory structure, so the simplest solution is to just remove your existing build home & create a new one: # rm -rf /var/builder # auto-build-make-root /var/lib/builder Consult 'man 1 auto-build-make-root' for documentation on this new tool * The name of the default script used to build a module has been changed from 'rollingbuild.sh' to 'autobuild.sh'. Either rename the script in your application's codebase, or set the following configuration file option for each module: modules = { autobuild-dev = { ..... options = { control-file = rollingbuild.sh } ..... } } * There are a new set of environment variables passed to the build control scripts: $AUTOBUILD_INSTALL_ROOT The location into which a module will install its files, typically used as value for --prefix argument to configure scripts. Equivalent to the old $AUTO_BUILD_ROOT variable $AUTOBUILD_PACKAGE_ROOT The location into which a module will create binary packages. For example, $AUTOBUILD_PACKAGE_ROOT/rpm would be used to set %_topdir when building RPMs. $AUTOBUILD_SOURCE_ROOT The location into which the module was checked out. $AUTOBUILD_MODULE The name of the module being built. This can be used in conjunction with the $AUTOBUILD_SOURCE_ROOT to determine the top level directory of the module's source. $AUTOBUILD_COUNTER The build counter value. This counter is not guarenteed to be different on each build cycle, however, if a code change was detected during checkout, this will change. Equivalent of the old $AUTO_BUILD_COUNTER variable. $AUTOBUILD_TIMESTAMP The build timestamp value. This counter will uniquely refer to a particular checkout of the source code, across the entire build engine. The old variable names will be removed in a future release, thus apps should be switched to the new names at soonest convenient time.