aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning
diff options
context:
space:
mode:
authorTony Sarajärvi <tony.sarajarvi@qt.io>2018-03-07 15:03:07 +0200
committerTony Sarajärvi <tony.sarajarvi@qt.io>2018-03-19 11:56:58 +0000
commit90261c1df5cb62a47b44d2d9b84c0753d6ebf9e4 (patch)
tree62ccd72268e13c4ec01e79849ad4f7b55d0c39ba /coin/provisioning
parent250dd8c84eef62fbdb51856b367225adfabd643e (diff)
Remove try_catch codes from unix scripts
Change-Id: Iabadbf28c65132ae614048cb98e92f57e3786056 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Diffstat (limited to 'coin/provisioning')
-rwxr-xr-xcoin/provisioning/common/unix/InstallFromCompressedFileFromURL.sh109
-rwxr-xr-xcoin/provisioning/common/unix/check_and_set_proxy.sh17
-rwxr-xr-xcoin/provisioning/common/unix/squishInstall.sh142
3 files changed, 77 insertions, 191 deletions
diff --git a/coin/provisioning/common/unix/InstallFromCompressedFileFromURL.sh b/coin/provisioning/common/unix/InstallFromCompressedFileFromURL.sh
index fb77b714..b616efb9 100755
--- a/coin/provisioning/common/unix/InstallFromCompressedFileFromURL.sh
+++ b/coin/provisioning/common/unix/InstallFromCompressedFileFromURL.sh
@@ -33,21 +33,11 @@
##
#############################################################################
-# shellcheck source=try_catch.sh
-source "${BASH_SOURCE%/*}/try_catch.sh"
+set -ex
+
# shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/DownloadURL.sh"
-ExceptionDownload=99
-ExceptionCreateTmpFile=100
-ExceptionCreateTmpDirectory=101
-ExceptionUncompress=102
-ExceptionMoveApp=103
-ExceptionDeleteTmpFile=104
-ExceptionRemoveTmpDirectory=105
-ExceptionUnknownFormat=106
-
-
function InstallFromCompressedFileFromURL {
url=$1
url_alt=$2
@@ -55,70 +45,35 @@ function InstallFromCompressedFileFromURL {
installDirectory=$4
appPrefix=$5
- try
- (
- basefilename=${url##*/}
- extension=${basefilename##*.}
- filename=${basefilename%.*}
- if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
- extension="tar.gz"
- fi
- echo "Extension for file: $extension"
- echo "Creating temporary file and directory"
- targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension") || throw $ExceptionCreateTmpFile
- targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
- (DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
- echo "Uncompress $targetFile"
- case $extension in
- "tar.gz")
- tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
- ;;
- "zip")
- unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
- ;;
- *)
- throw $ExceptionUnknownFormat
- ;;
- esac
- echo "Moving app to $installDirectory"
- sudo mkdir -p "$installDirectory"
- sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp
- echo "Removing file '$targetFile'"
- rm "$targetFile" || throw $ExceptionDeleteTmpFile
- echo "Removing directory '$targetDirectory'"
- rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
- )
-
- catch || {
- case $ex_code in
- $ExceptionDownload)
- exit 1;
- ;;
- $ExceptionCreateTmpFile)
- echo "Failed to create temporary file"
- exit 1;
- ;;
- $ExceptionUncompress)
- echo "Failed extracting compressed file."
- exit 1;
- ;;
- $ExceptionMoveApp)
- echo "Failed moving app to target location."
- exit 1;
- ;;
- $ExceptionDeleteTmpFile)
- echo "Failed deleting temporary file."
- exit 1;
- ;;
- $ExceptionRemoveTmpDirectory)
- echo "Failed deleting temporary file."
- exit 1;
- ;;
- $ExceptionUnknownFormat)
- echo "Unknown file format."
- exit 1;
- ;;
- esac
- }
+ basefilename=${url##*/}
+ extension=${basefilename##*.}
+ filename=${basefilename%.*}
+ if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
+ extension="tar.gz"
+ fi
+ echo "Extension for file: $extension"
+ echo "Creating temporary file and directory"
+ targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension")
+ targetDirectory=$(mktemp -d)
+ DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
+ echo "Uncompress $targetFile"
+ case $extension in
+ "tar.gz")
+ tar -xzf "$targetFile" --directory "$targetDirectory"
+ ;;
+ "zip")
+ unzip "$targetFile" -d "$targetDirectory"
+ ;;
+ *)
+ exit 1
+ ;;
+ esac
+ echo "Moving app to $installDirectory"
+ sudo mkdir -p "$installDirectory"
+ sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory"
+ echo "Removing file '$targetFile'"
+ rm "$targetFile"
+ echo "Removing directory '$targetDirectory'"
+ rm -rf "$targetDirectory"
}
diff --git a/coin/provisioning/common/unix/check_and_set_proxy.sh b/coin/provisioning/common/unix/check_and_set_proxy.sh
index c39c7d4b..1cbee166 100755
--- a/coin/provisioning/common/unix/check_and_set_proxy.sh
+++ b/coin/provisioning/common/unix/check_and_set_proxy.sh
@@ -32,19 +32,8 @@
##
#############################################################################
-source "${BASH_SOURCE%/*}/try_catch.sh"
-source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
-
-try
-(
- wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io
-)
+set -ex
-if [ $? -eq 0 ]; then
- echo "Setting http_proxy to $proxy"
- export http_proxy=$proxy
-
-else
- echo "Proxy not detected at $proxy"
-fi
+source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
+(wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io && echo "Setting http_proxy to $proxy" && export http_proxy=$proxy) || echo "Proxy not detected at $proxy"
diff --git a/coin/provisioning/common/unix/squishInstall.sh b/coin/provisioning/common/unix/squishInstall.sh
index e2553fcf..069d5afd 100755
--- a/coin/provisioning/common/unix/squishInstall.sh
+++ b/coin/provisioning/common/unix/squishInstall.sh
@@ -33,8 +33,6 @@
##
#############################################################################
-source "${BASH_SOURCE%/*}/try_catch.sh"
-
set -ex
# This script will install squish package for Linux and Mac.
@@ -65,18 +63,7 @@ if [ -f "/etc/profile.d/squish_env.sh" ]; then
export SQUISH_LICENSEKEY_DIR=$HOME
fi
-ExceptionMount=100
-ExceptionCreateFolder=101
-ExceptionUncompress=102
-ExceptionUnknownFormat=103
-ExceptionCopy=104
-ExceptionUmount=105
-ExceptionHdiutilAttach=106
-ExceptionInstallSquish=107
-ExceptionChangeOwnership=108
-
function MountAndInstall {
-
url=$1
targetDirectory=$2
targetFile=$3
@@ -102,96 +89,51 @@ function MountAndInstall {
targetFileMount="$mountFolder"/"$targetFile"
- try
- (
- echo "Mounting $url to $mountFolder"
- sudo mount "$url" $mountFolder || throw $ExceptionMount
- echo "Create $targetDirectory if needed"
- if [ ! -d "/opt" ]; then
- sudo mkdir "/opt" || throw $ExceptionCreateFolder
- fi
- if [ ! -d "$targetDirectory" ]; then
- sudo mkdir "$targetDirectory" || throw $ExceptionCreateFolder
- fi
- echo "Uncompress $targetFile"
- if [[ $targetFile == *.tar.gz ]]; then
- if [[ $targetFile == .squish-3-license.* ]]; then
- target="$squishLicenseDir"
- # Squish license need to be exists also in users home directory, because squish check it before it starts running tests
- sudo tar -xzf "$targetFileMount" --directory "$HOME" || throw $ExceptionUncompress
- else
- target="$targetDirectory"
- fi
- sudo tar -xzf "$targetFileMount" --directory "$target" || throw $ExceptionUncompress
- echo "Unmounting $mountFolder"
- sudo umount $mountFolder || throw $ExceptionUmount
- elif [[ $targetFile == *.dmg ]]; then
- echo "'dmg-file', no need to uncompress"
- sudo cp $targetFileMount /tmp || throw $ExceptionCopy
- sudo umount $mountFolder || throw $ExceptionUmount
- sudo hdiutil attach "/tmp/$targetFile" || throw $ExceptionHdiutilAttach
- sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" || throw $ExceptionInstallSquish
- sudo hdiutil unmount /Volumes/froglogic\ Squish/
- elif [[ $targetFile == *.run ]]; then
- echo "'run-file', no need to uncompress"
- sudo cp $targetFileMount $targetDirectory || throw $ExceptionCopy
- sudo umount $mountFolder || throw $ExceptionUmount
- sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1 || throw $ExceptionInstallSquish
- sudo rm -fr "$targetDirectory/$targetFile"
- if uname -a |grep -q "Ubuntu"; then
- sudo mkdir /usr/lib/tcl8.6 || throw $ExceptionCreateFolder
- sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/ || throw $ExceptionCopy
- fi
+ echo "Mounting $url to $mountFolder"
+ sudo mount "$url" $mountFolder
+ echo "Create $targetDirectory if needed"
+ if [ ! -d "/opt" ]; then
+ sudo mkdir "/opt"
+ fi
+ if [ ! -d "$targetDirectory" ]; then
+ sudo mkdir "$targetDirectory"
+ fi
+ echo "Uncompress $targetFile"
+ if [[ $targetFile == *.tar.gz ]]; then
+ if [[ $targetFile == .squish-3-license.* ]]; then
+ target="$squishLicenseDir"
+ # Squish license need to be exists also in users home directory, because squish check it before it starts running tests
+ sudo tar -xzf "$targetFileMount" --directory "$HOME"
else
- throw $ExceptionUnknownFormat
+ target="$targetDirectory"
+ fi
+ sudo tar -xzf "$targetFileMount" --directory "$target"
+ echo "Unmounting $mountFolder"
+ sudo umount $mountFolder
+ elif [[ $targetFile == *.dmg ]]; then
+ echo "'dmg-file', no need to uncompress"
+ sudo cp $targetFileMount /tmp
+ sudo umount $mountFolder
+ sudo hdiutil attach "/tmp/$targetFile"
+ sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory"
+ sudo hdiutil unmount /Volumes/froglogic\ Squish/
+ elif [[ $targetFile == *.run ]]; then
+ echo "'run-file', no need to uncompress"
+ sudo cp $targetFileMount $targetDirectory
+ sudo umount $mountFolder
+ sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1
+ sudo rm -fr "$targetDirectory/$targetFile"
+ if uname -a |grep -q "Ubuntu"; then
+ sudo mkdir /usr/lib/tcl8.6
+ sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/
fi
+ else
+ exit 1
+ fi
- echo "Changing ownerships"
- sudo chown -R qt:$usersGroup "$targetDirectory" || throw $ExceptionChangeOwnership
- sudo chown qt:$usersGroup "$HOME/.squish-3-license"
-
- )
-
- catch || {
- case $ex_code in
- $ExceptionMount)
- echo "Failed to mount $url to $mountFolder."
- exit 1;
- ;;
- $ExceptionCreateFolder)
- echo "Failed to create folder"
- exit 1;
- ;;
- $ExceptionUncompress)
- echo "Failed extracting compressed file."
- exit 1;
- ;;
- $ExceptionUnknownFormat)
- echo "Unknown file format."
- exit 1;
- ;;
- $ExceptionCopy)
- echo "Failed to copy"
- exit 1;
- ;;
- $ExceptionUmount)
- echo "Failed to unmount $mountFolder."
- exit 1;
- ;;
- $ExceptionHdiutilAttach)
- echo "Failed to hdituli attach $mountFolder/$targetFile."
- exit 1;
- ;;
- $ExceptionInstallSquish)
- echo "Failed to install squish"
- exit 1;
- ;;
- $ExceptionChangeOwnership)
- echo "Failed to change ownership of $targetDirectory."
- exit 1;
- ;;
- esac
- }
+ echo "Changing ownerships"
+ sudo chown -R qt:$usersGroup "$targetDirectory"
+ sudo chown qt:$usersGroup "$HOME/.squish-3-license"
}
echo "Set commands for environment variables in .bashrc"