diff options
author | Heikki Halmet <heikki.halmet@qt.io> | 2018-04-27 10:18:05 +0300 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2018-06-29 13:37:34 +0000 |
commit | 74fd490884e645094d3f03cd9c0d0e0d2b73954a (patch) | |
tree | e82e1a3ba6c2fdd3004761d92621c37074fbcba3 /coin | |
parent | 4a7366f96032d8875cec8b738c34497bbe28b649 (diff) |
Provisioning: Add force option when unmounting squish
Sometimes unmount of squish fail because resource busy even if
the installation is already succeeded. To avoid this let's add force
option to make sure unmounting works every time.
Task-number: QTQAINFRA-1964
Change-Id: Icacd01341d09577d9880e3ed208cb6ea18a7ac4f
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Diffstat (limited to 'coin')
-rwxr-xr-x | coin/provisioning/common/unix/squishInstall.sh | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/coin/provisioning/common/unix/squishInstall.sh b/coin/provisioning/common/unix/squishInstall.sh index ab0102ec..c946dfdc 100755 --- a/coin/provisioning/common/unix/squishInstall.sh +++ b/coin/provisioning/common/unix/squishInstall.sh @@ -90,6 +90,11 @@ function MountAndInstall { squishLicenseDir="/root" fi + function UnMount { + echo "Unmounting $mountFolder" + sudo diskutil unmount force "$mountFolder" || sudo umount -f "$mountFolder" + } + targetFileMount="$mountFolder"/"$targetFile" echo "Mounting $url to $mountFolder" @@ -111,20 +116,20 @@ function MountAndInstall { target="$targetDirectory" fi sudo tar -xzf "$targetFileMount" --directory "$target" - echo "Unmounting $mountFolder" - sudo umount "$mountFolder" + UnMount elif [[ $targetFile == *.dmg ]]; then echo "'dmg-file', no need to uncompress" - sudo cp "$targetFileMount" /tmp - sudo umount "$mountFolder" + sudo cp $targetFileMount /tmp + UnMount 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/ + mountFolder="/Volumes/froglogic Squish" + UnMount 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 cp $targetFileMount $targetDirectory + UnMount + 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 |