From e1e1cf8d249d0b5bd083296493d644b27d184bbd Mon Sep 17 00:00:00 2001 From: poikilos <7557867+poikilos@users.noreply.github.com> Date: Tue, 18 Jun 2019 17:13:21 -0400 Subject: [PATCH] Keep zips of versions. --- webapp/versionize.sh | 56 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 46 insertions(+), 10 deletions(-) diff --git a/webapp/versionize.sh b/webapp/versionize.sh index 106eacb..35cc1d5 100755 --- a/webapp/versionize.sh +++ b/webapp/versionize.sh @@ -1,6 +1,17 @@ #!/usr/bin/bash -if [ -z "$1" ]; then +if [ -z "$original_src_path" ]; then + original_src_path="$1" +fi +if [ -z "$original_src_path" ]; then + if [ -f "linux-minetest-kit.zip" ]; then + original_src_path="linux-minetest-kit.zip" + echo "* no script argument, so using linux-minetest-kit.zip" + else + echo "* original_src_path (linux-minetest-kit.zip) not detected" + fi +fi +if [ -z "$original_src_path" ]; then echo "You must specify a zip file path OR directory path." exit 1 fi @@ -13,19 +24,21 @@ customDie() { exit 1 } destroy_msg="" +# src_path: extracted name (always linux-mintetest-kit unless source is +# archive, in which case src_path is detected) src_path="linux-minetest-kit" versions_path="$HOME/git/EnlivenMinetest/webapp/minetest-versions" if [ ! -d "$versions_path" ]; then mkdir -p "$versions_path" || customDie "mkdir $versions_path FAILED" fi src_name="" -try_path="`pwd`/$1" -if [ -f "$1" ]; then +try_path="`pwd`/$original_src_path" +if [ -f "$original_src_path" ]; then echo "* detected file param..." -elif [ -d "$1" ]; then +elif [ -d "$original_src_path" ]; then echo "* detected directory param..." else - customDie "$1 is not a file or directory." + customDie "$original_src_path is not a file or directory." fi cd /tmp || customDie "cannot cd to /tmp" if [ -d versionize ]; then @@ -33,16 +46,17 @@ if [ -d versionize ]; then fi mkdir versionize || customDie "cannot create /tmp/versionize" cd /tmp/versionize || customDie "cannot cd /tmp/versionize" -if [ -f "$1" ]; then +src_archive= +if [ -f "$original_src_path" ]; then echo "* detected full path..." - try_path="$1" -elif [ -d "$1" ]; then + try_path="$original_src_path" + src_archive="$original_src_path" +elif [ -d "$original_src_path" ]; then echo "* detected full path..." - try_path="$1" + try_path="$original_src_path" fi if [ -f "$try_path" ]; then - # if [ ! -d "$src_path" ]; then unzip "$try_path" src_name="`ls`" if [ ! -d "$src_name" ]; then @@ -77,6 +91,28 @@ echo "version=$version" # dest_path="$versions_path/$src_name-$version" dest_path="$versions_path/linux-minetest-kit-$version" echo "dest_path=$dest_path" + +if [ ! -z "$src_archive" ]; then + # The effectiveness of any bash extension extraction is debatable-- + # see + # + filename=$(basename -- "$fullfile") + extension="${filename##*.}" + filename="${filename%.*}" + dst_archive="$versions_path/$filename-$version.$extension" + if [ -f "$src_archive" ]; then + mv "$src_archive" "$dst_archive" || customDie "Cannot mv '$src_archive' '$dst_archive'" + echo "* moved archive to '$dst_archive'" + echo + echo + else + echo "* ERROR: '$src_archive' is not accessible from `pwd`--" + echo " skipping:" + echo " mv '$src_archive' '$dst_archive'" + echo + echo + fi +fi if [ -d "$dest_path" ]; then echo echo "There is nothing to do. Directory $dest_path exists."