# # Test-AutoBuild main configuration file. # # Short documentation can be found inline, and for further # information consult the manual page 'man 5 auto-build.conf' # # Path to the build engine definition. This determines the # sequence of stages executed by the build engine, package # types to publish, and other miscellaneous aspects of the # build engine's runtime environment. # It will typically suffice to leave this on the default # setting engine = /etc/auto-build.d/engine/host-build-modrepo.conf # If you want to use SELinux MAC, then uncomment this # and run with '/usr/bin/auto-build-secure' instead #engine = /etc/auto-build.d/engine/host-build-secure.conf # The location of the directory containing the template files # for the HTML status pages, and email alert messages templateDir = /etc/auto-build.d/templates # The directory under which the build engine will run. This # should match whatever path was provided when running the # 'auto-build-make-root' script. /var/lib/builder is the default # directory created by the RPM perl-Test-AutoBuild-account buildRoot = /var/lib/builder # A name for the build instance. This is used in the HTML # status pages, email alert subject, and RSS feeds label = Continous Automatic Builder # Name and email address of the build administrator adminEmail = replace_me adminName = Replace Me # Name and email address of the development team writing the # software being built. Typically point it to the main developer # mailing list groupEmail = replace_me groupName = Replace Me # If the build host has multiple names, then specify which # one is used for the virtual host publishing the HTML status # pages. This will be used to construct links in the RSS feed # and email alert messages. If not set, defaults to the primary # hostname of the machine hostname = example.com # The prefix under which the HTML status pages are located. # If using /etc/auto-build.d/httpd/aliased.conf, then #httpPrefix = /builder # Else with /etc/auto-build.d/httpd/user.conf, then #httpPrefix = /~builder # Finally with /etc/auto-build.d/httpd/vhost.conf, then httpPrefix = /builder # Where to save a log of the build engine progress (this # data is also sent to STDERR, but when run from cron this # typically ends up in /dev/null) engineLogFile = /var/lib/builder/autobuild.log # The method used for acquiring a lock file to prevent multiple # build instances running at the same time against the same # buildRoot directory. # * fcntl - Best option, but only implemented for Linux, SunOS # and FreeBSD # * flock - Portable to any UNIX, but does not completely protect # if buildRoot is on an NFS volume # * file - Simple file creation/deletion test. If the build engine # or host machine crashes, it will be neccessary to manually # delete the lock file ($buildRoot/.build.mutex) lockMethod = fcntl # Define what high level features you want enabled features = { # If the cache is enabled, then modules will only be built if their # sources have changed since the previous build cycle. This provides # much faster cycle times if there are many modules in the build # config, only a few of which ever change cache = 1 # Whether to try and checkout the latest sources from version control # If checkout is disabled, the build will run with whatever sources # were checked out on the previous cycle. checkout = 1 # Whether to run the 'createrepo' tool against the RPMs on the HTTP # distribution site createrepo_index = 1 # Whether to run the 'yum-arch' tool against the RPMs on the HTTP # distribution site yum_index = 0 # Whether to generate an APT index of RPMs / Debian packages on the # HTTP distribution site apt_index = 0 # Whether to send email alerts at the end of cycles email_alerts = 0 } # Describe 'interesting' metadata about the build platform platform = { # Taken from /etc/issue, if not set #label = RHEL-4, Update 2 # Taken from uname(2) 'sysname' if not set #operating_system = GNU/Linux # Taken from uname(2) 'machine' if not set # architecture = i386 # Arbitrary administrator specific options... #options = { # compiler.cc = GCC 4.0.2 # linker = GNU ld 2.15.94.0.2.2 #} } # Criteria for sending email alerts alert = { # If the scope is set to # * builder - one email is sent with info on all modules # * module - one email is sent for each module scope = builder # Conditions for sending alerts # * always - send regardless of status # * fail - send whenever the status is 'failed' # * first-fail - send on the first failure only trigger = first-fail # If scope is set to 'builder' then # # * admin - use the global address defined for $adminEmail # * group - use the global address defined for $groupEmail # # If scope is set to 'module' then # # * admin - use the module specific address defined for $adminEmail # * group - use the module specific address defined for $groupEmail # # Or just set an explicit email address (separate multiple address with ,) to = group # What to set the 'From' address to #from = builder@example.com from = replace_me # The SMTP server to relay the mail via, defaults to localhost #smtpServer = mail.example.com } # Set the maximum disk space allowed for use by the cache maxCacheSize = 100M # Set the maximum number of days to keep a cache around before # considering it expired maxCacheAge = 7d # Module groups (for web status) groups = { oVirt = { label = oVirt Modules } } # Global environment variables which will be set whenever # any command is run by the build engine env = { USER = builder PKG_CONFIG_PATH = /var/lib/builder/install-root/lib/pkgconfig/ PYTHONPATH = /var/lib/builder/install-root/lib/python2.5/site-packages LD_LIBRARY_PATH = /var/lib/builder/install-root/lib } # Define the source control repositories from which modules # will be checked out. There are 7 supported repository types # at this time. Depending on the 'type' parameter, various # 'env' or 'option' parameters may be required # # cvs - CVS. Specify the CVSROOT environment variable, and # optionally a CVS_RSH variable # # env = { # CVSROOT = :pserver:anonymous@cvs.gna.org:/cvs/testautobuild # } # # p4 - Perforce. Specify the P4CONFIG environment variable # for a client view. The viewspec will be filled in # automatically # # env = { # P4CONFIG = /var/lib/builder/.p4config # } # # tla - GNU Arch. Specify the 'archive-name' and 'archive-uri' # options for the remote repository. eg, # # options = { # archive-name = lord@emf.net--2004 # archive-uri = http://arch.quackerhead.com/~lord/archives/lord@emf.net--2004 # } # # hg - Mercurial. Specify the 'base-url' option to refer to # the base URL under which the repositories are located # # options = { # base-url = http://www.selenic.com/ # } # # git - Git. Specify the 'base-url' option to refer to # the base URL under which the repositories are located # # options = { # base-url = git://anongit.freedesktop.org/git/ # } # # darcs - Darcs. Specify the 'base-url' option to refer to # the base URL under which the repositories are located # # options = { # base-url = http://www.darcs.net/repos/ # } # # bzr - Bazaar. Specify the 'base-url' option to refer to # the base URL under which the repositories are located # # options = { # base-url = http://www.darcs.net/repos/ # } # # mtn - Monotone. Specify the 'server' option to refer to # the hostname under which the repository is located # # options = { # server = guitone.thomaskeller.biz # } # # Or the path to the dir containing local DBs # # options = { # path = /path/to/repo/dir/ # } # # svn - Subversion. Specify the 'url' option to refer to the base # URL for the repository # # options = { # url = http://aplaws.redhat.com/svn/aplaws/ # } # # svk - SVK. No special options. The modules contain the full URL # # disk - Local disk. Specify the 'directory' otion to refer to the # base directory containing the files # # options = { # directory = /var/lib/builder/local-files # } # repositories = { ovirt-release-repo = { label = oVirt Release Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-release.git #base-url = file:///home/builder/ovirt/release } } ovirt-recipe-repo = { label = oVirt Recipe Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-recipe.git #base-url = file:///home/builder/ovirt/recipe } } ovirt-server-repo = { label = oVirt Server Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-server.git #base-url = file:///home/builder/ovirt/server } } ovirt-node-repo = { label = oVirt Node Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-node.git #base-url = file:///home/builder/ovirt/node } } ovirt-node-image-repo = { label = oVirt Node Image Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-node-image.git #base-url = file:///home/builder/ovirt/node-image } } ovirt-appliance-repo = { label = oVirt Appliance Repo type = git options = { base-url = git://git.et.redhat.com/ovirt-appliance.git #base-url = file:///home/builder/ovirt/appliance } } } # Now, the list of modules to checkout from the repositories # defined above. modules = { ovirt-release = { label = oVirt Release (Development Branch) source = { repository = ovirt-release-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-release.git;a=summary label = Browse Source Repository } ) } ovirt-recipe = { label = oVirt Recipe (Development Branch) source = { repository = ovirt-recipe-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-recipe.git;a=summary label = Browse Source Repository } ) } ovirt-server = { label = oVirt Server (Development Branch) source = { repository = ovirt-server-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-server.git;a=summary label = Browse Source Repository } ) artifacts = ( { src = src/* dst = wui/ label = oVirt Wui } ) } ovirt-node = { label = oVirt Node (Development Branch) source = { repository = ovirt-node-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-node.git;a=summary label = Browse Source Repository } ) } ovirt-node-image = { label = oVirt Node Image (Development Branch) depends = ( ovirt-node ) source = { repository = ovirt-node-image-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-node-image.git;a=summary label = Browse Source Repository } ) } ovirt-appliance = { label = oVirt Appliance (Development Branch) depends = ( ovirt-release ovirt-server ovirt-node-image ) source = { repository = ovirt-appliance-repo path = :next } groups = ( oVirt ) links = ( { href = http://git.et.redhat.com/?p=ovirt-appliance.git;a=summary label = Browse Source Repository } ) } } # Optionally, the packages (RPMs, etc) generated during the # build can be built into an ISO image for distribution isos = { } # That's all folks!