X-Git-Url: http://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=blobdiff_plain;f=misc%2Finfrastructure%2Fxonotic-release-build.cron;h=5bed45e6ff5f6e8ca4b34e72850f865bd30462fc;hp=75d814cb19d5eb5bebb3e5afac22c113150217fa;hb=HEAD;hpb=8201b1e8f6748faadd2beafb4b7af5219be1054e diff --git a/misc/infrastructure/xonotic-release-build.cron b/misc/infrastructure/xonotic-release-build.cron index 75d814cb..f9f16dac 100755 --- a/misc/infrastructure/xonotic-release-build.cron +++ b/misc/infrastructure/xonotic-release-build.cron @@ -10,6 +10,10 @@ case "$RELEASETYPE" in RELEASETYPEDIR= RELEASETYPENAME="$RELEASETYPE" ;; + RC*) + RELEASETYPEDIR="$RELEASETYPE/" + RELEASETYPENAME="Release Candidate" + ;; *) RELEASETYPEDIR="$RELEASETYPE/" RELEASETYPENAME="$RELEASETYPE-like build" @@ -22,6 +26,14 @@ export PATH=/home/xonotic-build/ccache:/home/xonotic-build/bin:/usr/local/bin:/u # TEST: use s2tc, high quality #export dds_tool=s2tc +# Try crunch. +export CACHEDIR=$HOME/.xonotic-cached-converter-crunch +export dds_tool=crunch + +# Build locally. +export HOSTS_THAT_ARE_MYSELF='xonotic-build-win32 xonotic-build-win64 xonotic-build-osx' +export HOSTS_THAT_ARE_SCHROOT='xonotic-build-linux64' + mepwd=$PWD me=$0 @@ -32,10 +44,9 @@ fi set -ex -ssh autobuild-release-uploader@beta.xonotic.org ' +test -z "$RELEASETYPEDIR" && ssh autobuild-release-uploader@beta.xonotic.org ' set -e; - cd HTML/autobuild/; - s0=`date -d "now - 7 days - 12 hours" +%s`; + s0=`date -d "now - 30 days - 12 hours" +%s`; s00=`date -d "now - 60 days - 12 hours" +%s`; for X in * */*; do [ -f "$X" ] || continue; @@ -46,11 +57,13 @@ ssh autobuild-release-uploader@beta.xonotic.org ' [ x"$d" != x"latest" ] || continue; w=`date -d $d +%w`; s=`date -d $d +%s`; + w=$(($w % 2)); 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 checkout maint @@ -62,26 +75,38 @@ cd ~/xonotic-release-build # winners in the poll for upcoming CTF maps # maps near completion -## for b in \ -## origin/divVerent/rebase/for-autobuild \ -## ; do -## b=$b ./all each sh -c 'if git rev-parse $b >/dev/null 2>&1; then git merge $b; fi' -## done +#for b in \ +# origin/divVerent/selfbuildagain \ +#; 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 +./all each git restore-mtime --commit-time # adding --merge would be more correct but is slow and hits git limits d0=`date +%Y%m%d` d=$d0 i=1 -while HEAD http://xonotic:g-23@beta.xonotic.org/autobuild/"$RELEASETYPEDIR""Xonotic-$d.zip"; do +while HEAD -C xonotic:g-23 http://beta.xonotic.org/autobuild/"$RELEASETYPEDIR""Xonotic-$d.zip"; do i=$(($i+1)) d="$d0"_"$i" done -RELEASEDATE=$d xvfb-run ./all release -for X in Xonotic-$d*.zip; do - ln -snf "$X" "Xonotic-latest${X#Xonotic-$d}" -done -rsync -vaSHP Xonotic*.zip autobuild-release-uploader@beta.xonotic.org:HTML/autobuild/"$RELEASETYPEDIR" +RELEASEDATE=$d ./all release +sha512sum Xonotic-$d*.zip > Xonotic-$d.sha512 if [ -z "$RELEASETYPEDIR" ]; then - ssh autobuild-release-uploader@beta.xonotic.org sh update-rsync.sh "$d" + sleep 1 # newer timestamps for correct file sort order in web gui + for X in Xonotic-$d*.zip; do + ln -snf "$X" "Xonotic-latest${X#Xonotic-$d}" + done + sha512sum Xonotic-latest*.zip > Xonotic-latest.sha512 +fi +rsync -vaSHP Xonotic*.zip Xonotic*.sha512 autobuild-release-uploader@beta.xonotic.org:"$RELEASETYPEDIR" +if [ -z "$RELEASETYPEDIR" ]; then + ssh autobuild-release-uploader@beta.xonotic.org sh ../../update-rsync.sh "$d" + + # pipeline files, see: .gitlab-ci.yml in xonotic-data.pk3dir + cp data/stormkeep-????????????????????????????????????????-????????????????????????????????????????.pk3 stormkeep.pk3 + PIPELINE_FILES="gmqcc/gmqcc Xonotic/xonotic-linux64-dedicated stormkeep.pk3" + rsync -vSP $PIPELINE_FILES autobuild-release-uploader@beta.xonotic.org:../pipeline-bin/ + rm -f stormkeep.pk3 fi echo "Finished a new $RELEASETYPENAME at http://beta.xonotic.org/autobuild/$RELEASETYPEDIR" | $IRCSPAM cd