From 12115e1dd1bda248406cd7827ca99043cc036e50 Mon Sep 17 00:00:00 2001 From: a1batross Date: Sat, 14 May 2016 00:10:39 +0300 Subject: [PATCH] Rework Travis autobuilds --- .travis.yml | 11 +----- scripts/auto-rename.sh | 75 ++++++++++++++++++++++++++++++++++++++++ scripts/travis-upload.sh | 57 ++++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+), 10 deletions(-) create mode 100755 scripts/auto-rename.sh create mode 100755 scripts/travis-upload.sh diff --git a/.travis.yml b/.travis.yml index 6e5ac9bb..a19ba5aa 100644 --- a/.travis.yml +++ b/.travis.yml @@ -41,14 +41,5 @@ script: after_script: - - curl --upload-file xashdroid-armv7.apk https://transfer.sh/xash3d-armv7-`date -u +%y-%m-%d_%H-%M`.apk - - curl --upload-file xashdroid-armv6.apk https://transfer.sh/xash3d-armv6-`date -u +%y-%m-%d_%H-%M`.apk - - curl --upload-file xashdroid-x86.apk https://transfer.sh/xash3d-x86-`date -u +%y-%m-%d_%H-%M`.apk - - curl --upload-file xashdroid-armv7-tegra2.apk https://transfer.sh/xash3d-armv7-tegra2-`date -u +%y-%m-%d_%H-%M`.apk - - curl --upload-file xashdroid-armv5.apk https://transfer.sh/xash3d-armv5-`date -u +%y-%m-%d_%H-%M`.apk - - curl -T xashdroid-armv7.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv7-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk - - curl -T xashdroid-armv6.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv6-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk - - curl -T xashdroid-x86.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-x86-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk - - curl -T xashdroid-armv7-tegra2.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv7-tegra2-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk - - curl -T xashdroid-armv5.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv5-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk + - scripts/travis_upload.sh diff --git a/scripts/auto-rename.sh b/scripts/auto-rename.sh new file mode 100755 index 00000000..af4b0ca0 --- /dev/null +++ b/scripts/auto-rename.sh @@ -0,0 +1,75 @@ +#!/bin/bash + +# Was used to move bunch of travis autobuilds to new path + +# Remove unneeded info +function clearName +{ + echo $1 | sed 's/xashdroid-//;s/.apk//' +} + +function getYear +{ + echo $1 | awk -F- '{ print $(NF-4)}' +} + +function getMonth +{ + echo $1 | awk -F- '{ print $(NF-3)}' +} + +function getDay +{ + echo $1 | awk -F- '{ print $(NF-2)}' | awk -F_ '{ print $1 }' +} + +function getHour +{ + echo $1 | awk -F- '{ print $(NF-2)}' | awk -F_ '{ print $2 }' +} + +function getMinute +{ + echo $1 | awk -F- '{ print $(NF-1)}' +} + +function getHash +{ + echo $1 | awk -F- '{ print $(NF)}' +} + + +function getArch +{ + local SECOND=`echo $1 | awk -F- '{ print $(NF-5)}'` + local FIRST=`echo $1 | awk -F- '{ print $(NF-6)}'` + + if [ "$SECOND" = "tegra2" ]; then + echo $FIRST-$SECOND + else + echo $SECOND + fi +} + +function getDaysSinceRelease +{ + printf %04d $(( ( $(date -ud "$1$2$3" +'%s') - $(date -ud '150401' +'%s') )/60/60/24 )) +} + + +for i in *.apk; +do + NAME=`clearName ${i}` + YEAR=`getYear ${NAME}` + MONTH=`getMonth ${NAME}` + DAY=`getDay ${NAME}` + HOUR=`getHour ${NAME}` + MINUTE=`getMinute ${NAME}` + ARCH=`getArch ${NAME}` + HASH=`getHash ${NAME}` + DAYSSINCERELEASE=`getDaysSinceRelease ${YEAR} ${MONTH} ${DAY}` + + echo "Moving ${i} to 20${YEAR}/${MONTH}/${DAY}/xash3d-${DAYSSINCERELEASE}-${HOUR}-${MINUTE}-${ARCH}-${HASH}.apk" + mkdir -p 20${YEAR}/${MONTH}/${DAY}/ + mv ${i} 20${YEAR}/${MONTH}/${DAY}/xash3d-${DAYSSINCERELEASE}-${HOUR}-${MINUTE}-${ARCH}-${HASH}.apk +done \ No newline at end of file diff --git a/scripts/travis-upload.sh b/scripts/travis-upload.sh new file mode 100755 index 00000000..aeea4087 --- /dev/null +++ b/scripts/travis-upload.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +# Upload travis generated APKs to the Transfer.sh and Yandex.Disk + +function getDaysSinceRelease +{ + printf %04d $(( ( $(date -ud +'%s') - $(date -ud '150401' +'%s') )/60/60/24 )) +} + +DAYSSINCERELEASE=`getDaysSinceRelease` +COMMITHASH=$(git rev-parse --short HEAD) +CURRENTBRANCH=$(git rev-parse --abbrev-ref HEAD) + +function generateFileName +{ + echo "xash3d-$DAYSSINCERELEASE-$(date +"%H-%M")-$1-$COMMITHASH.apk" +} + + + +# Transfer.sh +TRANSFERSH_ARMV5=`curl --upload-file xashdroid-armv5.apk https://transfer.sh/$(generateFileName armv5)` +TRANSFERSH_ARMV6=`curl --upload-file xashdroid-armv6.apk https://transfer.sh/$(generateFileName armv6)` +TRANSFERSH_ARMV7=`curl --upload-file xashdroid-armv7.apk https://transfer.sh/$(generateFileName armv7)` +TRANSFERSH_ARMV7TEGRA2=`curl --upload-file xashdroid-armv7-tegra2.apk https://transfer.sh/$(generateFileName armv7-tegra2)` +TRANSFERSH_X86=`curl --upload-file xashdroid-x86.apk https://transfer.sh/$(generateFileName x86)` + +echo "Transfer.sh links:\narmv5:\t${TRANSFERSH_ARMV5}\narmv6:\t${TRANSFERSH_ARMV6}\narmv7:\t${TRANSFERSH_ARMV7}\ntegra2:\t${TRANSFERSH_ARMV7TEGRA2}\nx86:\t${TRANSFERSH_X86}\n" + +# YaDisk + +YADISKPATH=`date +%Y/%m/%d` + +curl -u $YADISK_USERNAME:$YADISK_PASSWORD -X MKCOL https://webdav.yandex.ru/XashTestVersions/`date +%Y` +curl -u $YADISK_USERNAME:$YADISK_PASSWORD -X MKCOL https://webdav.yandex.ru/XashTestVersions/`date +%Y/%m`/ +curl -u $YADISK_USERNAME:$YADISK_PASSWORD -X MKCOL https://webdav.yandex.ru/XashTestVersions/`date +%Y/%m/%d`/ + +curl -T xashdroid-armv7.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName armv7) +curl -T xashdroid-armv6.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName armv6) +curl -T xashdroid-armv5.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName armv5) +curl -T xashdroid-armv7-tegra2.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName armv7-tegra2) +curl -T xashdroid-x86.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName x86) + +# Update current +function generateFileName_current +{ + echo "xash3d-current-$1-$CURRENTBRANCH-$COMMITHASH.apk" +} + +curl -T xashdroid-armv7.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName_current armv7) +curl -T xashdroid-armv6.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName_current armv6) +curl -T xashdroid-armv5.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName_current armv5) +curl -T xashdroid-armv7-tegra2.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName_current armv7-tegra2) +curl -T xashdroid-x86.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/$YADISKPATH/$(generateFileName_current x86) + + +exit 0 \ No newline at end of file