aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common
diff options
context:
space:
mode:
Diffstat (limited to 'coin/provisioning/common')
-rwxr-xr-xcoin/provisioning/common/linux/qnx_660.sh66
-rwxr-xr-xcoin/provisioning/common/macos/pip.sh14
-rwxr-xr-xcoin/provisioning/common/macos/python2.sh7
-rwxr-xr-xcoin/provisioning/common/macos/python3.sh7
-rwxr-xr-xcoin/provisioning/common/unix/DownloadURL.sh1
-rwxr-xr-xcoin/provisioning/common/unix/squishInstall.sh18
-rw-r--r--coin/provisioning/common/windows/squishInstall.ps125
-rw-r--r--coin/provisioning/common/windows/win10sdk.ps150
8 files changed, 181 insertions, 7 deletions
diff --git a/coin/provisioning/common/linux/qnx_660.sh b/coin/provisioning/common/linux/qnx_660.sh
new file mode 100755
index 00000000..7f6ab063
--- /dev/null
+++ b/coin/provisioning/common/linux/qnx_660.sh
@@ -0,0 +1,66 @@
+#!/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 installs QNX 6.6.0.
+
+set -ex
+
+source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
+
+targetFolder="/opt/"
+sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/linux/qnx660.tar.gz"
+sha1="E292CCAEF447AC1AA4DAD7802D604A5531ACD8D0"
+folderName="qnx660"
+targetFile="qnx660.tar.gz"
+wget --tries=5 --waitretry=5 --progress=dot:giga --output-document="$targetFile" "$sourceFile"
+echo "$sha1 $targetFile" | sha1sum --check
+if [ ! -d "$targetFolder" ]; then
+ mkdir -p $targetFolder
+fi
+sudo tar -C $targetFolder -xvzf $targetFile
+sudo chown -R qt:users "$targetFolder"/"$folderName"
+
+# Verify that we have last file in tar
+if [ ! -f $targetFolder/$folderName/qnx660-env.sh ]; then
+ echo "Installation failed!"
+ exit -1
+fi
+
+rm -rf $targetFile
+
+# Set env variables
+SetEnvVar "QNX_660" "$targetFolder$folderName"
+
+echo "QNX SDP = 6.6.0" >> ~/versions.txt
diff --git a/coin/provisioning/common/macos/pip.sh b/coin/provisioning/common/macos/pip.sh
index c9af5fbc..2d07db85 100755
--- a/coin/provisioning/common/macos/pip.sh
+++ b/coin/provisioning/common/macos/pip.sh
@@ -1,5 +1,11 @@
#!/usr/bin/env bash
-# Will install pip utility for python
-curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
-sudo python get-pip.py
-rm get-pip.py
+
+function InstallPip {
+
+ python=$1
+
+ # Will install pip utility for python
+ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
+ sudo "$python" get-pip.py
+ rm get-pip.py
+}
diff --git a/coin/provisioning/common/macos/python2.sh b/coin/provisioning/common/macos/python2.sh
index fbebee42..687b9be5 100755
--- a/coin/provisioning/common/macos/python2.sh
+++ b/coin/provisioning/common/macos/python2.sh
@@ -35,8 +35,12 @@
# This script installs python2
+# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
+# shellcheck source=./../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
+# shellcheck source=./pip.sh
+source "${BASH_SOURCE%/*}/pip.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-2.7.14-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/2.7.14/python-2.7.14-macosx10.6.pkg"
@@ -45,8 +49,11 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
+InstallPip python2.7
+
/Library/Frameworks/Python.framework/Versions/2.7/bin/pip install virtualenv
SetEnvVar "PATH" "/Library/Frameworks/Python.framework/Versions/2.7/bin/:\$PATH"
echo "python2 = 2.7.14" >> ~/versions.txt
+
diff --git a/coin/provisioning/common/macos/python3.sh b/coin/provisioning/common/macos/python3.sh
index f38ab5e6..f2876a20 100755
--- a/coin/provisioning/common/macos/python3.sh
+++ b/coin/provisioning/common/macos/python3.sh
@@ -36,8 +36,12 @@
# This script installs python3
+# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
+# shellcheck source=./../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
+# shellcheck source=./pip.sh
+source "${BASH_SOURCE%/*}/pip.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"
@@ -46,9 +50,12 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
+InstallPip python3.6
+
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv
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/unix/DownloadURL.sh b/coin/provisioning/common/unix/DownloadURL.sh
index c1e1d6cc..d1f2f1bf 100755
--- a/coin/provisioning/common/unix/DownloadURL.sh
+++ b/coin/provisioning/common/unix/DownloadURL.sh
@@ -56,5 +56,6 @@ function DownloadURL {
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
sha1sum --check $targetFile.sha1
+ rm -f $targetFile.sha1
}
diff --git a/coin/provisioning/common/unix/squishInstall.sh b/coin/provisioning/common/unix/squishInstall.sh
index 069d5afd..0ed9b0a0 100755
--- a/coin/provisioning/common/unix/squishInstall.sh
+++ b/coin/provisioning/common/unix/squishInstall.sh
@@ -51,6 +51,9 @@ fi
squishLicenseUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/"
squishLicenseFile=".squish-3-license.tar.gz"
+testSuite="suite_test_squish"
+testSuiteUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/"
+
# 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"
@@ -140,10 +143,10 @@ 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
+ echo "export PATH=\$PATH:$squishFolder/squish-$version/bin" >> ~/.profile
else
echo "export SQUISH_PATH=$squishFolder/package" >> ~/.bashrc
- echo "export PATH=\$PATH:$quishFolder/squish-$version/bin" >> ~/.bashrc
+ echo "export PATH=\$PATH:$squishFolder/squish-$version/bin" >> ~/.bashrc
fi
echo "Installing squish license to home directory.."
@@ -151,3 +154,14 @@ MountAndInstall "$squishLicenseUrl" "$squishFolder" "$squishLicenseFile"
echo "Installing squish $version.."
MountAndInstall "$squishUrl" "$squishFolder" "$squishFile"
+
+echo "Installing test suite for squish"
+MountAndInstall "$testSuiteUrl" "$squishFolder" "$testSuite.tar.gz"
+
+echo "Verifying Squish Installation"
+if "$squishFolder/package/bin/squishrunner" --testsuite "$squishFolder/$testSuite" | grep "Squish test run successfully" ; then
+ echo "Squish installation tested successfully"
+else
+ echo "Squish test failed! Package wasn't installed correctly."
+ exit 1
+fi
diff --git a/coin/provisioning/common/windows/squishInstall.ps1 b/coin/provisioning/common/windows/squishInstall.ps1
index fe221890..04eb563b 100644
--- a/coin/provisioning/common/windows/squishInstall.ps1
+++ b/coin/provisioning/common/windows/squishInstall.ps1
@@ -1,6 +1,6 @@
#############################################################################
##
-## 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.
@@ -48,6 +48,8 @@ $qtBranch = "59x"
$targetDir = "C:\Utils\squish"
$squishUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin"
$squishBranchUrl = "$squishUrl\$qtBranch"
+$testSuite = "suite_test_squish"
+$testSuiteUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin\$testSuite.7z"
# Squish license
$licensePackage = ".squish-3-license"
@@ -77,9 +79,13 @@ Function DownloadAndInstallSquish {
$squishPackage64bit = "$squishPackage`_64"
}
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
+ TestSquish $squishPackage64bit
} else {
if ($squishPackage.StartsWith("mingw")) {
Rename-Item $targetDir\$squishPackage $targetDir\mingw
+ TestSquish mingw
+ } else {
+ TestSquish $squishPackage
}
}
}
@@ -93,10 +99,27 @@ Function DownloadSquishLicence {
Copy-Item $squishUrl\$licensePackage ~\$licensePackage
}
+Function TestSquish {
+ Param (
+ [string]$squishPackage
+ )
+
+ echo "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!"
+ } else {
+ echo "Squish test failed! $squishPackage wasn't installed correctly."
+ [Environment]::Exit(1)
+ }
+}
Write-Host "Creating $targetDir"
New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir"
+Write-Host "Download and install Test Suite for squish"
+Copy-Item $testSuiteUrl $targetDir/$testSuite.7z
+Extract-7Zip $targetDir/$testSuite.7z $targetDir
+
DownloadSquishLicence $squishUrl
if ($OSVersion -eq "Windows 10 Enterprise") {
diff --git a/coin/provisioning/common/windows/win10sdk.ps1 b/coin/provisioning/common/windows/win10sdk.ps1
new file mode 100644
index 00000000..d33a8fc1
--- /dev/null
+++ b/coin/provisioning/common/windows/win10sdk.ps1
@@ -0,0 +1,50 @@
+############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\helpers.ps1"
+
+# This script will install Windows 10 SDK
+
+$url_cache = "\\ci-files01-hki.ci.local\provisioning\windows\winsdksetup.exe"
+$url_official = "https://download.microsoft.com/download/8/C/3/8C37C5CE-C6B9-4CC8-8B5F-149A9C976035/windowssdk/winsdksetup.exe"
+$package = "C:\Windows\Temp\winsdksetup.exe"
+$sha1 = "db237323f1779fb143e7cdc558e4345e7004489e"
+
+Copy-Item $url_cache $package
+Verify-Checksum $package $sha1
+Run-Executable $package "/features + /q"
+
+Write-Host "Cleaning $package.."
+Remove-Item -Recurse -Force -Path "$package"
+
+Write-Output "Windows 10 SDK = 10.0.16229.91" >> ~\versions.txt