aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@qt.io>2018-01-29 13:53:08 +0100
committerFrederik Gladhorn <frederik.gladhorn@qt.io>2018-01-29 14:06:05 +0100
commita434f14bd93f387f5f981fcd7d27ce95384d1ce6 (patch)
treeb5cc79dd41ef6dd3c49dafcf899d469574632123
parent282899453d2c6b4c51bbd94fc228f2bb711d64f6 (diff)
parent351a519340d509300c754d0a62771a7f6e38ea4c (diff)
Merge remote-tracking branch 'origin/5.10' into 5.11
Conflicts: coin/provisioning/common/linux/qnx_700.sh coin/provisioning/common/windows/libclang.ps1 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Change-Id: I7fe1337fb8a575083e8b649d1a051abc82e3b408
-rwxr-xr-xcoin/provisioning/common/linux/android_linux.sh9
-rwxr-xr-xcoin/provisioning/common/linux/cmake_linux.sh8
-rwxr-xr-xcoin/provisioning/common/linux/fbx_linux.sh4
-rwxr-xr-xcoin/provisioning/common/linux/integrity.sh11
-rwxr-xr-xcoin/provisioning/common/linux/openssl_for_android_linux.sh4
-rwxr-xr-xcoin/provisioning/common/linux/qnx_700.sh11
-rwxr-xr-xcoin/provisioning/common/macos/cmake.sh5
-rwxr-xr-xcoin/provisioning/common/macos/fbx_macos.sh5
-rwxr-xr-xcoin/provisioning/common/macos/python3.sh6
-rw-r--r--coin/provisioning/common/shared/network_test_server_ip.txt (renamed from coin/provisioning/common/network_test_server_ip.txt)0
-rw-r--r--coin/provisioning/common/shared/sw_versions.txt (renamed from coin/provisioning/common/sw_versions.txt)0
-rwxr-xr-xcoin/provisioning/common/unix/SetEnvVar.sh51
-rwxr-xr-xcoin/provisioning/common/unix/libclang.sh2
-rwxr-xr-xcoin/provisioning/common/unix/squishInstall.sh211
-rw-r--r--coin/provisioning/common/windows/helpers.ps116
-rw-r--r--coin/provisioning/common/windows/libclang.ps12
-rw-r--r--coin/provisioning/common/windows/set-network-test-server.ps12
-rw-r--r--coin/provisioning/common/windows/squishInstall.ps1163
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh43
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-libclang.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-refresh-subscription-manager.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-systemsetup.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh9
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-libclang.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/07-SSL_keychain.sh5
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/25-mysql.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/25-postgresql.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/30-android.sh10
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/35-openssl.sh6
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-osx-10.10-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh8
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh5
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh5
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/90-squish.sh4
-rw-r--r--coin/provisioning/qtci-windows-10-x86/90-squish.ps11
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/90-squish.ps11
-rw-r--r--coin/provisioning/qtci-windows-7-x86/90-squish.ps11
-rw-r--r--coin/provisioning/qtci-windows-8.1-x86/90-squish.ps11
-rw-r--r--coin/provisioning/qtci-windows-8.1-x86_64/90-squish.ps11
46 files changed, 603 insertions, 55 deletions
diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh
index b4a412c8..76db19d4 100755
--- a/coin/provisioning/common/linux/android_linux.sh
+++ b/coin/provisioning/common/linux/android_linux.sh
@@ -40,6 +40,7 @@
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"
targetFolder="/opt/android"
sdkTargetFolder="$targetFolder/sdk"
@@ -95,10 +96,10 @@ try
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
fi
- echo "export ANDROID_SDK_HOME=$sdkTargetFolder" >> ~/.bashrc
- echo "export ANDROID_NDK_HOME=$targetFolder/android-ndk-$ndkVersion" >> ~/.bashrc
- echo "export ANDROID_NDK_HOST=linux-x86_64" >> ~/.bashrc
- echo "export ANDROID_API_VERSION=$sdkApiLevel" >> ~/.bashrc
+ 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
diff --git a/coin/provisioning/common/linux/cmake_linux.sh b/coin/provisioning/common/linux/cmake_linux.sh
index 27358a20..98af57c8 100755
--- a/coin/provisioning/common/linux/cmake_linux.sh
+++ b/coin/provisioning/common/linux/cmake_linux.sh
@@ -39,6 +39,7 @@
# shellcheck source=InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="3.6.2"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/cmake/cmake-3.6.2-Linux-x86_64.tar.gz"
@@ -49,9 +50,4 @@ appPrefix="cmake-$version-Linux-x86_64"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
-echo "Adding $targetFolder/bin to PATH"
-if uname -a |grep -q "Ubuntu"; then
- echo "export PATH=$targetFolder/bin:\$PATH" >> ~/.profile
-else
- echo "export PATH=$targetFolder/bin:\$PATH" >> ~/.bashrc
-fi
+SetEnvVar "PATH" "$targetFolder/bin:\$PATH"
diff --git a/coin/provisioning/common/linux/fbx_linux.sh b/coin/provisioning/common/linux/fbx_linux.sh
index 0b587aed..a6c00f61 100755
--- a/coin/provisioning/common/linux/fbx_linux.sh
+++ b/coin/provisioning/common/linux/fbx_linux.sh
@@ -35,7 +35,7 @@
# This script installs FBX SDK
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
-#s script installs FBX SDK
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
set -e
tarballName="fbx20161_2_fbxsdk_linux.tar.gz"
@@ -56,7 +56,7 @@ sudo mkdir -p $targetFolder
rm -rf "$targetFile"
# Set env variables
-echo "export FBXSDK=$targetFolder" >> ~/.profile
+SetEnvVar "FBXSDK" "$targetFolder"
echo "FBX SDK = 2016.1.2" >> ~/versions.txt
diff --git a/coin/provisioning/common/linux/integrity.sh b/coin/provisioning/common/linux/integrity.sh
index 0c7234b3..e291358d 100755
--- a/coin/provisioning/common/linux/integrity.sh
+++ b/coin/provisioning/common/linux/integrity.sh
@@ -36,6 +36,7 @@
# This script installs INTEGRITY
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="11.4.4"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/integrity/ghs_$version.tar.gz"
@@ -46,10 +47,10 @@ appPrefix=""
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
-echo "export INTEGRITY_BSP=platform-cortex-a9" >> ~/.bashrc
-echo "export INTEGRITY_PATH=$targetFolder/comp_201654" >> ~/.bashrc
-echo "export INTEGRITY_DIR=$targetFolder/int1144" >> ~/.bashrc
-echo "export INTEGRITY_GL_INC_DIR=\$INTEGRITY_DIR/INTEGRITY-include/Vivante/sdk/inc" >> ~/.bashrc
-echo "export INTEGRITY_GL_LIB_DIR=\$INTEGRITY_DIR/libs/Vivante" >> ~/.bashrc
+SetEnvVar "INTEGRITY_BSP" "platform-cortex-a9"
+SetEnvVar "INTEGRITY_PATH" "$targetFolder/comp_201654"
+SetEnvVar "INTEGRITY_DIR" "$targetFolder/int1144"
+SetEnvVar "INTEGRITY_GL_INC_DIR" "\$INTEGRITY_DIR/INTEGRITY-include/Vivante/sdk/inc"
+SetEnvVar "INTEGRITY_GL_LIB_DIR" "\$INTEGRITY_DIR/libs/Vivante"
echo "INTEGRITY = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/linux/openssl_for_android_linux.sh b/coin/provisioning/common/linux/openssl_for_android_linux.sh
index cda41d72..e9f50b87 100755
--- a/coin/provisioning/common/linux/openssl_for_android_linux.sh
+++ b/coin/provisioning/common/linux/openssl_for_android_linux.sh
@@ -38,6 +38,7 @@
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="1.0.2g"
officialUrl="https://www.openssl.org/source/openssl-$version.tar.gz"
@@ -64,7 +65,8 @@ try
pushd "$opensslHome"
perl Configure shared android || throw $ExceptionConfig
- echo "export OPENSSL_ANDROID_HOME=$opensslHome" >> ~/.bashrc
+ SetEnvVar "OPENSSL_ANDROID_HOME" "$opensslHome"
+
echo "OpenSSL for Android = $version" >> ~/versions.txt
)
catch || {
diff --git a/coin/provisioning/common/linux/qnx_700.sh b/coin/provisioning/common/linux/qnx_700.sh
index 4f7c4fb1..584c91a8 100755
--- a/coin/provisioning/common/linux/qnx_700.sh
+++ b/coin/provisioning/common/linux/qnx_700.sh
@@ -36,6 +36,9 @@
# This script installs QNX 7.
set -ex
+
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
+
targetFolder="/opt/"
sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/qnx700.tar.xz"
sha1="949a87c5f00d0756956cb4b1b3b213ecaeee9113"
@@ -44,7 +47,7 @@ targetFile="qnx700.tar.xz"
wget --tries=5 --waitretry=5 --output-document="$targetFile" "$sourceFile"
echo "$sha1 $targetFile" | sha1sum --check
if [ ! -d "$targetFolder" ]; then
- mkdir -p $targetFolder
+ mkdir -p $targetFolder
fi
sudo tar -C $targetFolder -Jxf $targetFile
sudo chown -R qt:users "$targetFolder"/"$folderName"
@@ -58,10 +61,6 @@ fi
rm -rf $targetFile
# Set env variables
-if uname -a |grep -q "Ubuntu"; then
- echo "export QNX_700=$targetFolder$folderName" >> ~/.profile
-else
- echo "export QNX_700=$targetFolder$folderName" >> ~/.bashrc
-fi
+SetEnvVar "QNX_700" "$targetFolder$folderName"
echo "QNX SDP = 7.0.0" >> ~/versions.txt
diff --git a/coin/provisioning/common/macos/cmake.sh b/coin/provisioning/common/macos/cmake.sh
index c727c8ff..f926de89 100755
--- a/coin/provisioning/common/macos/cmake.sh
+++ b/coin/provisioning/common/macos/cmake.sh
@@ -39,6 +39,8 @@
# shellcheck source=./InstallAppFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/cmake-3.6.2-Darwin-x86_64.tar.gz"
AltUrl="https://cmake.org/files/v3.6/cmake-3.6.2-Darwin-x86_64.tar.gz"
@@ -47,5 +49,6 @@ appPrefix="cmake-3.6.2-Darwin-x86_64"
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
-echo "export PATH=/Applications/CMake.app/Contents/bin:\$PATH" >> ~/.bashrc
+SetEnvVar "PATH" "/Applications/CMake.app/Contents/bin:\$PATH"
+
echo "CMake = 3.6.2" >> ~/versions.txt
diff --git a/coin/provisioning/common/macos/fbx_macos.sh b/coin/provisioning/common/macos/fbx_macos.sh
index 9dc97814..b2ec8154 100755
--- a/coin/provisioning/common/macos/fbx_macos.sh
+++ b/coin/provisioning/common/macos/fbx_macos.sh
@@ -36,6 +36,8 @@
# shellcheck source=./../unix/try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
+# shellcheck source=../unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
fileName="fbx20161_2_fbxsdk_clang_mac.pkg.tgz"
targetFolder="/opt/fbx"
@@ -74,6 +76,7 @@ echo "Running installer for '$installer'"
sudo installer -pkg "$installer" -target "/"
# Set env variables
-echo "export FBXSDK=/Applications/Autodesk/FBX\ SDK/2016.1.2/" >> ~/.bashrc
+SetEnvVar "FBXSDK" "/Applications/Autodesk/FBX\ SDK/2016.1.2/"
+
echo "FBX SDK = 2016.1.2" >> ~/versions.txt
diff --git a/coin/provisioning/common/macos/python3.sh b/coin/provisioning/common/macos/python3.sh
index fc20aa2d..f38ab5e6 100755
--- a/coin/provisioning/common/macos/python3.sh
+++ b/coin/provisioning/common/macos/python3.sh
@@ -37,6 +37,7 @@
# This script installs python3
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-3.6.1-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/3.6.1/python-3.6.1-macosx10.6.pkg"
@@ -47,6 +48,7 @@ InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv
-echo "export PYTHON3_PATH=/Library/Frameworks/Python.framework/Versions/3.6/bin" >> ~/.bashrc
-echo "export PIP3_PATH=/Library/Frameworks/Python.framework/Versions/3.6/bin" >> ~/.bashrc
+SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
+SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
+
echo "python3 = 3.6.1" >> ~/versions.txt
diff --git a/coin/provisioning/common/network_test_server_ip.txt b/coin/provisioning/common/shared/network_test_server_ip.txt
index ec3d058a..ec3d058a 100644
--- a/coin/provisioning/common/network_test_server_ip.txt
+++ b/coin/provisioning/common/shared/network_test_server_ip.txt
diff --git a/coin/provisioning/common/sw_versions.txt b/coin/provisioning/common/shared/sw_versions.txt
index cc165dd5..cc165dd5 100644
--- a/coin/provisioning/common/sw_versions.txt
+++ b/coin/provisioning/common/shared/sw_versions.txt
diff --git a/coin/provisioning/common/unix/SetEnvVar.sh b/coin/provisioning/common/unix/SetEnvVar.sh
new file mode 100755
index 00000000..e1b69169
--- /dev/null
+++ b/coin/provisioning/common/unix/SetEnvVar.sh
@@ -0,0 +1,51 @@
+#!/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$
+##
+#############################################################################
+
+# A helper script used for setting environment variables on Unix systems
+
+set -ex
+
+function SetEnvVar {
+ name=$1
+ path=$2
+
+ echo "Setting environment variable $name to $path."
+
+ if uname -a |grep -q "Ubuntu"; then
+ echo "export $name=$path" >> ~/.profile
+ else
+ echo "export $name=$path" >> ~/.bashrc
+ fi
+}
diff --git a/coin/provisioning/common/unix/libclang.sh b/coin/provisioning/common/unix/libclang.sh
index 69d9ff96..d59c9fa2 100755
--- a/coin/provisioning/common/unix/libclang.sh
+++ b/coin/provisioning/common/unix/libclang.sh
@@ -43,7 +43,7 @@ set -e
source "${BASH_SOURCE%/*}/check_and_set_proxy.sh"
BASEDIR=$(dirname "$0")
-. $BASEDIR/../sw_versions.txt
+. $BASEDIR/../shared/sw_versions.txt
url=$1
sha1=$2
version=$3
diff --git a/coin/provisioning/common/unix/squishInstall.sh b/coin/provisioning/common/unix/squishInstall.sh
new file mode 100755
index 00000000..e2553fcf
--- /dev/null
+++ b/coin/provisioning/common/unix/squishInstall.sh
@@ -0,0 +1,211 @@
+#!/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$
+##
+#############################################################################
+
+source "${BASH_SOURCE%/*}/try_catch.sh"
+
+set -ex
+
+# This script will install squish package for Linux and Mac.
+# Squish is need by Release Test Automation (RTA)
+
+version="6.3.0"
+# Branch version without dot
+qtBranch="59x"
+squishFolder="/opt/squish"
+squishUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/$qtBranch/"
+squishFile="squish-$version-qt$qtBranch-linux64.run"
+if uname -a |grep -q Darwin; then
+ squishFile="squish-$version-qt$qtBranch-macx86_64.dmg"
+fi
+
+squishLicenseUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/"
+squishLicenseFile=".squish-3-license.tar.gz"
+
+# These checks can be removed when Vanilla OS for all linux and Mac are in
+if [ -d "$squishFolder" ]; then
+ echo "Move old squish to /tmp"
+ sudo mv "$squishFolder" "/tmp/squish_$(date)"
+fi
+
+if [ -f "/etc/profile.d/squish_env.sh" ]; then
+ echo "Remove /etc/profile.d/squish_env.sh"
+ sudo rm -f "/etc/profile.d/squish_env.sh"
+ 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
+
+ # Check which platform
+ if uname -a |grep -q Darwin; then
+ usersGroup="staff"
+ mountFolder="/Volumes"
+ squishLicenseDir="/Users/qt"
+ elif uname -a |grep -q "el6\|el7"; then
+ usersGroup="qt"
+ mountFolder="/tmp"
+ squishLicenseDir="/root"
+ elif uname -a |grep -q "Ubuntu"; then
+ usersGroup="users"
+ mountFolder="/tmp"
+ squishLicenseDir="/home/qt"
+ else
+ usersGroup="users"
+ mountFolder="/tmp"
+ squishLicenseDir="/root"
+ fi
+
+ 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
+ else
+ throw $ExceptionUnknownFormat
+ 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 "Set commands for environment variables in .bashrc"
+
+if uname -a |grep -q "Ubuntu"; then
+ echo "export SQUISH_PATH=$squishFolder/package" >> ~/.profile
+ echo "export PATH=\$PATH:$quishFolder/squish-$version/bin" >> ~/.profile
+else
+ echo "export SQUISH_PATH=$squishFolder/package" >> ~/.bashrc
+ echo "export PATH=\$PATH:$quishFolder/squish-$version/bin" >> ~/.bashrc
+fi
+
+echo "Installing squish license to home directory.."
+MountAndInstall "$squishLicenseUrl" "$squishFolder" "$squishLicenseFile"
+
+echo "Installing squish $version.."
+MountAndInstall "$squishUrl" "$squishFolder" "$squishFile"
diff --git a/coin/provisioning/common/windows/helpers.ps1 b/coin/provisioning/common/windows/helpers.ps1
index ff781b6c..b24de870 100644
--- a/coin/provisioning/common/windows/helpers.ps1
+++ b/coin/provisioning/common/windows/helpers.ps1
@@ -128,3 +128,19 @@ function is64bitWinHost
return 0
}
}
+
+Function Execute-Command
+{
+ Param (
+ [string]$command
+ )
+ Try {
+ echo "Executing command '$command'..."
+ $process = Start-Process -FilePath "cmd" -ArgumentList "/c $command" -PassThru -Wait -WindowStyle Hidden
+ if ($process.ExitCode) {throw "Error running command: '$command'"}
+ }
+ Catch {
+ $_.Exception.Message
+ exit 1
+ }
+}
diff --git a/coin/provisioning/common/windows/libclang.ps1 b/coin/provisioning/common/windows/libclang.ps1
index af041916..5a25d2eb 100644
--- a/coin/provisioning/common/windows/libclang.ps1
+++ b/coin/provisioning/common/windows/libclang.ps1
@@ -6,7 +6,7 @@ param([Int32]$archVer=32)
# Starting from Qt 5.11 QDoc requires Clang to parse C++
-Get-Content "$PSScriptRoot\..\sw_versions.txt" | Foreach-Object {
+Get-Content "$PSScriptRoot\..\shared\sw_versions.txt" | Foreach-Object {
$var = $_.Split('=')
New-Variable -Name $var[0] -Value $var[1]
$libclang_version = $libclang_version -replace '["."]'
diff --git a/coin/provisioning/common/windows/set-network-test-server.ps1 b/coin/provisioning/common/windows/set-network-test-server.ps1
index 69059a2a..e6e92d48 100644
--- a/coin/provisioning/common/windows/set-network-test-server.ps1
+++ b/coin/provisioning/common/windows/set-network-test-server.ps1
@@ -35,7 +35,7 @@
# This script will set the network test server IP in to hosts file
-$n = Get-Content "$PSScriptRoot\..\network_test_server_ip.txt"
+$n = Get-Content "$PSScriptRoot\..\shared\network_test_server_ip.txt"
$n = $n.Split('=')
New-Variable -Name $n[0] -Value $n[1]
diff --git a/coin/provisioning/common/windows/squishInstall.ps1 b/coin/provisioning/common/windows/squishInstall.ps1
new file mode 100644
index 00000000..7641c9fe
--- /dev/null
+++ b/coin/provisioning/common/windows/squishInstall.ps1
@@ -0,0 +1,163 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\helpers.ps1"
+
+
+# This script will install squish package for Windows.
+# Squish is need by Release Test Automation (RTA)
+
+$version = "6.3.0"
+# Qt branch without dot (*.*)
+$qtBranch = "59x"
+$targetDir = "C:\Utils\squish"
+$squishUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin"
+$squishBranchUrl = "$squishUrl\$qtBranch"
+
+# Squish license
+$licensePackage = ".squish-3-license"
+
+$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName
+
+# This can be removed when using vanilla os
+if((Test-Path -Path "$targetDir" )){
+ try {
+ echo "Renaming old Squish"
+ echo "Rename-Item -ErrorAction 'Stop' $targetDir $targetDir_deleted"
+ Rename-Item -ErrorAction 'Stop' "$targetDir" squish_deleted
+ } catch {}
+}
+
+Function DownloadAndInstallSquish {
+
+ Param (
+ [string]$version,
+ [string]$squishBranchUrl,
+ [string]$qtBranch,
+ [string]$bit,
+ [string]$targetDir,
+ [string]$squishPackage
+ )
+
+ $SquishUrl = $squishBranchUrl + "\squish-" + $version + "-qt" + $qtBranch + "-" + $bit + "-" + $squishPackage + ".exe"
+ $SquishInstaller = "$targetDir\$squishPackage.exe"
+ $SquishParameters = "unattended=1 targetdir=$targetDir\$squishPackage"
+ $Command = "$SquishInstaller $SquishParameters"
+
+ echo "Fetching from URL ..."
+ Copy-Item "$SquishUrl" "$SquishInstaller"
+ echo "Installing Squish"
+ Execute-Command $Command
+ remove-item $SquishInstaller
+}
+
+Function DownloadSquishLicence {
+
+ Param (
+ [string]$licensePackage,
+ [string]$squishUrl,
+ [string]$targetDir
+ )
+
+ # This can be removed when using vanilla os
+ if ($Env:SQUISH_LICENSEKEY_DIR)
+ {
+ echo "Removing SQUISH_LICENSEKEY_DIR env variable"
+ Remove-Item Env:\SQUISH_LICENSEKEY_DIR
+ }
+
+ echo "Installing Squish license to home directory"
+ Copy-Item $squishUrl\$licensePackage ~\$licensePackage
+}
+
+echo "Creating $targetDir"
+New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir"
+
+DownloadSquishLicence $licensePackage $squishUrl $targetDir
+
+if(($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 8.1 Enterprise"))
+{
+ # Squish for Visual Studio 2015
+ $squishPackage = "msvc14"
+ $squishPackage64bit = "msvc14_64"
+
+ if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
+ {
+ echo "Installing $squishPackage_64"
+ DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
+ mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
+ }
+
+ echo "Installing $squishPackage"
+ DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
+}
+if($OSVersion -eq "Windows 8.1 Enterprise")
+{
+ # Squish for Visual Studio 2013
+ $squishPackage64bit = "msvc12_64"
+
+ if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
+ {
+ echo "Installing $squishPackage_64"
+ DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
+ mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
+ }
+ else
+ {
+ echo "Change secret file to normal one"
+ attrib -h C:\Users\qt\.squish-3-license
+ }
+}
+else
+{
+ # Windows 7
+
+ # Squish for MinGW
+ $squishPackageMingw = "mingw_gcc53_posix_dwarf"
+ echo "Installing $squishPackageMingw"
+ DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackageMingw
+ mv $targetDir\$squishPackageMingw $targetDir\mingw
+
+ # Squish for Visual Studio 2015
+ $squishPackage = "msvc14"
+ $squishPackage64bit = "msvc14_64"
+
+ if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
+ {
+ echo "Installing $squishPackage64bit"
+ DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
+ mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
+ }
+
+
+}
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh
new file mode 100755
index 00000000..84238ebf
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh
@@ -0,0 +1,43 @@
+#!/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$
+##
+#############################################################################
+
+set -ex
+
+# refresh local certificates
+sudo subscription-manager refresh
+
+# Attach available subscriptions to system. This is needed when subscriptions are renewed.
+sudo subscription-manager attach --auto
+
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-libclang.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-libclang.sh
index b418ed8b..fb5a81b3 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-libclang.sh
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-libclang.sh
@@ -3,7 +3,7 @@
set -ex
BASEDIR=$(dirname "$0")
-. $BASEDIR/../common/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-Rhel6.6-gcc4.9-x86_64.7z"
SHA1="c7466109628418a6aa3db8b3f5825f847f1c4952"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-refresh-subscription-manager.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-refresh-subscription-manager.sh
index 8b10ffd1..84238ebf 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-refresh-subscription-manager.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/01-refresh-subscription-manager.sh
@@ -2,7 +2,7 @@
#############################################################################
##
-## Copyright (C) 2017 The Qt Company Ltd.
+## 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.
@@ -38,3 +38,6 @@ set -ex
# refresh local certificates
sudo subscription-manager refresh
+# Attach available subscriptions to system. This is needed when subscriptions are renewed.
+sudo subscription-manager attach --auto
+
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 f8847e51..a7718d96 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
@@ -37,7 +37,7 @@ set -ex
BASEDIR=$(dirname "$0")
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
-source $BASEDIR/../common/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/05-libclang.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/05-libclang.sh
index fa8d3a44..49d4d4f5 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,7 +2,7 @@
set -ex
BASEDIR=$(dirname "$0")
-. $BASEDIR/../common/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"
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
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh
index 74ef2b4e..9ff1ec6c 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh
@@ -33,6 +33,9 @@
#############################################################################
set -ex
+
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
# build latest qemu to usermode
sudo apt-get -y install automake autoconf libtool
@@ -91,4 +94,4 @@ sed $QEMU_FONTCONFFILE -e "s:/usr/share/fonts:$QEMU_FONTCONFPATH/fonts:" -i
sed $QEMU_FONTCONFFILE -e "s:/usr/local/share/fonts:$QEMU_FONTCONFPATH/local_fonts:" -i
# Set QEMU font configuration variables
-echo "export QEMU_SET_ENV=\"FONTCONFIG_FILE=$QEMU_FONTCONFFILE,FONTCONFIG_PATH=$QEMU_FONTCONFPATH\"" >> ~/.profile
+SetEnvVar "QEMU_SET_ENV" "\"FONTCONFIG_FILE=$QEMU_FONTCONFFILE,FONTCONFIG_PATH=$QEMU_FONTCONFPATH\""
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh
index fbd75f22..cc799702 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh
@@ -38,6 +38,7 @@
set -ex
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
echo "Installing Yocto toolchain for 32-bit b2qt..."
@@ -76,10 +77,10 @@ chmod +x "$yoctoInstaller"
rm -rf "$yoctoInstaller"
if [ -e "$yoctoLocationARMv7/$sysrootARMv7" -a -e "$yoctoLocationARMv7/${crosscompileARMv7}g++" -a -e "$yoctoLocationARM64/$sysrootARM64" -a -e "$yoctoLocationARM64/${crosscompileARM64}g++" ]; then
- echo "export QEMUARMV7_TOOLCHAIN_SYSROOT=$yoctoLocationARMv7/$sysrootARMv7" >> ~/.profile
- echo "export QEMUARMV7_TOOLCHAIN_CROSS_COMPILE=$yoctoLocationARMv7/$crosscompileARMv7" >> ~/.profile
- echo "export QEMUARM64_TOOLCHAIN_SYSROOT=$yoctoLocationARM64/$sysrootARM64" >> ~/.profile
- echo "export QEMUARM64_TOOLCHAIN_CROSS_COMPILE=$yoctoLocationARM64/$crosscompileARM64" >> ~/.profile
+ SetEnvVar "QEMUARMV7_TOOLCHAIN_SYSROOT" "$yoctoLocationARMv7/$sysrootARMv7"
+ SetEnvVar "QEMUARMV7_TOOLCHAIN_CROSS_COMPILE" "$yoctoLocationARMv7/$crosscompileARMv7"
+ SetEnvVar "QEMUARM64_TOOLCHAIN_SYSROOT" "$yoctoLocationARM64/$sysrootARM64"
+ SetEnvVar "QEMUARM64_TOOLCHAIN_CROSS_COMPILE" "$yoctoLocationARM64/$crosscompileARM64"
else
echo "Error! Couldn't find installation paths for Yocto toolchain. Aborting provisioning." 1>&2
exit 1
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/90-squish.sh
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.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 f419b7c1..4ebc1b44 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,7 @@
set -ex
BASEDIR=$(dirname "$0")
-source $BASEDIR/../common/network_test_server_ip.txt
+source $BASEDIR/../common/shared/network_test_server_ip.txt
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
sed -i '$ a\[Daemon\]\nAutolock=false\nLockOnResume=false' ~/.config/kscreenlockerrc
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 65d3ad4b..b4155e86 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,7 +3,7 @@
set -ex
BASEDIR=$(dirname "$0")
-. $BASEDIR/../common/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"
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
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/07-SSL_keychain.sh b/coin/provisioning/qtci-macos-10.12-x86_64/07-SSL_keychain.sh
index b68d62f8..6e7c796a 100755
--- a/coin/provisioning/qtci-macos-10.12-x86_64/07-SSL_keychain.sh
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/07-SSL_keychain.sh
@@ -2,5 +2,8 @@
set -ex
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
# Enables the usage of temporary keychains for SSL autotests
-echo "export QT_SSL_USE_TEMPORARY_KEYCHAIN=1" >> ~/.bashrc
+SetEnvVar "QT_SSL_USE_TEMPORARY_KEYCHAIN" "1"
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/25-mysql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/25-mysql.sh
index b47f9705..a28e306f 100755
--- a/coin/provisioning/qtci-macos-10.12-x86_64/25-mysql.sh
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/25-mysql.sh
@@ -41,6 +41,8 @@ set -ex
# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/mysql-5.7.15-osx10.11-x86_64.tar.gz"
AltUrl="https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15-osx10.11-x86_64.tar.gz"
@@ -52,5 +54,5 @@ sudo mkdir -p "/opt"
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" "$targetDir"
-echo "export MYSQLBINPATH=/opt/mysql57/bin" >> ~/.bashrc
+SetEnvVar "MYSQLBINPATH" "/opt/mysql57/bin"
echo "MySQL = 5.7.15" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/25-postgresql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/25-postgresql.sh
index 8f3f85ec..9f79c594 100755
--- a/coin/provisioning/qtci-macos-10.12-x86_64/25-postgresql.sh
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/25-postgresql.sh
@@ -41,6 +41,8 @@ set -ex
# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
psqlVersion="9.6.0"
@@ -51,5 +53,5 @@ appPrefix=""
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
-echo "export POSTGRESQLBINPATH=/Applications/Postgres.app/Contents/Versions/9.6/bin" >> ~/.bashrc
+SetEnvVar "POSTGRESQLBINPATH" "/Applications/Postgres.app/Contents/Versions/9.6/bin"
echo "PostgreSQL = $psqlVersion" >> ~/versions.txt
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 b6e731f2..a46cb335 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
@@ -41,6 +41,8 @@ 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"
targetFolder="/opt/android"
sdkTargetFolder="$targetFolder/sdk"
@@ -81,10 +83,10 @@ try
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
- echo "export ANDROID_SDK_HOME=$sdkTargetFolder" >> ~/.bashrc
- echo "export ANDROID_NDK_HOME=$targetFolder/android-ndk-$ndkVersion" >> ~/.bashrc
- echo "export ANDROID_NDK_HOST=darwin-x86_64" >> ~/.bashrc
- echo "export ANDROID_API_VERSION=$sdkApiLevel" >> ~/.bashrc
+ 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
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 ccff42c3..c169799b 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
@@ -41,6 +41,8 @@ set -ex
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
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
opensslVersion="1.0.2k"
opensslFile="openssl-$opensslVersion.tar.gz"
@@ -75,8 +77,8 @@ try
sudo mkdir -p "$path"
sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation || throw $ExceptionLN
- echo "export PATH=\"$opensslTargetLocation/bin:\$PATH\"" >> ~/.bashrc
- echo "export MANPATH=\"$opensslTargetLocation/share/man:\$MANPATH\"" >> ~/.bashrc
+ 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 || throw $ExceptionCertificate
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/90-squish.sh b/coin/provisioning/qtci-macos-10.12-x86_64/90-squish.sh
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-osx-10.10-x86_64/90-squish.sh b/coin/provisioning/qtci-osx-10.10-x86_64/90-squish.sh
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.10-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh b/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh
index b68d62f8..610f7a8e 100755
--- a/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh
@@ -1,6 +1,10 @@
-#!/usr/bin/env sh
+#!/usr/bin/env bash
set -ex
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
# Enables the usage of temporary keychains for SSL autotests
-echo "export QT_SSL_USE_TEMPORARY_KEYCHAIN=1" >> ~/.bashrc
+SetEnvVar "QT_SSL_USE_TEMPORARY_KEYCHAIN" "1"
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh b/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh
index 89534baf..1908c79b 100755
--- a/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh
@@ -41,6 +41,8 @@ set -ex
# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/mysql-5.7.15-osx10.11-x86_64.tar.gz"
AltUrl="https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15-osx10.11-x86_64.tar.gz"
@@ -52,6 +54,7 @@ sudo mkdir -p "/opt"
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" "$targetDir"
-echo "export MYSQLBINPATH=/opt/mysql57/bin" >> ~/.bashrc
+SetEnvVar "MYSQLBINPATH" "/opt/mysql57/bin"
+
echo "MySQL = 5.7.15" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh b/coin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh
index 8d88630b..7fedb4a2 100755
--- a/coin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh
@@ -41,6 +41,8 @@ set -ex
# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/Postgres-9.6.0.zip"
AltUrl="https://github.com/PostgresApp/PostgresApp/releases/download/9.6.0/Postgres-9.6.0.zip"
@@ -49,6 +51,7 @@ appPrefix=""
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
-echo "export POSTGRESQLBINPATH=/Applications/Postgres.app/Contents/Versions/9.6/bin" >> ~/.bashrc
+SetEnvVar "POSTGRESQLBINPATH" "/Applications/Postgres.app/Contents/Versions/9.6/bin"
+
echo "PostgreSQL = 9.6.0" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/90-squish.sh b/coin/provisioning/qtci-osx-10.11-x86_64/90-squish.sh
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-windows-10-x86/90-squish.ps1 b/coin/provisioning/qtci-windows-10-x86/90-squish.ps1
new file mode 100644
index 00000000..ff758845
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86/90-squish.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\squishInstall.ps1"
diff --git a/coin/provisioning/qtci-windows-10-x86_64/90-squish.ps1 b/coin/provisioning/qtci-windows-10-x86_64/90-squish.ps1
new file mode 100644
index 00000000..ff758845
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/90-squish.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\squishInstall.ps1"
diff --git a/coin/provisioning/qtci-windows-7-x86/90-squish.ps1 b/coin/provisioning/qtci-windows-7-x86/90-squish.ps1
new file mode 100644
index 00000000..ff758845
--- /dev/null
+++ b/coin/provisioning/qtci-windows-7-x86/90-squish.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\squishInstall.ps1"
diff --git a/coin/provisioning/qtci-windows-8.1-x86/90-squish.ps1 b/coin/provisioning/qtci-windows-8.1-x86/90-squish.ps1
new file mode 100644
index 00000000..ff758845
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8.1-x86/90-squish.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\squishInstall.ps1"
diff --git a/coin/provisioning/qtci-windows-8.1-x86_64/90-squish.ps1 b/coin/provisioning/qtci-windows-8.1-x86_64/90-squish.ps1
new file mode 100644
index 00000000..ff758845
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8.1-x86_64/90-squish.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\squishInstall.ps1"