#!/bin/sh # this is the main build script for build.samba.org # it gets run on all the build boxes via cron # any errors get put in build.log # we used a fixed path that is a superset of the required paths. build_test_path=.:$HOME/bin:/usr/local/bin:/usr/bin:/bin:/opt/SUNWspro/bin:/usr/pkg/bin:/usr/pkg/sbin:/usr/ccs/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/bsd PATH=$build_test_path export PATH CFLAGS="" export CFLAGS build_test_id='$Id$' # go to our main directory cd $HOME/build_farm || exit 1 ( echo date # # allow admins to configure things like # PATH, RSYNC_PROXY, ... # if [ -f build_test.settings.local ]; then build_test_settings_local_file="build_test.settings.local" . $build_test_settings_local_file fi # we only want the short name of the host - use cut for portability host=`hostname | cut -d. -f1` # make sure the password isn't readable by anyone chmod 600 .password # grab the latest versions of the scripts rsync --delete --include='*.fns' --exclude='*' --timeout=200 -q -az build.samba.org::build_farm/ . # load general functions . build_test.fns # # allow admins to overload things like send_logs() # if it's required to have secret data in it, # that can't be in a per host .fns file on # the build-farm svn tree # if [ -f build_test.fns.local ]; then build_test_fns_local_file="build_test.fns.local" . $build_test_fns_local_file fi if [ -f $host.fns ]; then # load host specific functions build_test_used_fns_file="$host.fns" else build_test_used_fns_file="generic.fns" fi . $build_test_used_fns_file ) >> build.log 2>&1