aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-04-29 20:25:03 +0200
committerLiang Qi <liang.qi@qt.io>2018-04-29 20:25:03 +0200
commit6840a639ec015d153b7eecf1661e233197d75d4b (patch)
treed99c7c51712056b1ca59fc7c5a9e5d5ff96b165e
parentcddb2254c3232837380812ee30d9eb1c75039d08 (diff)
parent889cdbf4a8f90e7580f55d341006f49f12f9b9c7 (diff)
Merge remote-tracking branch 'origin/5.11' into dev
-rwxr-xr-xcoin/provisioning/common/linux/android_linux.sh13
-rwxr-xr-xcoin/provisioning/common/linux/cmake_linux.sh5
-rwxr-xr-xcoin/provisioning/common/linux/disable-ntp_linux.sh2
-rwxr-xr-xcoin/provisioning/common/linux/fbx_linux.sh3
-rwxr-xr-xcoin/provisioning/common/linux/integrity.sh2
-rwxr-xr-xcoin/provisioning/common/linux/open62541.sh6
-rwxr-xr-xcoin/provisioning/common/linux/openssl_for_android_linux.sh2
-rwxr-xr-xcoin/provisioning/common/linux/qnx_700.sh1
-rwxr-xr-xcoin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh2
-rwxr-xr-xcoin/provisioning/common/macos/InstallPKGFromURL.sh4
-rwxr-xr-xcoin/provisioning/common/macos/fbx_macos.sh2
-rwxr-xr-xcoin/provisioning/common/macos/install-commandlinetools.sh9
-rwxr-xr-xcoin/provisioning/common/macos/python2.sh2
-rwxr-xr-xcoin/provisioning/common/macos/python3.sh2
-rwxr-xr-xcoin/provisioning/common/macos/sha1sum-compatibility.sh1
-rwxr-xr-xcoin/provisioning/common/unix/DownloadURL.sh6
-rwxr-xr-xcoin/provisioning/common/unix/check_and_set_proxy.sh1
-rwxr-xr-xcoin/provisioning/common/unix/libclang.sh10
-rwxr-xr-xcoin/provisioning/common/unix/squishInstall.sh14
-rw-r--r--coin/provisioning/common/windows/03-conan.ps12
-rw-r--r--coin/provisioning/common/windows/3dstudio_3rdparty.ps12
-rw-r--r--coin/provisioning/common/windows/android-openssl.ps12
-rw-r--r--coin/provisioning/common/windows/android.ps18
-rw-r--r--coin/provisioning/common/windows/cmake.ps12
-rw-r--r--coin/provisioning/common/windows/helpers.ps148
-rw-r--r--coin/provisioning/common/windows/icu.ps12
-rw-r--r--coin/provisioning/common/windows/jom.ps14
-rw-r--r--coin/provisioning/common/windows/libusb.ps12
-rw-r--r--coin/provisioning/common/windows/mesa_llvmpipe.ps11
-rw-r--r--coin/provisioning/common/windows/mqtt_broker.ps12
-rw-r--r--coin/provisioning/common/windows/msvc-2013-update5.ps18
-rw-r--r--coin/provisioning/common/windows/msvc_2015_update3_patch.ps12
-rw-r--r--coin/provisioning/common/windows/mysql.ps124
-rw-r--r--coin/provisioning/common/windows/ninja.ps14
-rw-r--r--coin/provisioning/common/windows/postgresql.ps118
-rw-r--r--coin/provisioning/common/windows/python.ps12
-rw-r--r--coin/provisioning/common/windows/python3.ps13
-rw-r--r--coin/provisioning/common/windows/squishInstall.ps16
-rw-r--r--coin/provisioning/common/windows/winrtrunner.ps12
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh3
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/03-install-rhel-epel.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/06-cmake.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/07-qnx_700.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/08-integrity.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/09-disable_selinux.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/10-openssl_for_android_linux.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/22-mqtt_broker.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-fbx.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-install_icu.sh24
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/40-android_linux.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/50-open62541.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/99-version.sh48
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86/01-systemsetup.sh59
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86/02-apt.sh55
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86/90-squish.sh3
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/99-version.sh46
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/02-disable-ntp.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/09-cmake.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/18-icc.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/22-mqtt_broker.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/50-open62541.sh1
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/99-version.sh48
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/90-signing-tools.ps12
-rw-r--r--coin/provisioning/qtci-windows-7-x86/04-msys.ps12
70 files changed, 426 insertions, 133 deletions
diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh
index 5679c4c6..68e77dd1 100755
--- a/coin/provisioning/common/linux/android_linux.sh
+++ b/coin/provisioning/common/linux/android_linux.sh
@@ -37,8 +37,11 @@
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
+# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
+# shellcheck source=../unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/android"
@@ -78,10 +81,11 @@ else
fi
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
+# shellcheck disable=SC2031
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"
+ 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
@@ -91,12 +95,13 @@ SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
+# shellcheck disable=SC2129
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
-cd $sdkTargetFolder/tools/bin
+cd "$sdkTargetFolder/tools/bin"
echo "y" | ./sdkmanager --install "system-images;android-21;google_apis;x86"
echo "no" | ./avdmanager create avd -n x86emulator -k "system-images;android-21;google_apis;x86" -c 2048M -f
# Purely informative, show the list of avd devices
diff --git a/coin/provisioning/common/linux/cmake_linux.sh b/coin/provisioning/common/linux/cmake_linux.sh
index 7154d822..9b4f6851 100755
--- a/coin/provisioning/common/linux/cmake_linux.sh
+++ b/coin/provisioning/common/linux/cmake_linux.sh
@@ -37,7 +37,9 @@
# CMake is needed for autotests that verify that Qt can be built with CMake
+# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="3.6.2"
@@ -50,3 +52,6 @@ appPrefix="cmake-$version-Linux-x86_64"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
SetEnvVar "PATH" "$targetFolder/bin:\$PATH"
+
+echo "CMake = $version" >> ~/versions.txt
+
diff --git a/coin/provisioning/common/linux/disable-ntp_linux.sh b/coin/provisioning/common/linux/disable-ntp_linux.sh
index 56f98c52..b73e44a5 100755
--- a/coin/provisioning/common/linux/disable-ntp_linux.sh
+++ b/coin/provisioning/common/linux/disable-ntp_linux.sh
@@ -40,5 +40,5 @@ echo "Disable Network Time Protocol (NTP)"
if uname -a |grep -q "Ubuntu"; then
sudo timedatectl set-ntp false
else
- systemctl &>/dev/null && sudo systemctl disable ntpd || sudo /sbin/chkconfig ntpd off
+ (systemctl &>/dev/null && sudo systemctl disable ntpd) || sudo /sbin/chkconfig ntpd off
fi
diff --git a/coin/provisioning/common/linux/fbx_linux.sh b/coin/provisioning/common/linux/fbx_linux.sh
index a6c00f61..f04eb89f 100755
--- a/coin/provisioning/common/linux/fbx_linux.sh
+++ b/coin/provisioning/common/linux/fbx_linux.sh
@@ -34,7 +34,10 @@
#############################################################################
# This script installs FBX SDK
+
+# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
set -e
diff --git a/coin/provisioning/common/linux/integrity.sh b/coin/provisioning/common/linux/integrity.sh
index e291358d..180881a3 100755
--- a/coin/provisioning/common/linux/integrity.sh
+++ b/coin/provisioning/common/linux/integrity.sh
@@ -35,7 +35,9 @@
# This script installs INTEGRITY
+# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="11.4.4"
diff --git a/coin/provisioning/common/linux/open62541.sh b/coin/provisioning/common/linux/open62541.sh
index 4d907f17..433748d1 100755
--- a/coin/provisioning/common/linux/open62541.sh
+++ b/coin/provisioning/common/linux/open62541.sh
@@ -35,6 +35,8 @@
set +e
+# shellcheck disable=SC1090
+
# We need to source to be able to use cmake in the shell
if uname -a |grep -q "Ubuntu"; then
source ~/.profile
@@ -44,11 +46,13 @@ fi
set -ex
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
TEMPDIR=$(mktemp --directory) || echo "Failed to create temporary directory"
+# shellcheck disable=SC2064
trap "sudo rm -fr $TEMPDIR" EXIT
-cd $TEMPDIR
+cd "$TEMPDIR"
sudo pip install --upgrade pip
sudo pip install six
diff --git a/coin/provisioning/common/linux/openssl_for_android_linux.sh b/coin/provisioning/common/linux/openssl_for_android_linux.sh
index 30022c39..ed91c5ab 100755
--- a/coin/provisioning/common/linux/openssl_for_android_linux.sh
+++ b/coin/provisioning/common/linux/openssl_for_android_linux.sh
@@ -36,7 +36,9 @@
# This script install OpenSSL from sources.
# Requires GCC and Perl to be in PATH.
+# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="1.0.2g"
diff --git a/coin/provisioning/common/linux/qnx_700.sh b/coin/provisioning/common/linux/qnx_700.sh
index b53c1d26..49fb7243 100755
--- a/coin/provisioning/common/linux/qnx_700.sh
+++ b/coin/provisioning/common/linux/qnx_700.sh
@@ -37,6 +37,7 @@
set -ex
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/"
diff --git a/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh b/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh
index d20a4ed8..1dd48e87 100755
--- a/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh
+++ b/coin/provisioning/common/macos/InstallAppFromCompressedFileFromURL.sh
@@ -39,7 +39,7 @@
set -ex
-# shellcheck source=DownloadURL.sh
+# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
function InstallAppFromCompressedFileFromURL {
diff --git a/coin/provisioning/common/macos/InstallPKGFromURL.sh b/coin/provisioning/common/macos/InstallPKGFromURL.sh
index f5c4e2e4..77ef128a 100755
--- a/coin/provisioning/common/macos/InstallPKGFromURL.sh
+++ b/coin/provisioning/common/macos/InstallPKGFromURL.sh
@@ -50,8 +50,8 @@ function InstallPKGFromURL {
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
)
echo "Checking SHA1 on PKG '$targetFile'"
- echo "$expectedSha1 *$targetFile" > $targetFile.sha1
- /usr/bin/shasum --check $targetFile.sha1
+ 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'"
diff --git a/coin/provisioning/common/macos/fbx_macos.sh b/coin/provisioning/common/macos/fbx_macos.sh
index 40776938..7e58a107 100755
--- a/coin/provisioning/common/macos/fbx_macos.sh
+++ b/coin/provisioning/common/macos/fbx_macos.sh
@@ -48,8 +48,6 @@ targetFolder="/tmp"
targetFile="$targetFolder/$fileName"
installer="$targetFolder/fbx20161_2_fbxsdk_clang_macos.pkg"
-ExceptionExtractPrimaryUrl=100
-
echo "Extracting '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || (
echo "Failed to uncompress from '$cachedUrl'"
diff --git a/coin/provisioning/common/macos/install-commandlinetools.sh b/coin/provisioning/common/macos/install-commandlinetools.sh
index 18ff1036..2be234e7 100755
--- a/coin/provisioning/common/macos/install-commandlinetools.sh
+++ b/coin/provisioning/common/macos/install-commandlinetools.sh
@@ -32,6 +32,7 @@
## $QT_END_LICENSE$
##
#############################################################################
+# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
set -ex
@@ -44,19 +45,19 @@ function InstallCommandLineTools {
packageName=$4
version=$5
- DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName
+ DownloadURL "$url" "$url_alt" "$expectedSha1" "/tmp/$packageName"
echo "Mounting $packageName"
- hdiutil attach /tmp/$packageName
+ hdiutil attach "/tmp/$packageName"
cd "/Volumes/Command Line Developer Tools"
echo "Installing"
- sudo installer -verbose -pkg *.pkg -target /
+ 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
+ rm "/tmp/$packageName"
echo "Command Line Tools = $version" >> ~/versions.txt
}
diff --git a/coin/provisioning/common/macos/python2.sh b/coin/provisioning/common/macos/python2.sh
index 687b9be5..f4016f8d 100755
--- a/coin/provisioning/common/macos/python2.sh
+++ b/coin/provisioning/common/macos/python2.sh
@@ -37,7 +37,7 @@
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
-# shellcheck source=./../unix/SetEnvVar.sh
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
diff --git a/coin/provisioning/common/macos/python3.sh b/coin/provisioning/common/macos/python3.sh
index f2876a20..545a6d02 100755
--- a/coin/provisioning/common/macos/python3.sh
+++ b/coin/provisioning/common/macos/python3.sh
@@ -38,7 +38,7 @@
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
-# shellcheck source=./../unix/SetEnvVar.sh
+# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
diff --git a/coin/provisioning/common/macos/sha1sum-compatibility.sh b/coin/provisioning/common/macos/sha1sum-compatibility.sh
index 5080f8fc..c3936499 100755
--- a/coin/provisioning/common/macos/sha1sum-compatibility.sh
+++ b/coin/provisioning/common/macos/sha1sum-compatibility.sh
@@ -45,5 +45,6 @@
# /usr/local/bin/sha1sum -> /usr/bin/shasum5.18
[ -d /usr/local/bin ] || sudo mkdir -p /usr/local/bin
+# shellcheck disable=SC2012
SHASUM_TOOLNAME=$(ls -r /usr/bin/shasum?.* | head -n1)
sudo ln -s "${SHASUM_TOOLNAME}" /usr/local/bin/sha1sum
diff --git a/coin/provisioning/common/unix/DownloadURL.sh b/coin/provisioning/common/unix/DownloadURL.sh
index d1f2f1bf..14d1322d 100755
--- a/coin/provisioning/common/unix/DownloadURL.sh
+++ b/coin/provisioning/common/unix/DownloadURL.sh
@@ -54,8 +54,8 @@ function DownloadURL {
)
echo "Checking SHA1 on PKG '$targetFile'"
- echo "$expectedSha1 *$targetFile" > $targetFile.sha1
- sha1sum --check $targetFile.sha1
- rm -f $targetFile.sha1
+ echo "$expectedSha1 *$targetFile" > "$targetFile.sha1"
+ sha1sum --check "$targetFile.sha1"
+ rm -f "$targetFile.sha1"
}
diff --git a/coin/provisioning/common/unix/check_and_set_proxy.sh b/coin/provisioning/common/unix/check_and_set_proxy.sh
index 1cbee166..3e55b09f 100755
--- a/coin/provisioning/common/unix/check_and_set_proxy.sh
+++ b/coin/provisioning/common/unix/check_and_set_proxy.sh
@@ -34,6 +34,7 @@
set -ex
+# shellcheck source=../shared/http_proxy.txt
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/libclang.sh b/coin/provisioning/common/unix/libclang.sh
index 7f29259e..5b3b6bb1 100755
--- a/coin/provisioning/common/unix/libclang.sh
+++ b/coin/provisioning/common/unix/libclang.sh
@@ -40,10 +40,12 @@
# In case of Linux, we expect to get the values as args
set -e
+# shellcheck source=./check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/check_and_set_proxy.sh"
BASEDIR=$(dirname "$0")
-. $BASEDIR/../shared/sw_versions.txt
+# shellcheck source=../shared/sw_versions.txt
+. "$BASEDIR/../shared/sw_versions.txt"
url=$1
sha1=$2
version=$3
@@ -61,10 +63,10 @@ destination="/usr/local/libclang-$version"
curl --fail -L --retry 5 --retry-delay 5 -o "$zip" "$url"
echo "$sha1 $zip" | sha1sum --check
-7z x $zip -o/tmp/
-rm -rf $zip
+7z x "$zip" -o/tmp/
+rm -rf "$zip"
-sudo mv /tmp/libclang $destination
+sudo mv /tmp/libclang "$destination"
echo "export LLVM_INSTALL_DIR=$destination" >> ~/.bash_profile
echo "libClang = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/unix/squishInstall.sh b/coin/provisioning/common/unix/squishInstall.sh
index 0ed9b0a0..ab0102ec 100755
--- a/coin/provisioning/common/unix/squishInstall.sh
+++ b/coin/provisioning/common/unix/squishInstall.sh
@@ -93,7 +93,7 @@ function MountAndInstall {
targetFileMount="$mountFolder"/"$targetFile"
echo "Mounting $url to $mountFolder"
- sudo mount "$url" $mountFolder
+ sudo mount "$url" "$mountFolder"
echo "Create $targetDirectory if needed"
if [ ! -d "/opt" ]; then
sudo mkdir "/opt"
@@ -112,19 +112,19 @@ function MountAndInstall {
fi
sudo tar -xzf "$targetFileMount" --directory "$target"
echo "Unmounting $mountFolder"
- sudo umount $mountFolder
+ sudo umount "$mountFolder"
elif [[ $targetFile == *.dmg ]]; then
echo "'dmg-file', no need to uncompress"
- sudo cp $targetFileMount /tmp
- sudo umount $mountFolder
+ 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 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
diff --git a/coin/provisioning/common/windows/03-conan.ps1 b/coin/provisioning/common/windows/03-conan.ps1
index d900f5a7..74c21e20 100644
--- a/coin/provisioning/common/windows/03-conan.ps1
+++ b/coin/provisioning/common/windows/03-conan.ps1
@@ -56,3 +56,5 @@ function Run-Conan-Install
Copy-Item -Path $conanfile -Destination "$outpwd\conanfile.txt"
}
}
+
+Write-Output "Conan = 0.24.0" >> ~\versions.txt
diff --git a/coin/provisioning/common/windows/3dstudio_3rdparty.ps1 b/coin/provisioning/common/windows/3dstudio_3rdparty.ps1
index 924d8606..ed408b6c 100644
--- a/coin/provisioning/common/windows/3dstudio_3rdparty.ps1
+++ b/coin/provisioning/common/windows/3dstudio_3rdparty.ps1
@@ -5,7 +5,7 @@ $url = "http://ci-files01-hki.intra.qt.io/input/3rdparty/Qt3DStudio-3rdparty-win
Download $url $url $zip
Verify-Checksum $zip "08D740D2EFB4CBCDE7D012908B89AA48DE5CD4E1"
-Extract-Zip $zip C:\Utils\Qt3DStudio3rdparty
+Extract-7Zip $zip C:\Utils\Qt3DStudio3rdparty
Remove-Item -Path $zip
Set-EnvironmentVariable "QT3DSTUDIO_3RDPARTY_DIR" "C:/Utils/Qt3DStudio3rdparty"
diff --git a/coin/provisioning/common/windows/android-openssl.ps1 b/coin/provisioning/common/windows/android-openssl.ps1
index b0363c4c..1131841a 100644
--- a/coin/provisioning/common/windows/android-openssl.ps1
+++ b/coin/provisioning/common/windows/android-openssl.ps1
@@ -67,3 +67,5 @@ Pop-Location
# Following command is needed when using version 1.1.0. With version 1.1.0 msys is not needed.
# C:\mingw530\bin\mingw32-make.exe include\openssl\opensslconf.h
+
+Write-Output "Android OpenSSL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/android.ps1 b/coin/provisioning/common/windows/android.ps1
index 2048d6a9..9a09e919 100644
--- a/coin/provisioning/common/windows/android.ps1
+++ b/coin/provisioning/common/windows/android.ps1
@@ -66,7 +66,7 @@ function Install($1, $2, $3, $4) {
Download $offcialUrl $cacheUrl $zip
Verify-Checksum $zip "$checksum"
- Extract-Zip $zip C:\Utils
+ Extract-7Zip $zip C:\Utils
}
function SdkUpdate ($1, $2) {
@@ -98,3 +98,9 @@ if ($p -ne $null) {
} else {
Write-Host "adb.exe not running"
}
+
+Write-Output "Android SDK tools= $sdkVersion" >> ~/versions.txt
+Write-Output "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
+Write-Output "Android SDK Api Level = $sdkApiLevel" >> ~/versions.txt
+Write-Output "Android NDK = $ndkVersion" >> ~/versions.txt
+
diff --git a/coin/provisioning/common/windows/cmake.ps1 b/coin/provisioning/common/windows/cmake.ps1
index c0ead98e..ace68835 100644
--- a/coin/provisioning/common/windows/cmake.ps1
+++ b/coin/provisioning/common/windows/cmake.ps1
@@ -46,7 +46,7 @@ Remove-Item "C:\CMake" -Force -Recurse -ErrorAction SilentlyContinue
Download $officialurl $cachedurl $zip
Verify-Checksum $zip "541F6E7EFD228E46770B8631FFE57097576E4D4E"
-Extract-Zip $zip C:
+Extract-7Zip $zip C:
$defaultinstallfolder = "C:\cmake-" + $version + "-win32-x86"
Rename-Item $defaultinstallfolder C:\CMake
diff --git a/coin/provisioning/common/windows/helpers.ps1 b/coin/provisioning/common/windows/helpers.ps1
index 45779c04..a2535b25 100644
--- a/coin/provisioning/common/windows/helpers.ps1
+++ b/coin/provisioning/common/windows/helpers.ps1
@@ -38,7 +38,8 @@ function Extract-7Zip
{
Param (
[string]$Source,
- [string]$Destination
+ [string]$Destination,
+ [string]$Filter
)
Write-Host "Extracting '$Source' to '$Destination'..."
@@ -54,47 +55,10 @@ function Extract-7Zip
$zipExe = "7z.exe"
}
- Run-Executable "$zipExe" "x -y `"-o$Destination`" `"$Source`""
-}
-
-function Extract-Zip
-{
- Param (
- [string]$Source,
- [string]$Destination
- )
- Write-Host "Extracting '$Source' to '$Destination'..."
-
- New-Item -ItemType Directory -Force -Path $Destination
- $shell = new-object -com shell.application
- $zipfile = $shell.Namespace($Source)
- $destinationFolder = $shell.Namespace($Destination)
- $destinationFolder.CopyHere($zipfile.Items(), 16)
-}
-
-function Extract-Dev-Folders-From-Zip
-{
- Param (
- [string]$package,
- [string]$zipDir,
- [string]$installPath
- )
-
- $shell = new-object -com shell.application
-
- Write-Host "Extracting contents of $package"
- foreach ($subDir in "lib", "include", "bin", "share") {
- $zip = $shell.Namespace($package + "\" + $zipDir + "\" + $subDir)
- if ($zip) {
- Write-Host "Extracting $subDir from zip archive"
- } else {
- Write-Host "$subDir is missing from zip archive - skipping"
- continue
- }
- $destDir = $installPath + "\" + $subdir
- New-Item $destDir -type directory
- $destinationFolder = $shell.Namespace($destDir)
- $destinationFolder.CopyHere($zip.Items(), 16)
+ if ([string]::IsNullOrEmpty($Filter)) {
+ Run-Executable "$zipExe" "x -y `"-o$Destination`" `"$Source`""
+ } else {
+ Run-Executable "$zipExe" "x -y -aoa `"-o$Destination`" `"$Source`" $Filter"
}
}
diff --git a/coin/provisioning/common/windows/icu.ps1 b/coin/provisioning/common/windows/icu.ps1
index a03d10c4..786eb88f 100644
--- a/coin/provisioning/common/windows/icu.ps1
+++ b/coin/provisioning/common/windows/icu.ps1
@@ -43,3 +43,5 @@ if (Is64BitWinHost) {
Set-EnvironmentVariable "CI_ICU_PATH_Mingw49" "C:\Utils\icu_53_1_Mingw_builds_4_8_2_posix_seh_64_devel\icu53_1"
}
+
+Write-Output "ICU = $version" >> ~\versions.txt
diff --git a/coin/provisioning/common/windows/jom.ps1 b/coin/provisioning/common/windows/jom.ps1
index efdbb97d..68db6b17 100644
--- a/coin/provisioning/common/windows/jom.ps1
+++ b/coin/provisioning/common/windows/jom.ps1
@@ -4,6 +4,8 @@ $zip = "c:\users\qt\downloads\jom_1_1_2.zip"
Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/jom_1_1_2.zip -OutFile $zip
Verify-Checksum $zip "80EE5678E714DE99DDAF5F7593AB04DB1C7928E4"
-Extract-Zip $zip C:\Utils\Jom
+Extract-7Zip $zip C:\Utils\Jom
Set-EnvironmentVariable "CI_JOM_PATH" "C:\Utils\Jom"
+
+Write-Output "Jom = 1.1.2" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/libusb.ps1 b/coin/provisioning/common/windows/libusb.ps1
index d5340484..3207131b 100644
--- a/coin/provisioning/common/windows/libusb.ps1
+++ b/coin/provisioning/common/windows/libusb.ps1
@@ -45,3 +45,5 @@ Extract-7Zip $archive $libusb_location
# Tell qt-apps/qdb build system where to find libusb
Set-EnvironmentVariable "LIBUSB_PATH" $libusb_location
+
+Write-Output "libusb = libusb-1.0.21" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/mesa_llvmpipe.ps1 b/coin/provisioning/common/windows/mesa_llvmpipe.ps1
index 3f688f4c..2f613076 100644
--- a/coin/provisioning/common/windows/mesa_llvmpipe.ps1
+++ b/coin/provisioning/common/windows/mesa_llvmpipe.ps1
@@ -62,3 +62,4 @@ if (Is64BitWinHost) {
Extract-Mesa $mesaOpenglUrl_32 $mesaOpenglSha1_32 "C:\Windows\system32"
}
+Write-Output "Mesa llvmpipe = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/mqtt_broker.ps1 b/coin/provisioning/common/windows/mqtt_broker.ps1
index b88f568e..205d9c95 100644
--- a/coin/provisioning/common/windows/mqtt_broker.ps1
+++ b/coin/provisioning/common/windows/mqtt_broker.ps1
@@ -43,7 +43,7 @@ Download $externalUrl $internalUrl $zip
Verify-Checksum $zip $sha1
Write-Host "MQTT: Installing $zip..."
-Extract-Zip $zip C:\Utils
+Extract-7Zip $zip C:\Utils
Remove-Item -Path $zip
Set-EnvironmentVariable "MQTT_TEST_BROKER_LOCATION" "C:\Utils\paho.mqtt.testing-c342c09dadc7a664d0a8befad1ca031f5a0b0bc0\interoperability\startbroker.py"
diff --git a/coin/provisioning/common/windows/msvc-2013-update5.ps1 b/coin/provisioning/common/windows/msvc-2013-update5.ps1
index f28d8f0b..1d717fe6 100644
--- a/coin/provisioning/common/windows/msvc-2013-update5.ps1
+++ b/coin/provisioning/common/windows/msvc-2013-update5.ps1
@@ -38,13 +38,13 @@ $version = "2013 Update 5 (KB2829760)"
$package = "C:\Windows\Temp\vs12-kb2829760.exe"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\VS2013.5.exe"
-Write-Output "Fetching patch for Visual Studio $version..."
+Write-Host "Fetching patch for Visual Studio $version..."
Copy-Item $url_cache $package
-Write-Output "Installing Update 5 for Visual Studio $version..."
-Start-Process -FilePath $package -ArgumentList "/norestart /passive" -Wait
+Write-Host "Installing Update 5 for Visual Studio $version..."
+Run-Executable "$package" "/norestart /passive"
-Write-Output "Removing $package ..."
+Write-Host "Removing $package ..."
Remove-Item $package
Write-Output "Visual Studio = $version" >> ~\versions.txt
diff --git a/coin/provisioning/common/windows/msvc_2015_update3_patch.ps1 b/coin/provisioning/common/windows/msvc_2015_update3_patch.ps1
index a153e9d8..bfbb397a 100644
--- a/coin/provisioning/common/windows/msvc_2015_update3_patch.ps1
+++ b/coin/provisioning/common/windows/msvc_2015_update3_patch.ps1
@@ -63,3 +63,5 @@ Write-Host "Installing patch for Visual Studio $version..."
Run-Executable $executable "/norestart /passive"
Remove-Item -Force -Recurse -Path $toRemove
+
+Write-Output "Visual Studio = $version" >> ~\versions.txt
diff --git a/coin/provisioning/common/windows/mysql.ps1 b/coin/provisioning/common/windows/mysql.ps1
index a22e439a..29ce0ab4 100644
--- a/coin/provisioning/common/windows/mysql.ps1
+++ b/coin/provisioning/common/windows/mysql.ps1
@@ -37,8 +37,11 @@
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
$version = "5.6.11"
-$packagex64 = "C:\Windows\temp\mysql-$version-winx64.zip"
-$packagex86 = "C:\Windows\temp\mysql-$version-win32.zip"
+$baseNameX64 = "mysql-$version-winx64"
+$packagex64 = "C:\Windows\temp\$baseNameX64.zip"
+$baseNameX86 = "mysql-$version-win32"
+$packagex86 = "C:\Windows\temp\$baseNameX86.zip"
+$installFolder = "C:\Utils\my_sql"
function DownloadAndInstall
{
@@ -52,7 +55,7 @@ function DownloadAndInstall
Copy-Item $internalUrl $package
$zipDir = [io.path]::GetFileNameWithoutExtension($package)
- Extract-Dev-Folders-From-Zip $package $zipDir $installPath
+ Extract-7Zip $package $installPath "$zipDir\lib $zipDir\bin $zipDir\share $zipDir\include"
Remove-Item -Path $package
}
@@ -60,28 +63,21 @@ function DownloadAndInstall
if (Is64BitWinHost) {
# Install x64 bit version
$architecture = "x64"
- $installFolder = "C:\Utils\my_sql\my_sql"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-winx64.zip"
DownloadAndInstall $internalUrl $packagex64 $installFolder
- Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\include"
- Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\lib"
+ Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\$baseNameX64\include"
+ Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\$baseNameX64\lib"
}
# Install x86 bit version
$architecture = "x86"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-win32.zip"
-if (Is64BitWinHost) {
- $installFolder = "C:\Utils\my_sql\my_sql$architecture"
-} else {
- $installFolder = "C:\Utils\my_sql\my_sql"
-}
-
DownloadAndInstall $internalUrl $packagex86 $installFolder
-Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\include"
-Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\lib"
+Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\$baseNameX86\include"
+Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\$baseNameX86\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "MySQL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/ninja.ps1 b/coin/provisioning/common/windows/ninja.ps1
index dd60ad69..5b6729f5 100644
--- a/coin/provisioning/common/windows/ninja.ps1
+++ b/coin/provisioning/common/windows/ninja.ps1
@@ -5,7 +5,9 @@ $zip = "c:\users\qt\downloads\ninja-1.6.0-win-x86.zip"
Download https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-win.zip \\ci-files01-hki.intra.qt.io\provisioning\ninja\ninja-1.6.0-win-x86.zip $zip
Verify-Checksum $zip "E01093F6533818425F8EFB0843CED7DCAABEA3B2"
-Extract-Zip $zip C:\Utils\Ninja
+Extract-7Zip $zip C:\Utils\Ninja
Remove-Item -Path $zip
Add-Path "C:\Utils\Ninja"
+
+Write-Output "Ninja = 1.6.0" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/postgresql.ps1 b/coin/provisioning/common/windows/postgresql.ps1
index b9681809..46d7501a 100644
--- a/coin/provisioning/common/windows/postgresql.ps1
+++ b/coin/provisioning/common/windows/postgresql.ps1
@@ -43,7 +43,7 @@ $packagex86 = "C:\Windows\temp\postgresql-$version-windows-binaries.zip"
if (Is64BitWinHost) {
# Install x64 bit versions
$architecture = "x64"
- $installFolder = "C:\Utils\postgresql\pgsql"
+ $installFolder = "C:\Utils\postgresql"
$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-x64-binaries.zip"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-x64-binaries.zip"
$sha1 = "4da0453cdfda335e064d4437cf5bb9d356054cfd"
@@ -52,13 +52,13 @@ if (Is64BitWinHost) {
Download $externalUrl $internalUrl $packagex64
Verify-Checksum $packagex64 $sha1
Write-Host "Installing $packagex64 ..."
- Extract-Dev-Folders-From-Zip $packagex64 "pgsql" $installFolder
+ Extract-7Zip $packagex64 $installFolder "pgsql\lib pgsql\bin pgsql\share pgsql\include"
Write-Host "Remove downloaded $packagex64 ..."
Remove-Item -Path $packagex64
- Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x64" "$installFolder\include"
- Set-EnvironmentVariable "POSTGRESQL_LIB_x64" "$installFolder\lib"
+ Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x64" "$installFolder\pgsql\include"
+ Set-EnvironmentVariable "POSTGRESQL_LIB_x64" "$installFolder\pgsql\lib"
}
# Install x86 bit version
@@ -67,9 +67,9 @@ $externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windo
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-binaries.zip"
$sha1 = "eb4f01845e1592800edbb74f60944b6c0aca51a9"
if (Is64BitWinHost) {
- $installFolder = "C:\Utils\postgresql$architecture\pgsql"
+ $installFolder = "C:\Utils\postgresql$architecture"
} else {
- $installFolder = "C:\Utils\postgresql\pgsql"
+ $installFolder = "C:\Utils\postgresql"
}
@@ -77,13 +77,13 @@ Write-Host "Fetching from URL..."
Download $externalUrl $internalUrl $packagex86
Verify-Checksum $packagex86 $sha1
Write-Host "Installing $packagex86 ..."
-Extract-Dev-Folders-From-Zip $packagex86 "pgsql" $installFolder
+Extract-7Zip $packagex86 $installFolder "pgsql\lib pgsql\bin pgsql\share pgsql\include"
Write-Host "Remove downloaded $packagex86 ..."
Remove-Item -Path $packagex86
-Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x86" "$installFolder\include"
-Set-EnvironmentVariable "POSTGRESQL_LIB_x86" "$installFolder\lib"
+Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x86" "$installFolder\pgsql\include"
+Set-EnvironmentVariable "POSTGRESQL_LIB_x86" "$installFolder\pgsql\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "PostgreSQL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/python.ps1 b/coin/provisioning/common/windows/python.ps1
index ae9cbbbd..28881d58 100644
--- a/coin/provisioning/common/windows/python.ps1
+++ b/coin/provisioning/common/windows/python.ps1
@@ -69,3 +69,5 @@ Run-Executable "C:\Python27\python.exe" "-m ensurepip"
# $pip_args = "--proxy=" + (getProxy)
#}
Run-Executable "C:\Python27\Scripts\pip.exe" "install virtualenv"
+
+Write-Output "Python = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/python3.ps1 b/coin/provisioning/common/windows/python3.ps1
index 0ea93133..cd5c8348 100644
--- a/coin/provisioning/common/windows/python3.ps1
+++ b/coin/provisioning/common/windows/python3.ps1
@@ -70,3 +70,6 @@ Set-EnvironmentVariable "PIP3_PATH" "$install_path\Scripts"
# $pip_args = "--proxy=" + (getProxy)
#}
Run-Executable "$install_path\Scripts\pip3.exe" "install virtualenv"
+
+Write-Output "Python3 = $version" >> ~/versions.txt
+
diff --git a/coin/provisioning/common/windows/squishInstall.ps1 b/coin/provisioning/common/windows/squishInstall.ps1
index 04eb563b..8db53ca7 100644
--- a/coin/provisioning/common/windows/squishInstall.ps1
+++ b/coin/provisioning/common/windows/squishInstall.ps1
@@ -104,11 +104,11 @@ Function TestSquish {
[string]$squishPackage
)
- echo "Verifying Squish Installation"
+ Write-Host "Verifying Squish Installation"
if (cmd /c "$targetDir\$squishPackage\bin\squishrunner.exe --testsuite $targetDir\$testSuite" |Select-String -Pattern "Squish test run successfully") {
- echo "Squish installation tested successfully!"
+ Write-Host "Squish installation tested successfully!"
} else {
- echo "Squish test failed! $squishPackage wasn't installed correctly."
+ Write-Host "Squish test failed! $squishPackage wasn't installed correctly."
[Environment]::Exit(1)
}
}
diff --git a/coin/provisioning/common/windows/winrtrunner.ps1 b/coin/provisioning/common/windows/winrtrunner.ps1
index 89a64344..9cdd04ab 100644
--- a/coin/provisioning/common/windows/winrtrunner.ps1
+++ b/coin/provisioning/common/windows/winrtrunner.ps1
@@ -5,7 +5,7 @@ $url = "http://download.qt.io/development_releases/prebuilt/winrtrunner/winrtrun
Download $url $url $zip
Verify-Checksum $zip "C19098A4C9DBD20EDEB4E5E0D3E6A5BBBCA73C42"
-Extract-Zip $zip C:\Utils\winrtrunner
+Extract-7Zip $zip C:\Utils\winrtrunner
Remove-Item -Path $zip
Set-EnvironmentVariable "CI_WINRTRUNNER_PATH" "C:\Utils\winrtrunner"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh
index 85ceaa24..c0f94a49 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh
@@ -36,7 +36,8 @@
set -ex
BASEDIR=$(dirname "$0")
-source $BASEDIR/../common/shared/network_test_server_ip.txt
+# shellcheck source=../common/shared/network_test_server_ip.txt
+source "$BASEDIR/../common/shared/network_test_server_ip.txt"
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/03-install-rhel-epel.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/03-install-rhel-epel.sh
index 4eb9882d..5cdf7df0 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/03-install-rhel-epel.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/03-install-rhel-epel.sh
@@ -35,6 +35,7 @@
set -ex
+# shellcheck source=../common/unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
package="epel-release-7-11.noarch.rpm"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh
index 49d4d4f5..219f80c4 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh
@@ -2,9 +2,10 @@
set -ex
BASEDIR=$(dirname "$0")
-. $BASEDIR/../common/shared/sw_versions.txt
+# shellcheck source=../common/shared/sw_versions.txt
+. "$BASEDIR/../common/shared/sw_versions.txt"
VERSION=$libclang_version
URL="https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_${VERSION//\./}-linux-Rhel7.2-gcc5.3-x86_64.7z"
SHA1="bbdbbc0296f42310077539b7247d285386119ef4"
-$BASEDIR/../common/unix/libclang.sh "$URL" "$SHA1" "$VERSION"
+"$BASEDIR/../common/unix/libclang.sh" "$URL" "$SHA1" "$VERSION"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/06-cmake.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/06-cmake.sh
index 9800229d..062b2790 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/06-cmake.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/06-cmake.sh
@@ -39,4 +39,5 @@ set -ex
# CMake is needed for autotests that verify that Qt can be built with CMake
+# shellcheck source=../common/linux/cmake_linux.sh
source "${BASH_SOURCE%/*}/../common/linux/cmake_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/07-qnx_700.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/07-qnx_700.sh
index 970d80b1..92c741fb 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/07-qnx_700.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/07-qnx_700.sh
@@ -35,4 +35,5 @@
set -ex
+# shellcheck source=../common/linux/qnx_700.sh
source "${BASH_SOURCE%/*}/../common/linux/qnx_700.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/08-integrity.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/08-integrity.sh
index 1710b878..154370da 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/08-integrity.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/08-integrity.sh
@@ -35,4 +35,5 @@
set -ex
+# shellcheck source=../common/linux/integrity.sh
source "${BASH_SOURCE%/*}/../common/linux/integrity.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/09-disable_selinux.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/09-disable_selinux.sh
index e4d2dc15..b7a53cd4 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/09-disable_selinux.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/09-disable_selinux.sh
@@ -35,4 +35,5 @@
set -ex
+# shellcheck source=../common/linux/disable_selinux.sh
source "${BASH_SOURCE%/*}/../common/linux/disable_selinux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/10-openssl_for_android_linux.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/10-openssl_for_android_linux.sh
index 9b0cd0f6..ef2b3ba8 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/10-openssl_for_android_linux.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/10-openssl_for_android_linux.sh
@@ -34,8 +34,10 @@
#############################################################################
set +e
+# shellcheck disable=SC1091
source /opt/rh/devtoolset-4/enable
set -ex
+# shellcheck source=../common/linux/openssl_for_android_linux.sh
source "${BASH_SOURCE%/*}/../common/linux/openssl_for_android_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/22-mqtt_broker.sh
index 04c09770..505374c5 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/22-mqtt_broker.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/22-mqtt_broker.sh
@@ -33,4 +33,5 @@
##
#############################################################################
+# shellcheck source=../common/unix/mqtt_broker.sh
source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-fbx.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-fbx.sh
index ca24a70e..d8df4375 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-fbx.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-fbx.sh
@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
-$BASEDIR/../common/linux/fbx_linux.sh
+"$BASEDIR/../common/linux/fbx_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-install_icu.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-install_icu.sh
index ed9d6679..cb23bbca 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-install_icu.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/30-install_icu.sh
@@ -47,26 +47,26 @@ develPackageURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/
echo "Installing custom ICU $icuVersion $sha1 packages on RHEL to $icuLocation"
-targetFile=`mktemp`
-wget --tries=5 --waitretry=5 --output-document=$targetFile $baseBinaryPackageURL
+targetFile=$(mktemp)
+wget --tries=5 --waitretry=5 --output-document="$targetFile" "$baseBinaryPackageURL"
echo "$sha1 $targetFile" | sha1sum --check
-sudo 7z x -y -o"/usr/lib64" $targetFile
-sudo rm $targetFile
+sudo 7z x -y -o/usr/lib64 "$targetFile"
+sudo rm "$targetFile"
echo "Installing custom ICU devel packages on RHEL"
-tempDir=`mktemp -d`
+tempDir=$(mktemp -d)
-targetFile=`mktemp`
-wget --tries=5 --waitretry=5 --output-document=$targetFile $develPackageURL
+targetFile=$(mktemp)
+wget --tries=5 --waitretry=5 --output-document="$targetFile" "$develPackageURL"
echo "$sha1Dev $targetFile" | sha1sum --check
-7z x -y -o$tempDir $targetFile
+7z x -y -o"$tempDir" "$targetFile"
-sudo cp -a $tempDir/lib/* /usr/lib64
-sudo cp -a $tempDir/* /usr/
+sudo cp -a "$tempDir"/lib/* /usr/lib64
+sudo cp -a "$tempDir"/* /usr/
-sudo rm $targetFile
-sudo rm -fr $tempDir
+sudo rm "$targetFile"
+sudo rm -fr "$tempDir"
sudo /sbin/ldconfig
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/40-android_linux.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/40-android_linux.sh
index ffe96d30..a6c4dfff 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/40-android_linux.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/40-android_linux.sh
@@ -35,4 +35,5 @@
set -ex
+# shellcheck source=../common/linux/android_linux.sh
source "${BASH_SOURCE%/*}/../common/linux/android_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/50-open62541.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/50-open62541.sh
index 6cc2b44f..049cdd2d 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/50-open62541.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/50-open62541.sh
@@ -33,4 +33,5 @@
##
#############################################################################
+# shellcheck source=../common/linux/open62541.sh
source "${BASH_SOURCE%/*}/../common/linux/open62541.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh
index 27ff15c3..e4281588 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh
@@ -1,4 +1,4 @@
#!/usr/bin/env bash
BASEDIR=$(dirname "$0")
-$BASEDIR/../common/unix/squishInstall.sh
+"$BASEDIR/../common/unix/squishInstall.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/99-version.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/99-version.sh
new file mode 100755
index 00000000..03565da2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/99-version.sh
@@ -0,0 +1,48 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts 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$
+##
+#############################################################################
+
+# This script needs to be called last during provisioning so that the software information will show up last in provision log.
+
+# Storage installed RPM packages information
+
+set -ex
+
+# shellcheck disable=SC2129
+echo "*********************************************" >> ~/versions.txt
+echo "***** All installed RPM packages *****" >> ~/versions.txt
+rpm -q -a | sort >> ~/versions.txt
+echo "*********************************************" >> ~/versions.txt
+
+"$(dirname "$0")/../common/linux/version.sh"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/01-systemsetup.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/01-systemsetup.sh
new file mode 100755
index 00000000..ee6af148
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/01-systemsetup.sh
@@ -0,0 +1,59 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2017 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts 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$
+##
+#############################################################################
+
+# This script modifies system settings for automated use
+
+set -ex
+
+# shellcheck source=../common/unix/check_and_set_proxy.sh
+source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
+
+NTS_IP=10.212.2.216
+
+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 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 [ "$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/02-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/02-apt.sh
new file mode 100755
index 00000000..bfbb6a8e
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/02-apt.sh
@@ -0,0 +1,55 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2017 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts 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$
+##
+#############################################################################
+
+# Install required packages with APT
+
+set -ex
+
+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
+
+installPackages+=(git)
+installPackages+=(p7zip-full)
+installPackages+=(expect)
+
+echo "Running update for apt"
+sudo apt-get update
+echo "Installing packages"
+sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"
+
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/90-squish.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/90-squish.sh
new file mode 100755
index 00000000..965112af
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86/90-squish.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+"$BASEDIR/../common/unix/squishInstall.sh"
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 40e07fe6..e78cba17 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
@@ -124,6 +124,7 @@ installPackages+=(curl)
installPackages+=(libicu-dev)
installPackages+=(zlib1g-dev)
installPackages+=(zlib1g)
+installPackages+=(zlib1g:i386)
installPackages+=(openjdk-8-jdk)
installPackages+=(libgtk-3-dev)
installPackages+=(ninja-build)
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/99-version.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/99-version.sh
new file mode 100755
index 00000000..21a4c4cf
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/99-version.sh
@@ -0,0 +1,46 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts 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$
+##
+#############################################################################
+
+# This script needs to be called last during provisioning so that the software information will show up last in provision log.
+
+set -ex
+
+# shellcheck disable=SC2129
+echo "*********************************************" >> ~/versions.txt
+echo "***** All installed packages *****" >> ~/versions.txt
+apt list --installed >> ~/versions.txt
+echo "*********************************************" >> ~/versions.txt
+
+"$(dirname "$0")/../common/linux/version.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh
index 053adfe1..0e677642 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh
@@ -3,7 +3,9 @@
set -ex
BASEDIR=$(dirname "$0")
-source $BASEDIR/../common/shared/network_test_server_ip.txt
+# shellcheck source=../common/shared/network_test_server_ip.txt
+source "$BASEDIR/../common/shared/network_test_server_ip.txt"
+# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
sed -i '$ a\[Daemon\]\nAutolock=false\nLockOnResume=false' ~/.config/kscreenlockerrc
@@ -17,6 +19,7 @@ sudo balooctl disable
echo "Disable update notifications"
sudo zypper -nq remove plasma5-pk-updates
+# shellcheck disable=SC2031
if [ "$http_proxy" != "" ]; then
sudo sed -i 's/PROXY_ENABLED=\"no\"/PROXY_ENABLED=\"yes\"/' /etc/sysconfig/proxy
sudo sed -i "s|HTTP_PROXY=\".*\"|HTTP_PROXY=\"$proxy\"|" /etc/sysconfig/proxy
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/02-disable-ntp.sh
index 97bb177c..38707a8a 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/02-disable-ntp.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/02-disable-ntp.sh
@@ -1,2 +1,3 @@
#!/usr/bin/env bash
+# shellcheck source=../common/linux/disable-ntp_linux.sh
source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh
index b4155e86..3202462b 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh
@@ -3,9 +3,10 @@
set -ex
BASEDIR=$(dirname "$0")
-. $BASEDIR/../common/shared/sw_versions.txt
+# shellcheck source=../common/shared/sw_versions.txt
+. "$BASEDIR/../common/shared/sw_versions.txt"
VERSION=$libclang_version
URL="https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_${VERSION//\./}-linux-Rhel7.2-gcc5.3-x86_64.7z"
SHA1="bbdbbc0296f42310077539b7247d285386119ef4"
-$BASEDIR/../common/unix/libclang.sh "$URL" "$SHA1" "$VERSION"
+"$BASEDIR/../common/unix/libclang.sh" "$URL" "$SHA1" "$VERSION"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/09-cmake.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/09-cmake.sh
index 2044310c..5eb53566 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/09-cmake.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/09-cmake.sh
@@ -2,4 +2,4 @@
set -ex
-$(dirname $0)/../common/linux/cmake_linux.sh
+"$(dirname "$0")/../common/linux/cmake_linux.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/18-icc.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/18-icc.sh
index e5a4208b..7ab8528a 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/18-icc.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/18-icc.sh
@@ -35,6 +35,7 @@
# This script install Intel Parallel Studio XE Composer Edition for C++ Linux
+# shellcheck source=../common/unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
set -ex
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/22-mqtt_broker.sh
index 04c09770..505374c5 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/22-mqtt_broker.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/22-mqtt_broker.sh
@@ -33,4 +33,5 @@
##
#############################################################################
+# shellcheck source=../common/unix/mqtt_broker.sh
source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/50-open62541.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/50-open62541.sh
index 6cc2b44f..049cdd2d 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/50-open62541.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/50-open62541.sh
@@ -33,4 +33,5 @@
##
#############################################################################
+# shellcheck source=../common/linux/open62541.sh
source "${BASH_SOURCE%/*}/../common/linux/open62541.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh
index 27ff15c3..e4281588 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh
@@ -1,4 +1,4 @@
#!/usr/bin/env bash
BASEDIR=$(dirname "$0")
-$BASEDIR/../common/unix/squishInstall.sh
+"$BASEDIR/../common/unix/squishInstall.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/99-version.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/99-version.sh
new file mode 100755
index 00000000..03565da2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/99-version.sh
@@ -0,0 +1,48 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts 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$
+##
+#############################################################################
+
+# This script needs to be called last during provisioning so that the software information will show up last in provision log.
+
+# Storage installed RPM packages information
+
+set -ex
+
+# shellcheck disable=SC2129
+echo "*********************************************" >> ~/versions.txt
+echo "***** All installed RPM packages *****" >> ~/versions.txt
+rpm -q -a | sort >> ~/versions.txt
+echo "*********************************************" >> ~/versions.txt
+
+"$(dirname "$0")/../common/linux/version.sh"
diff --git a/coin/provisioning/qtci-windows-10-x86_64/90-signing-tools.ps1 b/coin/provisioning/qtci-windows-10-x86_64/90-signing-tools.ps1
index 854bee01..daaab36f 100644
--- a/coin/provisioning/qtci-windows-10-x86_64/90-signing-tools.ps1
+++ b/coin/provisioning/qtci-windows-10-x86_64/90-signing-tools.ps1
@@ -40,5 +40,5 @@ $url = "http://ci-files01-hki.intra.qt.io/input/semisecure/sign/sign.zip"
$destination = "C:\Windows\temp\sign.zip"
Download $url $url $destination
-Extract-Zip "$destination" "C:\Utils"
+Extract-7Zip "$destination" "C:\Utils"
Remove-Item -Path "$destination"
diff --git a/coin/provisioning/qtci-windows-7-x86/04-msys.ps1 b/coin/provisioning/qtci-windows-7-x86/04-msys.ps1
index 8bfcdbae..be52fb2a 100644
--- a/coin/provisioning/qtci-windows-7-x86/04-msys.ps1
+++ b/coin/provisioning/qtci-windows-7-x86/04-msys.ps1
@@ -12,3 +12,5 @@ $destination = "C:\msys"
Download $url $url $zip
Verify-Checksum $zip $sha1
C:\Utils\sevenzip\7z.exe x $zip -oC:\
+
+Write-Output "Msys = $version" >> ~/versions.txt