mirror of
https://gitlab.com/xonotic/xonotic
synced 2025-01-22 14:03:49 +00:00
65 lines
1.6 KiB
Bash
Executable File
65 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# is being run as cronjob, better set PATH
|
|
export PATH=/home/xonotic-build/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
|
|
|
|
mepwd=$PWD
|
|
me=$0
|
|
if ! lockfile-create "$me"; then
|
|
exit 1
|
|
fi
|
|
lockfile-touch "$me" & lockpid=$!
|
|
trap 'kill $lockpid || true; cd "$mepwd"; lockfile-remove "$me"' EXIT
|
|
trap 'exit 1' INT TERM
|
|
|
|
set -ex
|
|
export HOSTS_THAT_ARE_MYSELF="xonotic-build-win32 xonotic-build-win64"
|
|
export HOSTS_THAT_ARE_DISABLED=""
|
|
ssh xonotic-beta '
|
|
cd autobuild/;
|
|
s0=`date -d "now - 7 days - 12 hours" +%s`;
|
|
s00=`date -d "now - 60 days - 12 hours" +%s`;
|
|
for X in *; do
|
|
[ -f "$X" ] || continue;
|
|
d=${X#Xonotic-};
|
|
d=${d%%[_-.]*};
|
|
[ x"$d" != x"latest" ] || continue;
|
|
w=`date -d $d +%w`;
|
|
s=`date -d $d +%s`;
|
|
if [ "$w" -ne 0 -a "$s" -lt "$s0" -o "$s" -lt "$s00" ]; then
|
|
rm -f "$X";
|
|
fi;
|
|
done
|
|
'
|
|
cd ~/xonotic-release-build
|
|
./all clean --reclone
|
|
./all each git checkout HEAD^0
|
|
# add all feature branches we want
|
|
|
|
# map branches that we include:
|
|
# winners in the poll for upcoming CTF maps
|
|
# maps near completion
|
|
|
|
for b in \
|
|
origin/fruitiex/runningmanctf \
|
|
origin/mintox/geoplanetary
|
|
do
|
|
b=$b ./all each sh -c 'if git rev-parse $b >/dev/null 2>&1; then git merge $b; fi'
|
|
done
|
|
./all update -N
|
|
d0=`date +%Y%m%d`
|
|
d=$d0
|
|
i=1
|
|
while HEAD http://xonotic:g-23@beta.xonotic.org/autobuild/"Xonotic-$d.zip"; do
|
|
i=$(($i+1))
|
|
d="$d0"_"$i"
|
|
done
|
|
RELEASETYPE=beta RELEASEDATE=$d ./all release
|
|
for X in Xonotic-$d*.zip; do
|
|
ln -snf "$X" "Xonotic-latest${X#Xonotic-$d}"
|
|
done
|
|
rsync -vaSHP Xonotic*.zip xonotic-beta:autobuild/
|
|
ssh xonotic-beta sh update-rsync.sh "$d"
|
|
echo "Finished a new beta build at http://beta.xonotic.org/autobuild/" | $IRCSPAM
|
|
cd
|