The build can now start RPM builds on more than one linux target,
currently set up to do RH9 and FC2. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -26,8 +26,7 @@ OSX_HOST=bigmac
|
||||
OSX_BUILD=/tmp/BUILD
|
||||
|
||||
|
||||
# Alsmost the same... See below
|
||||
LINUX_HOST=rh9
|
||||
# Alsmost the same... See below for hosts and other info
|
||||
LINUX_BUILD=/tmp/BUILD
|
||||
|
||||
|
||||
@@ -236,48 +235,48 @@ fi
|
||||
# ---------------------------------------------------------------------------
|
||||
# Linux build
|
||||
|
||||
# This build is optional, check if the target machine is up and
|
||||
# running
|
||||
if [ $skiplinux != yes ]; then
|
||||
if ping -q -c1 -w1 $LINUX_HOST > /dev/null; then
|
||||
# the ping succeeded
|
||||
skiplinux=no
|
||||
# The remote Linux builds are different than those above. The source
|
||||
# RPMs were already built in the source step, and so building the
|
||||
# binary RPMs is a very simple followup step. Add to that the fact
|
||||
# that we need to build on more than one distro...
|
||||
|
||||
function DoLinuxBuild {
|
||||
local host=$1
|
||||
local reltag=$2
|
||||
shift;shift
|
||||
local pyver=$@
|
||||
|
||||
# test if the target machine is online
|
||||
if ping -q -c1 -w1 $host > /dev/null; then
|
||||
echo "-----------------------------------------------------------------"
|
||||
echo " The $host machine is online, build continuing..."
|
||||
echo "-----------------------------------------------------------------"
|
||||
else
|
||||
# the ping failed, skip the build
|
||||
skiplinux=yes
|
||||
echo "-----------------------------------------------------------------"
|
||||
echo "The $LINUX_HOST machine is offline, skipping the binary RPM build."
|
||||
echo "The $host machine is offline, skipping the binary RPM build."
|
||||
echo "-----------------------------------------------------------------"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if [ $skiplinux != yes ]; then
|
||||
echo "-=-=- Starting Linux build..."
|
||||
|
||||
# The remote linux build is a bit different than the others. The
|
||||
# SRPMs will have already been built in the initial source
|
||||
# building steps, the only thing that the remote build needs to
|
||||
# do is an "rpmbuild --rebuild" for each package. So we'll just
|
||||
# copy the build script over and execute it, there is no need to
|
||||
# unpack the tarball and most of the other steps...
|
||||
|
||||
|
||||
|
||||
echo "Copying source files and build script..."
|
||||
ssh root@$LINUX_HOST "mkdir -p $LINUX_BUILD && rm -rf $LINUX_BUILD/*"
|
||||
ssh root@$host "mkdir -p $LINUX_BUILD && rm -rf $LINUX_BUILD/*"
|
||||
scp $STAGING_DIR/wxPython*.src.rpm \
|
||||
distrib/all/build-linux \
|
||||
root@$LINUX_HOST:$LINUX_BUILD
|
||||
root@$host:$LINUX_BUILD
|
||||
|
||||
echo "Running build script on $LINUX_HOST..."
|
||||
echo "Running build script on $host..."
|
||||
cmd=./build-linux
|
||||
ssh root@$LINUX_HOST "cd $LINUX_BUILD && $cmd $LINUX_BUILD $skipclean $VERSION $PYVER"
|
||||
ssh root@$host "cd $LINUX_BUILD && ./build-linux $reltag $skipclean $VERSION $pyver"
|
||||
|
||||
echo "Fetching the results..."
|
||||
scp root@$LINUX_HOST:$LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm $STAGING_DIR
|
||||
ssh root@$LINUX_HOST "rm $LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm"
|
||||
fi
|
||||
scp "root@$host:$LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm" $STAGING_DIR
|
||||
ssh root@$host "rm $LINUX_BUILD/wxPythonGTK*.i[0-9]86.rpm"
|
||||
|
||||
}
|
||||
|
||||
|
||||
DoLinuxBuild co-rh9 RH9 $PYVER
|
||||
DoLinuxBuild co-fc2 FC2 2.3
|
||||
|
||||
|
||||
|
||||
@@ -309,7 +308,7 @@ if [ $KIND = daily ]; then
|
||||
# TODO: something to remove old builds from starship, keeping
|
||||
# only N days worth
|
||||
|
||||
# TODO: Send email to wxPython-dev?
|
||||
# Send email to wxPython-dev
|
||||
DATE=`date`
|
||||
TO=wxPython-dev@lists.wxwidgets.org
|
||||
|
||||
@@ -353,6 +352,29 @@ if [ $KIND = release ]; then
|
||||
rm $STAGING_DIR/*
|
||||
rmdir $STAGING_DIR
|
||||
|
||||
# Send email to wxPython-dev
|
||||
DATE=`date`
|
||||
TO=wxPython-dev@lists.wxwidgets.org
|
||||
|
||||
cat <<EOF | /usr/sbin/sendmail $TO
|
||||
From: R'bot <rbot@wxpython.org>
|
||||
To: $TO
|
||||
Subject: New release candidate build uploaded
|
||||
Date: $DATE
|
||||
|
||||
Hi,
|
||||
|
||||
A new RC build of wxPython has been uploaded to starship.
|
||||
|
||||
Version: $VERSION
|
||||
Pythons: $PYVER
|
||||
URL: http://starship.python.net/crew/robind/wxPython/preview/$VERSION
|
||||
|
||||
Have fun!
|
||||
R'bot
|
||||
|
||||
EOF
|
||||
|
||||
echo "Finished at " `date`
|
||||
exit 0
|
||||
fi
|
||||
|
Reference in New Issue
Block a user