From 0f546567bdfcc4ffb8e076653b696e16985dc120 Mon Sep 17 00:00:00 2001 From: filux Date: Tue, 10 Nov 2015 23:37:57 +0100 Subject: [PATCH] and data archive as 7z for snapshots [ci skip] --- mk/linux/make-binary-archive.sh | 1 + mk/linux/make-data-archive.sh | 22 +++++++++++++++------- mk/macosx/make-binary-archive.sh | 1 + mk/macosx/make-release-archives.sh | 4 ++-- 4 files changed, 19 insertions(+), 9 deletions(-) diff --git a/mk/linux/make-binary-archive.sh b/mk/linux/make-binary-archive.sh index 23b87b25..bae23cb4 100755 --- a/mk/linux/make-binary-archive.sh +++ b/mk/linux/make-binary-archive.sh @@ -111,4 +111,5 @@ cd $RELEASEDIR tar -cf - * | xz > ../$PACKAGE cd $CURRENTDIR +if [ "$1" = "-CI" ] && [ -d "$RELEASEDIR" ]; then rm -rf "$RELEASEDIR"; fi ls -la ${RELEASEDIR_ROOT}/$PACKAGE diff --git a/mk/linux/make-data-archive.sh b/mk/linux/make-data-archive.sh index db832f71..77bf3206 100755 --- a/mk/linux/make-data-archive.sh +++ b/mk/linux/make-data-archive.sh @@ -30,24 +30,26 @@ if [ -d "$REPODIR/.git" ] && [ "$(which git 2>/dev/null)" != "" ]; then cd "$REPODIR" if [ "$SOURCE_BRANCH" = "" ]; then SOURCE_BRANCH="$(git branch | awk -F '* ' '/^* / {print $2}')"; fi SOURCE_COMMIT="$(echo "[$(git rev-list HEAD --count).$(git log -1 --format=%h)]")" - if [ "$DATA_HASH" = "" ]; then DATA_HASH=$(git submodule status "$REPO_DATADIR" | awk '{print $1}'; fi + if [ "$DATA_HASH" = "" ]; then DATA_HASH=$(git submodule status "$REPO_DATADIR" | awk '{print $1}'); fi fi -ARCHIVE_TYPE="tar.xz" +classic_snapshot_for_tests=0 +if [ "$SOURCE_BRANCH" != "" ] && [ "$SOURCE_BRANCH" != "master" ] && [ "$(echo "$VERSION" | grep '\-dev$')" != "" ]; then + classic_snapshot_for_tests=1 +fi +if [ "$classic_snapshot_for_tests" -eq "1" ]; then ARCHIVE_TYPE="7z"; else ARCHIVE_TYPE="tar.xz"; fi SNAPSHOTNAME="mg-data-universal" SN_PACKAGE="$SNAPSHOTNAME-$VERSION-$SOURCE_BRANCH.$ARCHIVE_TYPE" RELEASENAME="megaglest-standalone-data" PACKAGE="$RELEASENAME-$VERSION.$ARCHIVE_TYPE" RELEASEDIR_ROOT="$CURRENTDIR/../../../release" -if [ "$SOURCE_BRANCH" != "" ] && [ "$SOURCE_BRANCH" != "master" ] && [ "$(echo "$VERSION" | grep '\-dev$')" != "" ]; then - RELEASENAME="$SNAPSHOTNAME"; PACKAGE="$SN_PACKAGE" -fi +if [ "$classic_snapshot_for_tests" -eq "1" ]; then RELEASENAME="$SNAPSHOTNAME"; PACKAGE="$SN_PACKAGE"; fi RELEASEDIR="${RELEASEDIR_ROOT}/${RELEASENAME-$VERSION}" if [ "$1" = "--show-result-path" ]; then if [ "$KERNEL" = "darwin" ]; then echo "$RELEASEDIR"; else echo "${RELEASEDIR_ROOT}/$PACKAGE"; fi; exit 0 fi DATA_HASH_MEMORY="$RELEASEDIR_ROOT/data_memory" -DATA_HASH_FILE="$DATA_HASH_MEMORY/$VERSION-$GIT_BRANCH.log" +DATA_HASH_FILE="$DATA_HASH_MEMORY/$VERSION-$SOURCE_BRANCH.log" if [ ! -d "$DATA_HASH_MEMORY" ]; then mkdir -p "$DATA_HASH_MEMORY"; fi if [ "$DATA_HASH" != "" ]; then if [ ! -e "$DATA_HASH_FILE" ] || [ "$(cat "$DATA_HASH_FILE" | grep "$DATA_HASH")" = "" ]; then echo "$DATA_HASH" > "$DATA_HASH_FILE"; else exit 0; fi @@ -111,8 +113,14 @@ if [ "$KERNEL" != "darwin" ]; then echo "creating data archive: $PACKAGE" [[ -f "${RELEASEDIR_ROOT}/$PACKAGE" ]] && rm "${RELEASEDIR_ROOT}/$PACKAGE" cd $RELEASEDIR - tar -cf - * | xz > ../$PACKAGE + if [ "$ARCHIVE_TYPE" = "7z" ] && [ "$(which 7za 2>/dev/null)" != "" ]; then + cd .. + 7za a "$PACKAGE" "$RELEASEDIR" >/dev/null + else + tar -cf - * | xz > ../$PACKAGE + fi cd $CURRENTDIR + if [ "$1" = "-CI" ] && [ -d "$RELEASEDIR" ]; then rm -rf "$RELEASEDIR"; fi ls -la ${RELEASEDIR_ROOT}/$PACKAGE fi diff --git a/mk/macosx/make-binary-archive.sh b/mk/macosx/make-binary-archive.sh index d4ce709c..284751c1 100755 --- a/mk/macosx/make-binary-archive.sh +++ b/mk/macosx/make-binary-archive.sh @@ -87,4 +87,5 @@ cd "$RELEASENAME" tar -cf - * | bzip2 -9 > "../$PACKAGE" cd "$CURRENTDIR" +if [ "$1" = "-CI" ] && [ -d "$RELEASEDIR" ]; then rm -rf "$RELEASEDIR"; fi ls -lhA "${RELEASEDIR_ROOT}/$PACKAGE" diff --git a/mk/macosx/make-release-archives.sh b/mk/macosx/make-release-archives.sh index 6572df67..11f6cd7e 100755 --- a/mk/macosx/make-release-archives.sh +++ b/mk/macosx/make-release-archives.sh @@ -16,7 +16,7 @@ PACKAGE="$RELEASENAME-$VERSION.zip" PACKAGE2="$RELEASENAME-$VERSION.dmg" RELEASEDIR_ROOT="$CURRENTDIR/../../../release" RELEASEDIR="${RELEASEDIR_ROOT}/${RELEASENAME-$VERSION}" -BINARY_DIR="megaglest-binary-$kernel" +BINARY_DIR="$(./make-binary-archive.sh --show-result-path)" DATA_DIR="$(../linux/make-data-archive.sh --show-result-path)" APP_RES_DIR="$RELEASEDIR/MegaGlest.app/Contents/Resources" APP_BIN_DIR="$RELEASEDIR/MegaGlest.app/Contents/MacOS" @@ -28,7 +28,7 @@ mkdir -p "$APP_GAME_DIR" mkdir -p "$APP_BIN_DIR" ./make-binary-archive.sh -cp -r "$RELEASEDIR_ROOT/$BINARY_DIR/"* "$APP_GAME_DIR" +cp -r "$BINARY_DIR/"* "$APP_GAME_DIR" ../linux/make-data-archive.sh cp -r "$DATA_DIR/"* "$APP_GAME_DIR"; sleep 0.5s if [ -f "$APP_GAME_DIR/MegaGlest.sh" ]; then rm -f "$APP_GAME_DIR/MegaGlest.sh"; fi