From 4492fd3268e575dc79d77105821839631aac998f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Wed, 7 Mar 2018 14:41:03 +0200 Subject: Remove try_catch codes from Ubuntu 16.04 scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I4a377b8bc2a16d9b9c4123a9a4f623f1a6a7ae18 Reviewed-by: Joni Jäntti Reviewed-by: Heikki Halmet --- .../01-systemsetup.sh | 80 ++---- .../qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh | 268 ++++++++++----------- 2 files changed, 139 insertions(+), 209 deletions(-) diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh index e00e2498..119a1008 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh @@ -37,69 +37,25 @@ set -ex -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" NTS_IP=10.212.2.216 -ExceptionGsettings1=100 -ExceptionGsettings2=101 -ExceptionGsettings3=102 -ExceptionNTS=103 -ExceptionProxy=104 -ExceptionGrub=105 - -try -( - echo "Set timezone to UTC." - sudo timedatectl set-timezone Etc/UTC || throw $ExceptionTimezone - echo "Timeout for blanking the screen (0 = never)" - gsettings set org.gnome.desktop.session idle-delay 0 || throw $ExceptionGsettings1 - echo "Prevents screen lock when screesaver goes active." - gsettings set org.gnome.desktop.screensaver lock-enabled false || throw $ExceptionGsettings2 - echo "Disable questions on shutdown." - gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true || throw $ExceptionGsettings3 - echo "Set grub timeout to 0" - sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub || throw $ExceptionGrub - sudo update-grub || throw $ExceptionGrub - - echo "Set Network Test Server address to $NTS_IP in /etc/hosts" - echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS - - if [ "$http_proxy" != "" ]; then - echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf || throw $ExceptionProxy - fi -) -catch || { - case $ex_code in - $ExceptionTimezone) - echo "Failed to set timezone to UTC" - exit 1; - ;; - $ExceptionGsettings1) - echo "Failed to disable black screen." - exit 1; - ;; - $ExceptionGsettings2) - echo "Failed to prevent screen lock." - exit 1; - ;; - $ExceptionGsettings3) - echo "Failed to disable questions on shutdown." - exit 1; - ;; - $ExceptionGrub) - echo "Failed to set grub timeout." - exit 1; - ;; - $ExceptionNTS) - echo "Failed to set network teset server address into /etc/hosts." - exit 1; - ;; - $ExceptionProxy) - echo "Failed to set proxy /etc/apt/apt.conf." - exit 1; - ;; - esac -} - +echo "Set timezone to UTC." +sudo timedatectl set-timezone Etc/UTC +echo "Timeout for blanking the screen (0 = never)" +gsettings set org.gnome.desktop.session idle-delay 0 +echo "Prevents screen lock when screesaver goes active." +gsettings set org.gnome.desktop.screensaver lock-enabled false +echo "Disable questions on shutdown." +gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true +echo "Set grub timeout to 0" +sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub +sudo update-grub + +echo "Set Network Test Server address to $NTS_IP in /etc/hosts" +echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts + +if [ "$http_proxy" != "" ]; then + echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf +fi diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh index 1f2139c1..40e07fe6 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh @@ -37,153 +37,127 @@ set -ex -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" +echo "Disabling auto update" +sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic +for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do + sudo systemctl stop $service + sudo systemctl disable $service +done -ExceptionAPTUpdate=100 -ExceptionAPT=101 -ExceptionSED=102 +# aptdaemon is used by update notifiers and similar and there is no point in having those (the symptom is aptd holding a lock) +for i in `seq 10`; do + echo attempting to remove aptdaemon + sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y remove aptdaemon || true + # check that aptdaemon is no longer installed + which aptd > /dev/null || break + if [[ $i -eq 10 ]]; then + exit 1 + fi + sleep 10 +done -try -( - echo "Disabling auto update" - sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic || throw $ExceptionSED - for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do - sudo systemctl stop $service - sudo systemctl disable $service - done +# Git is not needed by builds themselves, but is nice to have +# immediately as one starts debugging +installPackages+=(git) +# 7zip is a needed decompressing tool +installPackages+=(p7zip-full) +# To be able to mount yocto-cache during builds +installPackages+=(nfs-common) +# libssl-dev provides headers for OpenSSL +installPackages+=(libssl-dev) +# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git +installPackages+=("^libxcb.*") +installPackages+=(libxkbcommon-dev) +installPackages+=(libxkbcommon-x11-dev) +installPackages+=(libx11-xcb-dev) +installPackages+=(libglu1-mesa-dev) +installPackages+=(libxrender-dev) +installPackages+=(libxi-dev) +# Enable linking to system dbus +installPackages+=(libdbus-1-dev) +# Needed libraries for WebEngine +installPackages+=(libudev-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libxss-dev) +# Common event loop handling +installPackages+=(libglib2.0-dev) +# MySQL support +installPackages+=(libmysqlclient-dev) +# PostgreSQL support +installPackages+=(libpq-dev) +# SQLite support +installPackages+=(libsqlite3-dev) +# ODBC support +installPackages+=(unixodbc-dev) +# Support for FreeType font engine +installPackages+=(libfreetype6-dev) +# Enable the usage of system jpeg libraries +installPackages+=(libjpeg-dev) +# Enable support for printer driver +installPackages+=(libcups2-dev) +# Install libraries needed for QtMultimedia to be able to support all plugins +installPackages+=(libasound2-dev) +installPackages+=(libgstreamer1.0-dev) +installPackages+=(libgstreamer-plugins-base1.0-dev) +installPackages+=(libgstreamer-plugins-good1.0-dev) +installPackages+=(libgstreamer-plugins-bad1.0-dev) +# Support for cross-building to x86 (needed by WebEngine boot2qt builds) +installPackages+=(g++-multilib) +# python2 development package +installPackages+=(python-pip) +# python3 development package +installPackages+=(python3-dev) +installPackages+=(python3-pip) +installPackages+=(python3-virtualenv) +# Needed to be able to build Yocto +installPackages+=(chrpath) +installPackages+=(gawk) +installPackages+=(texinfo) +# Automates interactive applications (Needed by RTA to automate configure testing) +installPackages+=(expect) +installPackages+=(mesa-common-dev) +installPackages+=(libgl1-mesa-glx) +installPackages+=(libgl1-mesa-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(curl) +installPackages+=(libicu-dev) +installPackages+=(zlib1g-dev) +installPackages+=(zlib1g) +installPackages+=(openjdk-8-jdk) +installPackages+=(libgtk-3-dev) +installPackages+=(ninja-build) +installPackages+=(libssl-dev) +installPackages+=(libxcursor-dev) +installPackages+=(libxcomposite-dev) +installPackages+=(libxdamage-dev) +installPackages+=(libxrandr-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libxss-dev) +installPackages+=(libsrtp0-dev) +installPackages+=(libwebp-dev) +installPackages+=(libjsoncpp-dev) +installPackages+=(libopus-dev) +installPackages+=(libminizip-dev) +installPackages+=(libavutil-dev) +installPackages+=(libavformat-dev) +installPackages+=(libavcodec-dev) +installPackages+=(libevent-dev) +installPackages+=(bison) +installPackages+=(flex) +installPackages+=(gperf) +installPackages+=(libasound2-dev) +installPackages+=(libpulse-dev) +installPackages+=(libxtst-dev) +installPackages+=(libnspr4-dev) +installPackages+=(libnss3-dev) +installPackages+=(libopenal-dev) +installPackages+=(libbluetooth-dev) +#VirtualBox for RTA +installPackages+=(virtualbox) +installPackages+=(dkms) - # aptdaemon is used by update notifiers and similar and there is no point in having those (the symptom is aptd holding a lock) - for i in `seq 10`; do - echo attempting to remove aptdaemon - sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y remove aptdaemon || true - # check that aptdaemon is no longer installed - which aptd > /dev/null || break - if [[ $i -eq 10 ]]; then - throw $ExceptionAPT - fi - sleep 10 - done - - # Git is not needed by builds themselves, but is nice to have - # immediately as one starts debugging - installPackages+=(git) - # 7zip is a needed decompressing tool - installPackages+=(p7zip-full) - # To be able to mount yocto-cache during builds - installPackages+=(nfs-common) - # libssl-dev provides headers for OpenSSL - installPackages+=(libssl-dev) - # Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git - installPackages+=("^libxcb.*") - installPackages+=(libxkbcommon-dev) - installPackages+=(libxkbcommon-x11-dev) - installPackages+=(libx11-xcb-dev) - installPackages+=(libglu1-mesa-dev) - installPackages+=(libxrender-dev) - installPackages+=(libxi-dev) - # Enable linking to system dbus - installPackages+=(libdbus-1-dev) - # Needed libraries for WebEngine - installPackages+=(libudev-dev) - installPackages+=(libegl1-mesa-dev) - installPackages+=(libfontconfig1-dev) - installPackages+=(libxss-dev) - # Common event loop handling - installPackages+=(libglib2.0-dev) - # MySQL support - installPackages+=(libmysqlclient-dev) - # PostgreSQL support - installPackages+=(libpq-dev) - # SQLite support - installPackages+=(libsqlite3-dev) - # ODBC support - installPackages+=(unixodbc-dev) - # Support for FreeType font engine - installPackages+=(libfreetype6-dev) - # Enable the usage of system jpeg libraries - installPackages+=(libjpeg-dev) - # Enable support for printer driver - installPackages+=(libcups2-dev) - # Install libraries needed for QtMultimedia to be able to support all plugins - installPackages+=(libasound2-dev) - installPackages+=(libgstreamer1.0-dev) - installPackages+=(libgstreamer-plugins-base1.0-dev) - installPackages+=(libgstreamer-plugins-good1.0-dev) - installPackages+=(libgstreamer-plugins-bad1.0-dev) - # Support for cross-building to x86 (needed by WebEngine boot2qt builds) - installPackages+=(g++-multilib) - # python2 development package - installPackages+=(python-pip) - # python3 development package - installPackages+=(python3-dev) - installPackages+=(python3-pip) - installPackages+=(python3-virtualenv) - # Needed to be able to build Yocto - installPackages+=(chrpath) - installPackages+=(gawk) - installPackages+=(texinfo) - # Automates interactive applications (Needed by RTA to automate configure testing) - installPackages+=(expect) - installPackages+=(mesa-common-dev) - installPackages+=(libgl1-mesa-glx) - installPackages+=(libgl1-mesa-dev) - installPackages+=(libegl1-mesa-dev) - installPackages+=(curl) - installPackages+=(libicu-dev) - installPackages+=(zlib1g-dev) - installPackages+=(zlib1g) - installPackages+=(openjdk-8-jdk) - installPackages+=(libgtk-3-dev) - installPackages+=(ninja-build) - installPackages+=(libssl-dev) - installPackages+=(libxcursor-dev) - installPackages+=(libxcomposite-dev) - installPackages+=(libxdamage-dev) - installPackages+=(libxrandr-dev) - installPackages+=(libfontconfig1-dev) - installPackages+=(libxss-dev) - installPackages+=(libsrtp0-dev) - installPackages+=(libwebp-dev) - installPackages+=(libjsoncpp-dev) - installPackages+=(libopus-dev) - installPackages+=(libminizip-dev) - installPackages+=(libavutil-dev) - installPackages+=(libavformat-dev) - installPackages+=(libavcodec-dev) - installPackages+=(libevent-dev) - installPackages+=(bison) - installPackages+=(flex) - installPackages+=(gperf) - installPackages+=(libasound2-dev) - installPackages+=(libpulse-dev) - installPackages+=(libxtst-dev) - installPackages+=(libnspr4-dev) - installPackages+=(libnss3-dev) - installPackages+=(libopenal-dev) - installPackages+=(libbluetooth-dev) - #VirtualBox for RTA - installPackages+=(virtualbox) - installPackages+=(dkms) - - echo "Running update for apt" - sudo apt-get update - echo "Installing packages" - sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" || throw $ExceptionAPT -) -catch || { - case $ex_code in - $ExceptionAPTUpdate) - echo "Failed to run APT update." - exit 1; - ;; - $ExceptionAPT) - echo "Failed to install package." - sudo lsof /var/lib/dpkg/lock - exit 1; - ;; - $ExceptionSED) - echo "Failed to disable auto update." - exit 1; - ;; - esac -} +echo "Running update for apt" +sudo apt-get update +echo "Installing packages" +sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" -- cgit v1.2.3 From 1c6abfae014b3ece4d14d3dc7b9a22353cf18c66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Thu, 8 Mar 2018 13:41:36 +0200 Subject: Remove try_catch from common linux scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I9c7b472fa4c448f40c9adc6cc8a0d84cb9c5e74c Reviewed-by: Joni Jäntti Reviewed-by: Heikki Halmet --- coin/provisioning/common/linux/android_linux.sh | 107 ++++++++---------------- 1 file changed, 34 insertions(+), 73 deletions(-) diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh index a7b83fd7..696f7d29 100755 --- a/coin/provisioning/common/linux/android_linux.sh +++ b/coin/provisioning/common/linux/android_linux.sh @@ -37,7 +37,6 @@ # It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh" source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" @@ -62,75 +61,37 @@ toolsSourceFile="$basePath/$toolsFile" ndkTargetFile="/tmp/$ndkFile" ndkSourceFile="$basePath/$ndkFile" -ExceptionDownload=99 -ExceptionUnzipTools=100 -ExceptionUnzipNdk=101 -ExceptionRmTools=102 -ExceptionRmNdk=103 -ExceptionSdkManager=104 - -try -( - (DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile") || throw $ExceptionDownload - (DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile") || throw $ExceptionDownload - echo "Unzipping Android NDK to '$targetFolder'" - sudo unzip -q "$ndkTargetFile" -d "$targetFolder" || throw $ExceptionUnzipNdk - echo "Unzipping Android Tools to '$sdkTargetFolder'" - sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools - rm "$ndkTargetFile" || throw $ExceptionRmNdk - rm "$toolsTargetFile" || throw $ExceptionRmTools - - echo "Changing ownership of Android files." - if uname -a |grep -q "el6\|el7"; then - sudo chown -R qt:wheel "$targetFolder" - else - sudo chown -R qt:users "$targetFolder" - fi - - echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." - if [ "$http_proxy" != "" ]; then - proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1) - proxy_port=$(echo $proxy | cut -d':' -f3) - echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager - else - echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager - fi - - SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" - SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion" - SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64" - SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel" - - echo "Android SDK tools = $toolsVersion" >> ~/versions.txt - echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt - echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt - echo "Android NDK = $ndkVersion" >> ~/versions.txt -) -catch || { - case $ex_code in - $ExceptionDownload) - exit 1; - ;; - $ExceptionUnzipTools) - echo "Failed to unzip Android SDK Tools." - exit 1; - ;; - $ExceptionUnzipNdk) - echo "Failed to unzip Android NDK." - exit 1; - ;; - $ExceptionRmTools) - echo "Failed to remove temporary tools package '$toolsTargetFile'." - exit 1; - ;; - $ExceptionRmNdk) - echo "Failed to remove temporary NDK package '$ndkTargetFile'." - exit 1; - ;; - $ExceptionSdkManager) - echo "Failed to run sdkmanager." - exit 1; - ;; - esac -} - +DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile" +DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile" +echo "Unzipping Android NDK to '$targetFolder'" +sudo unzip -q "$ndkTargetFile" -d "$targetFolder" +echo "Unzipping Android Tools to '$sdkTargetFolder'" +sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" +rm "$ndkTargetFile" +rm "$toolsTargetFile" + +echo "Changing ownership of Android files." +if uname -a |grep -q "el6\|el7"; then + sudo chown -R qt:wheel "$targetFolder" +else + sudo chown -R qt:users "$targetFolder" +fi + +echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." +if [ "$http_proxy" != "" ]; then + proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1) + proxy_port=$(echo $proxy | cut -d':' -f3) + echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" +else + echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" +fi + +SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" +SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion" +SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64" +SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel" + +echo "Android SDK tools = $toolsVersion" >> ~/versions.txt +echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt +echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt +echo "Android NDK = $ndkVersion" >> ~/versions.txt -- cgit v1.2.3 From 250dd8c84eef62fbdb51856b367225adfabd643e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Thu, 8 Mar 2018 13:39:19 +0200 Subject: Remove try_catch codes from macOS 10.11 scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I7690ae186729b3a180b1d38c298a861d981dbf5d Reviewed-by: Joni Jäntti Reviewed-by: Heikki Halmet --- .../qtci-osx-10.11-x86_64/05-systemsetup.sh | 86 +++++----------------- coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh | 2 +- .../provisioning/qtci-osx-10.11-x86_64/20-xcode.sh | 3 - 3 files changed, 19 insertions(+), 72 deletions(-) diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh b/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh index 994dedf4..4a631b4f 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh +++ b/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh @@ -37,33 +37,19 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" - VNCPassword=qt NTS_IP=10.212.2.216 -ExceptionDisableScreensaver=100 -ExceptionSetInitialDelay=101 -ExceptionSetDelay=102 -ExceptionVNC=103 -ExceptionNTS=104 -ExceptionDisableScreensaverPassword=105 -ExceptionDisableSleep=106 - -try -( - echo "Disable Screensaver" - # For current session - defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver +echo "Disable Screensaver" +# For current session +defaults -currentHost write com.apple.screensaver idleTime 0 - echo "Disable sleep" - sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep +echo "Disable sleep" +sudo pmset sleep 0 displaysleep 0 - # For session after a reboot - mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver - ( - cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <"$HOME/Library/LaunchAgents/no-screensaver.plist" < @@ -87,54 +73,18 @@ try EOT - ) || throw $ExceptionDisableScreensaver - - defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword - - echo "Set keyboard type rates and delays" - # normal minimum is 15 (225 ms) - defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay - # normal minimum is 2 (30 ms) - defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay - echo "Enable remote desktop sharing" - sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC +defaults write com.apple.screensaver askForPassword -int 0 - echo "Set Network Test Server address to $NTS_IP in /etc/hosts" - echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS +echo "Set keyboard type rates and delays" +# normal minimum is 15 (225 ms) +defaults write -g InitialKeyRepeat -int 15 +# normal minimum is 2 (30 ms) +defaults write -g KeyRepeat -int 2 -) -catch || { - case $ex_code in - $ExceptionDisableScreensaver) - echo "Failed to disable screensaver." - exit 1; - ;; - $ExceptionSetInitialDelay) - echo "Failed to set initial delay of keyboard." - exit 1; - ;; - $ExceptionSetDelay) - echo "Failed to set delay of keyboard." - exit 1; - ;; - $ExceptionVNC) - echo "Failed to enable VNC." - exit 1; - ;; - $ExceptionNTS) - echo "Failed to set NTS." - exit 1; - ;; - $ExceptionDisableScreensaverPassword) - echo "Failed to disable requiring of password after screensaver is enabled." - exit 1; - ;; - $ExceptionDisableSleep) - echo "Failed to disable sleep." - exit 1; - ;; +echo "Enable remote desktop sharing" +sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all - esac -} +echo "Set Network Test Server address to $NTS_IP in /etc/hosts" +echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh b/coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh index 9f66cc66..13b05040 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh +++ b/coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh @@ -39,7 +39,7 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh +# shellcheck source=../common/macos/InstallPKGFromURL.sh source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/XZ.pkg" diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh b/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh index b1e1d657..a067f637 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh +++ b/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh @@ -44,9 +44,6 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" - # shellcheck source=../common/macos/install_xcode.sh source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh" -- cgit v1.2.3 From 90261c1df5cb62a47b44d2d9b84c0753d6ebf9e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Wed, 7 Mar 2018 15:03:07 +0200 Subject: Remove try_catch codes from unix scripts Change-Id: Iabadbf28c65132ae614048cb98e92f57e3786056 Reviewed-by: Heikki Halmet --- .../unix/InstallFromCompressedFileFromURL.sh | 109 +++++----------- .../common/unix/check_and_set_proxy.sh | 17 +-- coin/provisioning/common/unix/squishInstall.sh | 142 ++++++--------------- 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" -- cgit v1.2.3 From a98b0f3d7989bedf6f0bcc1a83b52aad1d3baa3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Thu, 8 Mar 2018 13:30:24 +0200 Subject: Remove try_catch codes from common macOS scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I66291e2da5514499387b61e01ad85a652cd24d7b Reviewed-by: Tony Sarajärvi --- .../macos/InstallAppFromCompressedFileFromURL.sh | 117 +++++++-------------- .../provisioning/common/macos/InstallPKGFromURL.sh | 75 +++---------- coin/provisioning/common/macos/fbx_macos.sh | 35 +++--- .../common/macos/install-commandlinetools.sh | 56 +++------- coin/provisioning/common/macos/install_xcode.sh | 46 ++------ coin/provisioning/common/macos/java.sh | 98 ++++------------- 6 files changed, 106 insertions(+), 321 deletions(-) diff --git a/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh b/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh index 4d2ba1f8..d322e806 100755 --- a/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh +++ b/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh @@ -37,21 +37,11 @@ # uncompresses it and installs it by default # to /Applications/. This can be overridden by a target parameter. -# shellcheck source=try_catch.sh -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" +set -ex + # shellcheck source=DownloadURL.sh source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" -ExceptionDownload=99 -ExceptionCreateTmpFile=100 -ExceptionCreateTmpDirectory=101 -ExceptionUncompress=102 -ExceptionMoveApp=103 -ExceptionDeleteTmpFile=104 -ExceptionRemoveTmpDirectory=105 -ExceptionUnknownFormat=106 - - function InstallAppFromCompressedFileFromURL { url=$1 url_alt=$2 @@ -63,74 +53,39 @@ function InstallAppFromCompressedFileFromURL { target="/Applications/" fi - 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).$extension") || throw $ExceptionCreateTmpFile - # macOS 10.10 mktemp does require prefix - if [[ $OSTYPE == "darwin14" ]]; then - targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory - else - targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory - fi - (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 '$target'" - sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp - echo "Removing file '$targetFile'" - rm "$targetFile" || throw $ExceptionDeleteTmpFile - echo "Removing directory '$targetDirectory'" - rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory - ) + basefilename=${url##*/} + extension=${basefilename##*.} + filename=${basefilename%.*} + if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then + extension="tar.gz" + fi - 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'." - 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 - } + echo "Extension for file: $extension" + echo "Creating temporary file and directory" + targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") + # macOS 10.10 mktemp does require prefix + if [[ $OSTYPE == "darwin14" ]]; then + targetDirectory=$(mktemp -d -t '10.10') + else + targetDirectory=$(mktemp -d) + fi + (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 '$target'" + sudo mv "$targetDirectory/$appPrefix/"* "$target" + echo "Removing file '$targetFile'" + rm "$targetFile" + echo "Removing directory '$targetDirectory'" + rm -rf "$targetDirectory" } diff --git a/coin/provisioning/common/macos/InstallPKGFromURL.sh b/coin/provisioning/common/macos/InstallPKGFromURL.sh index 881086ba..f5c4e2e4 100755 --- a/coin/provisioning/common/macos/InstallPKGFromURL.sh +++ b/coin/provisioning/common/macos/InstallPKGFromURL.sh @@ -33,16 +33,7 @@ ## ############################################################################# -# shellcheck source=try_catch.sh -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" - -ExceptionCreateTmpFile=100 -ExceptionDownloadPrimaryUrl=101 -ExceptionDownloadAltUrl=102 -ExceptionSHA1=103 -ExceptionInstallerPKG=104 -ExceptionDeleteTmpFile=105 - +set -ex function InstallPKGFromURL { url=$1 @@ -50,55 +41,19 @@ function InstallPKGFromURL { expectedSha1=$3 targetDirectory=$4 - try - ( - echo "Creating temporary file" - targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") || trow $ExceptionCreateTmpFile - try - ( - echo "Downloading PKG from primary URL '$url'" - curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl - ) - catch || { - case $ex_code in - $ExceptionDownloadPrimaryUrl) - echo "Failed to download '$url' multiple times" - echo "Downloading PKG from alternative URL '$url_alt'" - curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl - ;; - esac - } - echo "Checking SHA1 on PKG '$targetFile'" - echo "$expectedSha1 *$targetFile" > $targetFile.sha1 - /usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1 - echo "Run installer on PKG" - sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG - echo "Removing file '$targetFile'" - rm "$targetFile" || throw $ExceptionDeleteTmpFile + echo "Creating temporary file" + targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") + echo "Downloading PKG from primary URL '$url'" + curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || ( + echo "Failed to download '$url' multiple times" + echo "Downloading PKG from alternative URL '$url_alt'" + curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" ) - - catch || { - case $ex_code in - $ExceptionCreateTmpFile) - echo "Failed to create temporary file" - exit 1; - ;; - $ExceptionDownloadAltUrl) - echo "Failed downloading PKG from primary and alternative URLs" - exit 1; - ;; - $ExceptionSHA1) - echo "Failed to check sha1sum." - exit 1; - ;; - $ExceptionInstallerPKG) - echo "Failed running installer on PKG." - exit 1; - ;; - $ExceptionDeleteTmpFile) - echo "Failed deleting temporary file." - exit 1; - ;; - esac - } + echo "Checking SHA1 on PKG '$targetFile'" + echo "$expectedSha1 *$targetFile" > $targetFile.sha1 + /usr/bin/shasum --check $targetFile.sha1 + echo "Run installer on PKG" + sudo installer -package "$targetFile" -target "$targetDirectory" + echo "Removing file '$targetFile'" + rm "$targetFile" } diff --git a/coin/provisioning/common/macos/fbx_macos.sh b/coin/provisioning/common/macos/fbx_macos.sh index b2ec8154..40776938 100755 --- a/coin/provisioning/common/macos/fbx_macos.sh +++ b/coin/provisioning/common/macos/fbx_macos.sh @@ -34,8 +34,8 @@ # This script installs FBX SDK -# shellcheck source=./../unix/try_catch.sh -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" +set -ex + # shellcheck source=../unix/SetEnvVar.sh source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" @@ -50,27 +50,18 @@ installer="$targetFolder/fbx20161_2_fbxsdk_clang_macos.pkg" ExceptionExtractPrimaryUrl=100 -try -( - echo "Extracting '$cachedUrl'" - tar -xzf "$cachedUrl" -C "$targetFolder" || throw $ExceptionExtractPrimaryUrl +echo "Extracting '$cachedUrl'" +tar -xzf "$cachedUrl" -C "$targetFolder" || ( + echo "Failed to uncompress from '$cachedUrl'" + echo "Downloading from '$officialUrl'" + curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" + echo "Checking SHA1 on PKG '$targetFile'" + echo "$sha1 *$targetFile" > $targetFile.sha1 + shasum --check $targetFile.sha1 + echo "Extracting '$targetFile'" + tar -xzf "$targetFile" -C "$targetFolder" ) -catch || { - case $ex_code in - $ExceptionExtractPrimaryUrl) - set -e - echo "Failed to uncompress from '$cachedUrl'" - echo "Downloading from '$officialUrl'" - curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" || exit 1; - echo "Checking SHA1 on PKG '$targetFile'" - echo "$sha1 *$targetFile" > $targetFile.sha1 - shasum --check $targetFile.sha1 - echo "Extracting '$targetFile'" - tar -xzf "$targetFile" -C "$targetFolder" || exit 1; - ;; - esac -} -set -e + rm -rf "$targetFile" echo "Running installer for '$installer'" sudo installer -pkg "$installer" -target "/" diff --git a/coin/provisioning/common/macos/install-commandlinetools.sh b/coin/provisioning/common/macos/install-commandlinetools.sh index d57e1d2f..18ff1036 100755 --- a/coin/provisioning/common/macos/install-commandlinetools.sh +++ b/coin/provisioning/common/macos/install-commandlinetools.sh @@ -33,56 +33,30 @@ ## ############################################################################# source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" set -ex # Command line tools is need by homebrew function InstallCommandLineTools { - - ExceptionMount=101 - ExceptionInstall=102 - ExceptionUnmount=103 - url=$1 url_alt=$2 expectedSha1=$3 packageName=$4 version=$5 - try - ( - DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName - echo "Mounting $packageName" - hdiutil attach /tmp/$packageName || throw $ExceptionMount - cd "/Volumes/Command Line Developer Tools" - echo "Installing" - sudo installer -verbose -pkg *.pkg -target / || throw $ExceptionInstall - cd / - # Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted - sleep 3 - echo "Unmounting" - umount /Volumes/Command\ Line\ Developer\ Tools/ || throw $ExceptionUnmount - echo "Removing $packageName" - rm /tmp/$packageName - - echo "Command Line Tools = $version" >> ~/versions.txt - ) - catch || { - case $ex_code in - $ExceptionMount) - echo "Failed to mount" - exit 1; - ;; - $ExceptionInstall) - echo "Failed to install" - exit 1; - ;; - $ExceptionUnmount) - echo "Failed to unmount" - exit 1; - - esac - } - + DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName + echo "Mounting $packageName" + hdiutil attach /tmp/$packageName + cd "/Volumes/Command Line Developer Tools" + echo "Installing" + sudo installer -verbose -pkg *.pkg -target / + cd / + # Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted + sleep 3 + echo "Unmounting" + umount /Volumes/Command\ Line\ Developer\ Tools/ + echo "Removing $packageName" + rm /tmp/$packageName + + echo "Command Line Tools = $version" >> ~/versions.txt } diff --git a/coin/provisioning/common/macos/install_xcode.sh b/coin/provisioning/common/macos/install_xcode.sh index 1fe611b3..e569bee5 100755 --- a/coin/provisioning/common/macos/install_xcode.sh +++ b/coin/provisioning/common/macos/install_xcode.sh @@ -44,48 +44,18 @@ -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" - -function InstallXCode() -{ - ExceptionCPIO=103 - ExceptionAcceptLicense=105 - ExceptionDeveloperMode=113 - +function InstallXCode() { sourceFile=$1 version=$2 - try - ( - echo "Uncompressing and installing '$sourceFile'" - xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi) || throw $ExceptionCPIO - - echo "Accept license" - sudo xcodebuild -license accept || throw $ExceptionAcceptLicense + echo "Uncompressing and installing '$sourceFile'" + xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi) - echo "Enabling developer mode, so that using lldb does not require interactive password entry" - sudo /usr/sbin/DevToolsSecurity -enable || throw $ExceptionDeveloperMode + echo "Accept license" + sudo xcodebuild -license accept - echo "Xcode = $version" >> ~/versions.txt - ) - catch || { - case $ex_code in - $ExceptionCPIO) - echo "Failed to unarchive .cpio." - exit 1; - ;; - $ExceptionDeveloperMode) - echo "Failed to enable developer mode." - exit 1; - ;; - $ExceptionAcceptLicense) - echo "Failed to accept license." - exit 1; - ;; - - esac - } + echo "Enabling developer mode, so that using lldb does not require interactive password entry" + sudo /usr/sbin/DevToolsSecurity -enable + echo "Xcode = $version" >> ~/versions.txt } - diff --git a/coin/provisioning/common/macos/java.sh b/coin/provisioning/common/macos/java.sh index 0961e21a..c70e779b 100755 --- a/coin/provisioning/common/macos/java.sh +++ b/coin/provisioning/common/macos/java.sh @@ -39,94 +39,34 @@ set -ex echo "Installing Java Development Kit" -# shellcheck source=../unix/try_catch.sh -source "${BASH_SOURCE%/*}/../unix/try_catch.sh" - -ExceptionDownloadPrimaryUrl=100 -ExceptionDownloadAltUrl=101 -ExceptionSHA1=102 -ExceptionAttachImage=103 -ExceptionInstall=104 -ExceptionDetachImage=105 -ExceptionRemoveTmpFile=106 -ExceptionDisableAutoUpdate=107 - - url=http://ci-files01-hki.intra.qt.io/input/mac/jdk-8u102-macosx-x64.dmg url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg targetFile=/tmp/jdk-8u102-macosx-x64.dmg expectedSha1=1405af955f14e32aae187b5754a716307db22104 -try -( - try - ( - echo "Downloading from primary URL '$url'" - curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl - ) - catch || { - case $ex_code in - $ExceptionDownloadPrimaryUrl) - echo "Failed to download '$url' multiple times" - echo "Downloading tar.gz from alternative URL '$url_alt'" - curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl - ;; - esac - } - echo "Checking SHA1 on '$targetFile'" - echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1 +echo "Downloading from primary URL '$url'" +curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || ( + echo "Failed to download '$url' multiple times" + echo "Downloading file from alternative URL '$url_alt'" + curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" +) - echo Mounting DMG - hdiutil attach "$targetFile" || throw $ExceptionAttachImage +echo "Checking SHA1 on '$targetFile'" +echo "$expectedSha1 *$targetFile" | shasum --check - echo Installing JDK - (cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /) || throw $ExceptionInstall +echo Mounting DMG +hdiutil attach "$targetFile" - disk=`hdiutil info | grep '/Volumes/JDK 8 Update 102' | awk '{print $1}'` - hdiutil detach $disk || throw $ExceptionDetachImage +echo Installing JDK +cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target / - echo "Removing temporary file '$targetFile'" - rm "$targetFile" || throw $ExceptionRemoveTmpFile +disk=`hdiutil info | grep '/Volumes/JDK 8 Update 102' | awk '{print $1}'` +hdiutil detach $disk - echo "Disable auto update" - sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false || throw $ExceptionDisableAutoUpdate +echo "Removing temporary file '$targetFile'" +rm "$targetFile" - echo "JDK Version = 8 update 102" >> ~/versions.txt -) -catch || { - case $ex_code in - $ExceptionDownloadPrimaryUrl) - echo "Failed to download JDK from primary URL." - exit 1; - ;; - $ExceptionDownloadAltUrl) - echo "Failed to download JDK from alternative URL." - exit 1; - ;; - $ExceptionSHA1) - echo "Failed to check SHA1." - exit 1; - ;; - $ExceptionAttachImage) - echo "Failed to attach image." - exit 1; - ;; - $ExceptionInstall) - echo "Failed to install JDK." - exit 1; - ;; - $ExceptionDetachImage) - echo "Failed to detach image." - exit 1; - ;; - $ExceptionRemoveTmpFile) - echo "Failed to remove temporary file." - exit 1; - ;; - $ExceptionDisableAutoUpdate) - echo "Failed to disable auto update." - exit 1; - ;; +echo "Disable auto update" +sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false - esac -} +echo "JDK Version = 8 update 102" >> ~/versions.txt -- cgit v1.2.3 From 2f9a2f65e5497d1620aa9edbea8d4523ffe5ce89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Thu, 8 Mar 2018 13:37:14 +0200 Subject: Remove try_catch codes from macOS 10.12 provisioning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I57fbfdef3e8105e9e66c576ef545fc6c22400ac7 Reviewed-by: Joni Jäntti Reviewed-by: Heikki Halmet --- .../qtci-macos-10.12-x86_64/05-systemsetup.sh | 86 +++++----------------- coin/provisioning/qtci-macos-10.12-x86_64/15-xz.sh | 2 +- .../qtci-macos-10.12-x86_64/20-xcode.sh | 3 - .../qtci-macos-10.12-x86_64/30-android.sh | 68 ++++------------- .../qtci-macos-10.12-x86_64/35-openssl.sh | 79 +++++--------------- .../qtci-macos-10.12-x86_64/40-qnx700.sh | 44 +++-------- 6 files changed, 63 insertions(+), 219 deletions(-) diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh b/coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh index 6420efe7..6f926777 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh @@ -37,33 +37,19 @@ set -ex # This script modified system settings for automated use -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" - VNCPassword=qt NTS_IP=10.212.2.216 -ExceptionDisableScreensaver=100 -ExceptionSetInitialDelay=101 -ExceptionSetDelay=102 -ExceptionVNC=103 -ExceptionNTS=104 -ExceptionDisableScreensaverPassword=105 -ExceptionDisableSleep=106 - -try -( - echo "Disable Screensaver" - # For current session - defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver +echo "Disable Screensaver" +# For current session +defaults -currentHost write com.apple.screensaver idleTime 0 - echo "Disable sleep" - sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep +echo "Disable sleep" +sudo pmset sleep 0 displaysleep 0 - # For session after a reboot - mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver - ( - cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <"$HOME/Library/LaunchAgents/no-screensaver.plist" < @@ -87,53 +73,17 @@ try EOT - ) || throw $ExceptionDisableScreensaver - - defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword - - echo "Set keyboard type rates and delays" - # normal minimum is 15 (225 ms) - defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay - # normal minimum is 2 (30 ms) - defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay - echo "Enable remote desktop sharing" - sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC +defaults write com.apple.screensaver askForPassword -int 0 - echo "Set Network Test Server address to $NTS_IP in /etc/hosts" - echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS +echo "Set keyboard type rates and delays" +# normal minimum is 15 (225 ms) +defaults write -g InitialKeyRepeat -int 15 +# normal minimum is 2 (30 ms) +defaults write -g KeyRepeat -int 2 -) -catch || { - case $ex_code in - $ExceptionDisableScreensaver) - echo "Failed to disable screensaver." - exit 1; - ;; - $ExceptionSetInitialDelay) - echo "Failed to set initial delay of keyboard." - exit 1; - ;; - $ExceptionSetDelay) - echo "Failed to set delay of keyboard." - exit 1; - ;; - $ExceptionVNC) - echo "Failed to enable VNC." - exit 1; - ;; - $ExceptionNTS) - echo "Failed to set NTS." - exit 1; - ;; - $ExceptionDisableScreensaverPassword) - echo "Failed to disable requiring of password after screensaver is enabled." - exit 1; - ;; - $ExceptionDisableSleep) - echo "Failed to disable sleep." - exit 1; - ;; +echo "Enable remote desktop sharing" +sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all - esac -} +echo "Set Network Test Server address to $NTS_IP in /etc/hosts" +echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/15-xz.sh b/coin/provisioning/qtci-macos-10.12-x86_64/15-xz.sh index 34202209..6d3a2bb5 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/15-xz.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/15-xz.sh @@ -39,7 +39,7 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh +# shellcheck source=../common/macos/InstallPKGFromURL source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/XZ.pkg" diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/20-xcode.sh b/coin/provisioning/qtci-macos-10.12-x86_64/20-xcode.sh index a0611154..84a6d06f 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/20-xcode.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/20-xcode.sh @@ -44,9 +44,6 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" - # shellcheck source=../common/macos/install_xcode.sh source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh" diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh b/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh index a46cb335..d206369c 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh @@ -39,8 +39,6 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" # shellcheck source=../common/unix/SetEnvVar.sh source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" @@ -64,57 +62,23 @@ toolsSourceFile="$basePath/$toolsFile" ndkTargetFile="/tmp/$ndkFile" ndkSourceFile="$basePath/$ndkFile" -ExceptionUnzipTools=100 -ExceptionUnzipNdk=101 -ExceptionRmTools=102 -ExceptionRmNdk=103 -ExceptionSdkManager=104 +echo "Unzipping Android NDK to '$targetFolder'" +sudo unzip -q "$ndkSourceFile" -d "$targetFolder" +echo "Unzipping Android Tools to '$sdkTargetFolder'" +sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder" -try -( - echo "Unzipping Android NDK to '$targetFolder'" - sudo unzip -q "$ndkSourceFile" -d "$targetFolder" || throw $ExceptionUnzipNdk - echo "Unzipping Android Tools to '$sdkTargetFolder'" - sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools +echo "Changing ownership of Android files." +sudo chown -R qt:wheel "$targetFolder" - echo "Changing ownership of Android files." - sudo chown -R qt:wheel "$targetFolder" +echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." +(echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" - echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." - (echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager - - SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" - SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion" - SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64" - SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel" - - echo "Android SDK tools = $toolsVersion" >> ~/versions.txt - echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt - echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt - echo "Android NDK = $ndkVersion" >> ~/versions.txt -) -catch || { - case $ex_code in - $ExceptionUnzipTools) - echo "Failed to unzip Android SDK Tools." - exit 1; - ;; - $ExceptionUnzipNdk) - echo "Failed to unzip Android NDK." - exit 1; - ;; - $ExceptionRmTools) - echo "Failed to remove temporary tools package '$toolsTargetFile'." - exit 1; - ;; - $ExceptionRmNdk) - echo "Failed to remove temporary NDK package '$ndkTargetFile'." - exit 1; - ;; - $ExceptionSdkManager) - echo "Failed to run sdkmanager." - exit 1; - ;; - esac -} +SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" +SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion" +SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64" +SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel" +echo "Android SDK tools = $toolsVersion" >> ~/versions.txt +echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt +echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt +echo "Android NDK = $ndkVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/35-openssl.sh b/coin/provisioning/qtci-macos-10.12-x86_64/35-openssl.sh index c169799b..a68704f9 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/35-openssl.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/35-openssl.sh @@ -37,8 +37,6 @@ set -ex -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" # shellcheck source=../common/unix/InstallFromCompressedFileFromURL.sh source "${BASH_SOURCE%/*}/../common/unix/InstallFromCompressedFileFromURL.sh" # shellcheck source=../common/unix/SetEnvVar.sh @@ -54,68 +52,25 @@ opensslSha1="5f26a624479c51847ebd2f22bb9f84b3b44dcb44" # QTQAINFRA-1195 opensslTargetLocation="/usr/local/opt/openssl" -ExceptionCD=100 -ExceptionConfig=101 -ExceptionMake=102 -ExceptionInstall=103 -ExceptionLN=104 -ExceptionCertificate=105 -ExceptionCleanup=106 +InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion" +cd "/tmp/openssl-$opensslVersion" +pwd +sudo ./config --prefix=/usr/local/openssl-$opensslVersion +echo "Running 'make' for OpenSSL" +sudo make --silent > /tmp/openssl_make.log 2>&1 +echo "Running 'make install' for OpenSSL" +sudo make --silent install > /tmp/openssl_make_install.log 2>&1 -try -( - InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion" - cd "/tmp/openssl-$opensslVersion" || throw $ExceptionCD - pwd - sudo ./config --prefix=/usr/local/openssl-$opensslVersion || throw $ExceptionConfig - echo "Running 'make' for OpenSSL" - sudo make --silent > /tmp/openssl_make.log 2>&1 || throw $ExceptionMake - echo "Running 'make install' for OpenSSL" - sudo make --silent install > /tmp/openssl_make_install.log 2>&1 || throw $ExceptionInstall +path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/') +sudo mkdir -p "$path" +sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation - path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/') - sudo mkdir -p "$path" - sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation || throw $ExceptionLN +SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\"" +SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\"" - SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\"" - SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\"" +security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem +security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem - security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate - security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate +sudo rm -rf /tmp/openssl-$opensslVersion - sudo rm -rf /tmp/openssl-$opensslVersion || throw $ExceptionCleanup - - echo "OpenSSL = $opensslVersion" >> ~/versions.txt -) -catch || { - case $ex_code in - $ExceptionCD) - echo "Failed to change directory to /tmp/openssl-$opensslVersion." - exit 1; - ;; - $ExceptionConfig) - echo "Failed to run config for OpenSSL." - exit 1; - ;; - $ExceptionMake) - echo "Failed to run 'make' for OpenSSL." - exit 1; - ;; - $ExceptionInstall) - echo "Failed to run 'make install' for OpenSSL." - exit 1; - ;; - $ExceptionLN) - echo "Failed to create a soft link for OpenSSL." - exit 1; - ;; - $ExceptionCertificate) - echo "Failed to install Certificate for OpenSSL." - exit 1; - ;; - $ExceptionCleanup) - echo "Failed to clean up /tmp/openssl-$opensslVersion." - exit 1; - ;; - esac -} +echo "OpenSSL = $opensslVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/40-qnx700.sh b/coin/provisioning/qtci-macos-10.12-x86_64/40-qnx700.sh index d85e3c8e..a645fe56 100755 --- a/coin/provisioning/qtci-macos-10.12-x86_64/40-qnx700.sh +++ b/coin/provisioning/qtci-macos-10.12-x86_64/40-qnx700.sh @@ -35,45 +35,23 @@ # This script installs QNX 7. -# shellcheck source=../common/unix/try_catch.sh -source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" - targetFolder="/opt/" sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip" folderName="qnx700" -ExceptionExtract=100 -ExceptionExtract2=101 - - -try -( - sudo mkdir -p "$targetFolder" +sudo mkdir -p "$targetFolder" - echo "Extracting QNX 7" - sudo unzip -q "$sourceFile" -d "$targetFolder" || throw $ExceptionExtract +echo "Extracting QNX 7" +sudo unzip -q "$sourceFile" -d "$targetFolder" - sudo chown -R qt:wheel "$targetFolder"/"$folderName" +sudo chown -R qt:wheel "$targetFolder"/"$folderName" - # Verify that we have last file in zip - if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then - throw $ExceptionExtract2 - fi +# Verify that we have last file in zip +if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then + exit 1 +fi - # Set env variables - echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc - echo "QNX SDP = 7.0.0" >> ~/versions.txt -) -catch || { - case $ex_code in - $ExceptionExtract) - echo "Failed to unzip QNX 7." - exit 1; - ;; - $ExceptionExtract2) - echo "The last file in the zip did not get extracted." - exit 1; - ;; - esac -} +# Set env variables +echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc +echo "QNX SDP = 7.0.0" >> ~/versions.txt -- cgit v1.2.3 From 1b5f8cec03297af93150537cc3c8eb0bcd01f3fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tony=20Saraj=C3=A4rvi?= Date: Thu, 8 Mar 2018 13:44:31 +0200 Subject: Remove try_catch.sh helper script MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I3981920bb8085ffbad89c31e0fd628a6e11146b6 Reviewed-by: Joni Jäntti Reviewed-by: Heikki Halmet --- coin/provisioning/common/unix/try_catch.sh | 64 ------------------------------ 1 file changed, 64 deletions(-) delete mode 100755 coin/provisioning/common/unix/try_catch.sh diff --git a/coin/provisioning/common/unix/try_catch.sh b/coin/provisioning/common/unix/try_catch.sh deleted file mode 100755 index 560d040d..00000000 --- a/coin/provisioning/common/unix/try_catch.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env bash - -############################################################################# -## -## Copyright (C) 2017 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the test suite of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL21$ -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## GNU Lesser General Public License Usage -## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 2.1 or version 3 as published by the Free -## Software Foundation and appearing in the file LICENSE.LGPLv21 and -## LICENSE.LGPLv3 included in the packaging of this file. Please review the -## following information to ensure the GNU Lesser General Public License -## requirements will be met: https://www.gnu.org/licenses/lgpl.html and -## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -## -## As a special exception, The Qt Company gives you certain additional -## rights. These rights are described in The Qt Company LGPL Exception -## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -## -## $QT_END_LICENSE$ -## -############################################################################# - -echo "Sourcing try_catch.sh" - -function try() -{ - [[ $- = *e* ]]; SAVED_OPT_E=$? - set +e -} - -function throw() -{ - exit "$1" -} - -function catch() -{ - export ex_code=$? - (( SAVED_OPT_E )) && set +e - return $ex_code -} - -function throwErrors() -{ - set -e -} - -function ignoreErrors() -{ - set +e -} -- cgit v1.2.3 From a6feaec2877d9089d9b9ba5c934b89a4de78de42 Mon Sep 17 00:00:00 2001 From: Heikki Halmet Date: Sat, 17 Mar 2018 23:03:08 +0200 Subject: Provisioning: Fix java installation for mac MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I3b6672e671720416af71631c2f9ce814f07e596a Reviewed-by: Tony Sarajärvi --- coin/provisioning/common/macos/java.sh | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/coin/provisioning/common/macos/java.sh b/coin/provisioning/common/macos/java.sh index c70e779b..c5222a55 100755 --- a/coin/provisioning/common/macos/java.sh +++ b/coin/provisioning/common/macos/java.sh @@ -39,32 +39,23 @@ set -ex echo "Installing Java Development Kit" -url=http://ci-files01-hki.intra.qt.io/input/mac/jdk-8u102-macosx-x64.dmg -url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg -targetFile=/tmp/jdk-8u102-macosx-x64.dmg -expectedSha1=1405af955f14e32aae187b5754a716307db22104 +targetFile=jdk-8u102-macosx-x64.dmg -echo "Downloading from primary URL '$url'" -curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || ( - echo "Failed to download '$url' multiple times" - echo "Downloading file from alternative URL '$url_alt'" - curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" -) +url=ci-files01-hki.intra.qt.io:/hdd/www/input/mac +# url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg -echo "Checking SHA1 on '$targetFile'" -echo "$expectedSha1 *$targetFile" | shasum --check +echo "Mounting $targetFile" +sudo mount "$url" /Volumes -echo Mounting DMG -hdiutil attach "$targetFile" +sudo cp "/Volumes/$targetFile" /tmp +sudo umount /Volumes +sudo hdiutil attach "/tmp/$targetFile" echo Installing JDK cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target / -disk=`hdiutil info | grep '/Volumes/JDK 8 Update 102' | awk '{print $1}'` -hdiutil detach $disk - -echo "Removing temporary file '$targetFile'" -rm "$targetFile" +echo "Unmounting $targetFile" +sudo hdiutil unmount /Volumes/JDK\ 8\ Update\ 102/ -force echo "Disable auto update" sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false -- cgit v1.2.3