[ANNOUNCE] new project: git-autobuilder

Michael E Brown Michael_E_Brown at dell.com
Mon May 21 10:43:02 CDT 2007


    I have ported the old clearcase autobuilder over to use git. I have
also generalized it a bit so that it would be more useful for generic
projects, and people  who want to run their own
autobuilder (hey BDC guys).

    Features:
 -- clone git repos fresh every build
 -- only rebuild project when new changes are checked in
 -- send notifications on success/failure via scripts

    The point of the autobuilder is that it will track the latest
changes in the repo and rebuild on every checkin.

    Check it out from git:

  # git clone http://linux.dell.com/git/git-autobuilder.git 

    Set up the repos you want to autobuild by editing repo.conf. The
default repo.conf is set up to build all of the opensource projects from
the internal-only Dell git repository. For external folks, just replace
hb.us.dell.com with linux.dell.com repo address.

    Run the autobuilder script: ./git-autobuilder.sh. The autobuilder
will spawn itself into the background. The file build.log contains a log
of the build process. The builds/ directory contains directories for
each project being built, and the logfiles for each individual build are
copied there. The last failed build as well as teh last successful build
are saved.

    To stop the autobuilder, remove the "autobuilder.lock" file. The
autobuilder will detect this and stop within a few seconds. Note that
the autobuilder will stop, but it will not kill any current in-progress
build.

    The 'notify/' directory contains scripts that are run on autobuild
completion. The notify scripts have the following format:
   {success,failure}-{built,nobuild}-$(hostname)*.sh

    -- scripts named success-* are built when a build exits successfully
    -- scripts named failure-* are built when a build exits with any
        failure code.
    -- scripts named *-built-* are run when an actual build takes place
    -- scripts named *-nobuild-* are run when the build is skipped due
        to no checkins or on problems with git (could not clone repo,
        etc)
    -- scripts have a hostname component, so you can check all of the
        scripts into the change control, and run multiple autobuilders.
        The default host is 'mock' and you can use these as an example.

--
Michael


More information about the libsmbios-devel mailing list