Compare commits

...

50 Commits

Author SHA1 Message Date
Qt Submodule Update Bot
7f6fd7621b Update submodules on '5.11' in qt5
Change-Id: Ie59c702af192cf03bb5c865345625f61feb83887
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-04-07 08:26:59 +00:00
Oliver Wolff
0029642f18 Fix msvc_2015_update3_patch
Change-Id: Ie008b274c2f27d9792340dd4f6c2d3215bd376ca
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2018-04-06 19:41:22 +00:00
Tony Sarajärvi
daeaec9b3c Remove updating of RHEL 7.4 system during each provisioning
Yum update doesn't only fetch the repository data. It also runs
a distro upgrade. So if something gets updated that isn't
compatible with us, it breaks. It also slows down the provisioning
a lot.

Change-Id: I27136bc572fbce5410b82ff9574cf85bf89e3100
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-04-06 19:41:19 +00:00
Qt Submodule Update Bot
9fdc8fe5e9 Update submodules on '5.11' in qt5
Change-Id: Ic767892fd0ed815d1cec35eced62e83b1ac4e029
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-06 19:41:16 +00:00
Joni Jantti
9af755a79e Add VC build tools to Windows 10 x86 template
These tools were missing from the installation.

Change-Id: I627b28a6f9373df708952e22a7f404b8dbce6239
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-04-06 11:02:51 +00:00
Liang Qi
d4edeff8aa Update submodules on '5.11' in qt5
Change-Id: Ic5b5615653f2fed507c75ca96a05de0affb65863
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-05 18:42:39 +00:00
Eskil Abrahamsen Blomfeldt
3c23dc4846 Don't require Qt Android Extras for Qt Purchasing
Qt Purchasing is supported on other platforms than Android, so
move qtandroidextras from depends to recommends instead.

Task-number: QTBUG-67318
Change-Id: I9c70574dd9b45579485b2640f7daeebdc6c2bc63
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-04-05 14:44:48 +00:00
Joni Jantti
9e74a1e5b7 Add a clean installed Win10_x86 for RTA
Task-number: QTQAINFRA-1842
Change-Id: I0334d74055690c7f850fd105fe008d11a8e57b8c
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2018-04-05 13:10:26 +00:00
Qt Submodule Update Bot
bb9547048b Update submodules on '5.11' in qt5
Change-Id: I2c8dfa7b7b27e6aa80381761d8b7883690133496
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-04 07:22:50 +00:00
Qt Submodule Update Bot
7c19a3f83b Update submodules on '5.11' in qt5
Change-Id: I7e60d0eae7d23fbc2eebf1734c3fd9a713b6b732
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-04-02 00:00:58 +00:00
Qt Submodule Update Bot
9f50ae280f Update submodules on '5.11' in qt5
Change-Id: I7f31b0b19c8380a7f5420917ad7dc423e3ca3658
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-04-01 10:23:51 +00:00
Qt Submodule Update Bot
fe06923553 Update submodules on '5.11' in qt5
Change-Id: I89c95acfd2ee14574c0ca524d80837023dbc112f
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-03-31 10:49:31 +00:00
Joni Jantti
dbe27bc9cc Provisioning: Win8.1 - Add jom for RTA
Jom is required by RTA.

Task-number: QTQAINFRA-1895
Change-Id: Iec99a91d2a48c4c6ef49829e4f05baa90d1a96e0
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-30 17:57:20 +00:00
Qt Submodule Update Bot
c8b3ed182d Update submodules on '5.11' in qt5
Change-Id: I2f7afb1e261e59e527a482983f699402f0d29d85
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-03-30 11:11:25 +00:00
Qt Submodule Update Bot
8f73d37425 Update submodules on '5.11' in qt5
Change-Id: I77701db7d1955d7309d464ca1597888d98883a30
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-03-28 17:28:28 +00:00
Miikka Heikkinen
9dd5f6d861 Add SeparateDebugInfo for linux release
Task-number: QTQAINFRA-1688
Change-Id: I3557ac1e2bb6964278f381736f87e6fd3304744b
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-03-28 14:24:53 +00:00
Frederik Gladhorn
a01e7f3d40 Install an android virtual device for testing
The goal is to run tests on the AVD eventually.

Change-Id: I7ac887661497b5169c154ef8b0264ef07749a36a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2018-03-26 09:18:48 +00:00
Frederik Gladhorn
8552003532 Reduce wget verbosity when downloading qnx
The default style gives 1 KiB dots, 50 KiB per line, and the file is
567 MiB (~11600 lines). Reduce it to 1 MiB per dot and 32 MiB per line
(~18 lines).

Change-Id: Id181eee63313a4ad486af6c4752de0ed9ed5f7b6
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-03-26 09:18:45 +00:00
Heikki Halmet
8197e80155 Provisioning: Remove Java update from windows startup items
Change-Id: Iec709c9c42840910ab0dd98634c200d2aba8f7bf
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-22 06:05:45 +00:00
Tony Sarajärvi
794913dde7 Install Python 2.7.13 to RHEL with pip
System's default Python is 2.7.5 and doesn't come
with pip at all. To install its pip, it would require us to
enable the EPEL repository and install it from there.

The repos we use already include Python 2.7.13. If we install that
we get pip as well.

Change-Id: I083a970697a962ddb301616695c2cf419f1229f8
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-03-22 06:05:42 +00:00
Joni Jantti
5085220907 Provisioning: Win7_x64 - Add Squish 6.3.0 win64 msvc12
This package is required by RTA.

Task-number: QTQAINFRA-1878
Change-Id: I0496445880f838de34ffd53f72fa05e0f0b0be58
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-22 06:05:39 +00:00
Tony Sarajärvi
de4e9c2169 Provisioning: refactor squish install
Change-Id: I18e5f8f5d92cff5af2335cc5ac4cf571d27224ac
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-22 06:05:36 +00:00
Tony Sarajärvi
f1eca9bbff Remove duplicate python-devel provisioning from RHEL 7.x
Change-Id: I445135d675fa6b5cb305f6aadf5b754ab248a1ff
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-03-22 06:05:33 +00:00
Tony Sarajärvi
ab021d4bb4 Make unzip less verbose in macOS
Change-Id: I83249f724ecbfeeb4fd5c1cd33a9c6195c590c4b
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-03-22 06:05:30 +00:00
Frederik Gladhorn
9ae91ae3f8 Update Python 3.4 to 3.6 in RHEL 7.x
Also install Python 3 through system packages instead
of some weird scripts.

Change-Id: Ie22e126a422bd6efe9b3030d5044f4c196894ca8
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-03-22 06:05:26 +00:00
Joni Jantti
418cb4c4f5 Provisioning: Win8.1_x64 - Add Python2 and Python3 for RTA
Python is required by RTA.

Task-number: QTQAINFRA-1870
Change-Id: If63218da138995580a3bed5ede8996d722fff48d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-22 06:05:23 +00:00
Matti Paaso
b59f4207a3 Add Windows 8.1 target for RTA
Change-Id: Ifd055590bada66f7437af0b4de4a8549440952ae
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-22 06:05:20 +00:00
Qt Submodule Update Bot
488dc5c36e Update submodules on '5.11' in qt5
Change-Id: Id1050cad70aad6d24368220769709b817dc70f8b
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-21 05:07:39 +00:00
Qt Submodule Update Bot
3cb40d34d3 Update submodules on '5.11' in qt5
Change-Id: I12849c9612793703b598411c6a6b3c433f27b4fc
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-20 12:38:16 +00:00
Tony Sarajärvi
f6d18ec9b3 Disable background update checks in RHEL 7.x
Change-Id: If17fd47850be8b3a59ded7e0a543c9160f92b84c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-20 12:38:13 +00:00
Heikki Halmet
a6feaec287 Provisioning: Fix java installation for mac
Change-Id: I3b6672e671720416af71631c2f9ce814f07e596a
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-19 11:57:09 +00:00
Tony Sarajärvi
1b5f8cec03 Remove try_catch.sh helper script
Change-Id: I3981920bb8085ffbad89c31e0fd628a6e11146b6
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:57:06 +00:00
Tony Sarajärvi
2f9a2f65e5 Remove try_catch codes from macOS 10.12 provisioning
Change-Id: I57fbfdef3e8105e9e66c576ef545fc6c22400ac7
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:57:03 +00:00
Tony Sarajärvi
a98b0f3d79 Remove try_catch codes from common macOS scripts
Change-Id: I66291e2da5514499387b61e01ad85a652cd24d7b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-19 11:57:00 +00:00
Tony Sarajärvi
90261c1df5 Remove try_catch codes from unix scripts
Change-Id: Iabadbf28c65132ae614048cb98e92f57e3786056
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:56:58 +00:00
Tony Sarajärvi
250dd8c84e Remove try_catch codes from macOS 10.11 scripts
Change-Id: I7690ae186729b3a180b1d38c298a861d981dbf5d
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:56:55 +00:00
Tony Sarajärvi
1c6abfae01 Remove try_catch from common linux scripts
Change-Id: I9c7b472fa4c448f40c9adc6cc8a0d84cb9c5e74c
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:56:53 +00:00
Tony Sarajärvi
4492fd3268 Remove try_catch codes from Ubuntu 16.04 scripts
Change-Id: I4a377b8bc2a16d9b9c4123a9a4f623f1a6a7ae18
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-19 11:56:50 +00:00
Joni Jantti
5d7972b73b Provisioning: Windows - Disable autoreboot
Windows machines currently reboot automatically in case of a blue
screen crash. This must be disabled to prevent problems with Coin.

Task-number: QTQAINFRA-1748
Change-Id: I64ac1cfa124694fab356b8443298c1b37bed9a92
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-03-18 16:22:17 +00:00
Tony Sarajärvi
85f874388c Revert "Provisioning: openSUSE - Set grub timeout to 0"
This reverts commit 2e329bc68e.
grub-update command isn't found, and after enforcing script
results, we have a P0 blocker here.

Change-Id: Iaf4b17a91cdc865974a5f4f196bbb80b085a39c2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 677524620d)
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-18 16:22:15 +00:00
Tony Sarajärvi
863252be49 Download get-pip primarily from our local cache
We should first download from our local cache,
and if that doesn't work, fetch it online.

This commit doesn't fix it per se, but as we download
it from our local cache, the version is the one
our shasum checksum matches against.

Task-number: QTQAINFRA-1876
Change-Id: Ia7de54cf090af47ba33111911582f9d48c0ab2a2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-18 16:22:12 +00:00
Tony Sarajärvi
64c79b27d6 Clean old RHEL repo data before fetching new data
Task-number: QTQAINFRA-1872
Change-Id: I49d9d1589adc5b34f1b7c2dccc14be0021f2baaa
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
2018-03-18 16:22:09 +00:00
Tony Sarajärvi
eebc0133f0 Disable update download in background
Task-number: QTQAINFRA-1852
Change-Id: I6d8e433fa40dd080fe84efcf3d0c655d14f86010
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-18 16:22:07 +00:00
Tony Sarajärvi
209cb73a36 Use local RHEL repositories with RHEL 7.4
This will remove the majority of our network traffic from the outbound
connection while provisioning. Also proxy was removed for
yum, as there is no point in proxying local data.

As a side effect, this makes provisioning currently faster by
reducing the time it takes by 35%.


Task-number: QTQAINFRA-1849
Change-Id: Ida4fb86d4bef166fc72e521e395d9753ec47a687
Reviewed-by: Timo Aarnipuro <timo.aarnipuro@qt.io>
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-16 05:23:05 +00:00
Qt Submodule Update Bot
400371faba Update submodules on '5.11' in qt5
Change-Id: I9ad2fe2d1bad7d761b25de77d473994870aac960
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-16 05:22:45 +00:00
Heikki Halmet
23b4bcf6c5 Provisioning: Move http_proxy.txt under shared folder
Change-Id: Id5b2f07a92eadfb21fbfdb3fb65621d6322dc8c4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-03-15 15:07:27 +00:00
Heikki Halmet
237b308d47 Provisioning: Fix adb process name for android sdk installation
There's no process called "adb.exe" - It's called "adb"

Change-Id: I3c23ede12a6d7fc7f3f33bbb806a84e8d9a2aaf4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-03-15 15:07:24 +00:00
Qt Submodule Update Bot
280b08eb73 Update submodules on '5.11' in qt5
Change-Id: I6a0ad20fa97dabfbec8eaed990e844b26b20b353
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2018-03-15 05:10:50 +00:00
Jędrzej Nowacki
8a47814c91 Simplify DownloadURL
The script was over-engineered. The new version provides the same
functionality while removing uninteresting postmortem messages.

In addition try_catch.sh has a bug that injects set +e to a sourcing
script which was propagating through DownloadURL.sh to almost all
provisioning scripts. So it is good to avoid using it.

Change-Id: If191a0dcf52a29c4bec580a254e8e58a00130f6d
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-03-14 05:12:41 +00:00
Qt Submodule Update Bot
8fae7aa66d Update submodules on '5.11' in qt5
Change-Id: I8234b4d7d7c54ed0020e6cd2fcdbaa07d33eb928
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-14 05:12:31 +00:00
85 changed files with 595 additions and 1325 deletions

4
.gitmodules vendored
View File

@@ -249,8 +249,8 @@
branch = 5.11 branch = 5.11
status = addon status = addon
[submodule "qtpurchasing"] [submodule "qtpurchasing"]
depends = qtbase qtandroidextras depends = qtbase
recommends = qtdeclarative recommends = qtdeclarative qtandroidextras
path = qtpurchasing path = qtpurchasing
url = ../qtpurchasing.git url = ../qtpurchasing.git
branch = 5.11 branch = 5.11

View File

@@ -12,7 +12,7 @@ qtci-linux-Ubuntu-16.04-x86_64-2 GCC
qtci-linux-openSUSE-42.3-x86_64 GCC DeveloperBuild NoPch qtci-linux-openSUSE-42.3-x86_64 GCC DeveloperBuild NoPch
qtci-linux-openSUSE-42.3-x86_64 ICC_18 DeveloperBuild NoPch DisableTests SystemSQLite qtci-linux-openSUSE-42.3-x86_64 ICC_18 DeveloperBuild NoPch DisableTests SystemSQLite
qtci-linux-RHEL-6.6-x86_64 GCC Release ForceDebugInfo qtci-linux-RHEL-6.6-x86_64 GCC Release ForceDebugInfo
qtci-linux-RHEL-7.4-x86_64 GCC Packaging Release NoUseGoldLinker qtci-linux-RHEL-7.4-x86_64 GCC Packaging Release NoUseGoldLinker ForceDebugInfo SeparateDebugInfo
qtci-macos-10.12-x86_64-8 Clang Packaging DebugAndRelease Release qtci-macos-10.12-x86_64-8 Clang Packaging DebugAndRelease Release
qtci-osx-10.11-x86_64-3 Clang DeveloperBuild Release QtNamespace NoPch qtci-osx-10.11-x86_64-3 Clang DeveloperBuild Release QtNamespace NoPch
qtci-osx-10.11-x86_64-3 Clang Release NoFramework DisableTests qtci-osx-10.11-x86_64-3 Clang Release NoFramework DisableTests

View File

@@ -1,5 +1,6 @@
Template Target OS Target arch Compiler Features Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- ------------------------------------------------------------------------------------- --------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-7-x86_64-4 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests qtci-windows-7-x86_64-4 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86-6 MSVC2017 Release ForceDebugInfo OpenGLDynamic qtci-windows-8.1-x86_64 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86-3 MSVC2017 Release ForceDebugInfo OpenGLDynamic

View File

@@ -37,7 +37,6 @@
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version # It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh" source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -62,75 +61,43 @@ toolsSourceFile="$basePath/$toolsFile"
ndkTargetFile="/tmp/$ndkFile" ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile" ndkSourceFile="$basePath/$ndkFile"
ExceptionDownload=99 DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile"
ExceptionUnzipTools=100 DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
ExceptionUnzipNdk=101 echo "Unzipping Android NDK to '$targetFolder'"
ExceptionRmTools=102 sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
ExceptionRmNdk=103 echo "Unzipping Android Tools to '$sdkTargetFolder'"
ExceptionSdkManager=104 sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder"
rm "$ndkTargetFile"
rm "$toolsTargetFile"
try echo "Changing ownership of Android files."
( if uname -a |grep -q "el6\|el7"; then
(DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile") || throw $ExceptionDownload sudo chown -R qt:wheel "$targetFolder"
(DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile") || throw $ExceptionDownload else
echo "Unzipping Android NDK to '$targetFolder'" sudo chown -R qt:users "$targetFolder"
sudo unzip -q "$ndkTargetFile" -d "$targetFolder" || throw $ExceptionUnzipNdk fi
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
rm "$ndkTargetFile" || throw $ExceptionRmNdk
rm "$toolsTargetFile" || throw $ExceptionRmTools
echo "Changing ownership of Android files." echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
if uname -a |grep -q "el6\|el7"; then if [ "$http_proxy" != "" ]; then
sudo chown -R qt:wheel "$targetFolder" proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1)
else proxy_port=$(echo $proxy | cut -d':' -f3)
sudo chown -R qt:users "$targetFolder" 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"
fi else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
fi
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
if [ "$http_proxy" != "" ]; then SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1) SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64"
proxy_port=$(echo $proxy | cut -d':' -f3) SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
fi
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion" echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64" echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel" echo "Android NDK = $ndkVersion" >> ~/versions.txt
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionUnzipTools)
echo "Failed to unzip Android SDK Tools."
exit 1;
;;
$ExceptionUnzipNdk)
echo "Failed to unzip Android NDK."
exit 1;
;;
$ExceptionRmTools)
echo "Failed to remove temporary tools package '$toolsTargetFile'."
exit 1;
;;
$ExceptionRmNdk)
echo "Failed to remove temporary NDK package '$ndkTargetFile'."
exit 1;
;;
$ExceptionSdkManager)
echo "Failed to run sdkmanager."
exit 1;
;;
esac
}
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
./avdmanager list avd

View File

@@ -44,7 +44,7 @@ sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/qnx700.tar.xz"
sha1="949a87c5f00d0756956cb4b1b3b213ecaeee9113" sha1="949a87c5f00d0756956cb4b1b3b213ecaeee9113"
folderName="qnx700" folderName="qnx700"
targetFile="qnx700.tar.xz" targetFile="qnx700.tar.xz"
wget --tries=5 --waitretry=5 --output-document="$targetFile" "$sourceFile" wget --tries=5 --waitretry=5 --progress=dot:giga --output-document="$targetFile" "$sourceFile"
echo "$sha1 $targetFile" | sha1sum --check echo "$sha1 $targetFile" | sha1sum --check
if [ ! -d "$targetFolder" ]; then if [ ! -d "$targetFolder" ]; then
mkdir -p $targetFolder mkdir -p $targetFolder

View File

@@ -37,21 +37,11 @@
# uncompresses it and installs it by default # uncompresses it and installs it by default
# to /Applications/. This can be overridden by a target parameter. # to /Applications/. This can be overridden by a target parameter.
# shellcheck source=try_catch.sh set -ex
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
# shellcheck source=DownloadURL.sh # shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallAppFromCompressedFileFromURL { function InstallAppFromCompressedFileFromURL {
url=$1 url=$1
url_alt=$2 url_alt=$2
@@ -63,74 +53,39 @@ function InstallAppFromCompressedFileFromURL {
target="/Applications/" target="/Applications/"
fi fi
try basefilename=${url##*/}
( extension=${basefilename##*.}
basefilename=${url##*/} filename=${basefilename%.*}
extension=${basefilename##*.} if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
filename=${basefilename%.*} extension="tar.gz"
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then fi
extension="tar.gz"
fi
echo "Extension for file: $extension" echo "Extension for file: $extension"
echo "Creating temporary file and directory" echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension")
# macOS 10.10 mktemp does require prefix # macOS 10.10 mktemp does require prefix
if [[ $OSTYPE == "darwin14" ]]; then if [[ $OSTYPE == "darwin14" ]]; then
targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory targetDirectory=$(mktemp -d -t '10.10')
else else
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory targetDirectory=$(mktemp -d)
fi fi
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload (DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile")
echo "Uncompress $targetFile" echo "Uncompress $targetFile"
case $extension in case $extension in
"tar.gz") "tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress tar -xzf "$targetFile" --directory "$targetDirectory"
;; ;;
"zip") "zip")
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress unzip -q "$targetFile" -d "$targetDirectory"
;; ;;
*) *)
throw $ExceptionUnknownFormat exit 1
;; ;;
esac esac
echo "Moving app to '$target'" echo "Moving app to '$target'"
sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp sudo mv "$targetDirectory/$appPrefix/"* "$target"
echo "Removing file '$targetFile'" echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile rm "$targetFile"
echo "Removing directory '$targetDirectory'" echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory rm -rf "$targetDirectory"
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to '$target'."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
} }

View File

@@ -33,16 +33,7 @@
## ##
############################################################################# #############################################################################
# shellcheck source=try_catch.sh set -ex
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
ExceptionCreateTmpFile=100
ExceptionDownloadPrimaryUrl=101
ExceptionDownloadAltUrl=102
ExceptionSHA1=103
ExceptionInstallerPKG=104
ExceptionDeleteTmpFile=105
function InstallPKGFromURL { function InstallPKGFromURL {
url=$1 url=$1
@@ -50,55 +41,19 @@ function InstallPKGFromURL {
expectedSha1=$3 expectedSha1=$3
targetDirectory=$4 targetDirectory=$4
try echo "Creating temporary file"
( targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg")
echo "Creating temporary file" echo "Downloading PKG from primary URL '$url'"
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") || trow $ExceptionCreateTmpFile curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
try echo "Failed to download '$url' multiple times"
( echo "Downloading PKG from alternative URL '$url_alt'"
echo "Downloading PKG from primary URL '$url'" curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading PKG from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
/usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1
echo "Run installer on PKG"
sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
) )
echo "Checking SHA1 on PKG '$targetFile'"
catch || { echo "$expectedSha1 *$targetFile" > $targetFile.sha1
case $ex_code in /usr/bin/shasum --check $targetFile.sha1
$ExceptionCreateTmpFile) echo "Run installer on PKG"
echo "Failed to create temporary file" sudo installer -package "$targetFile" -target "$targetDirectory"
exit 1; echo "Removing file '$targetFile'"
;; rm "$targetFile"
$ExceptionDownloadAltUrl)
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed to check sha1sum."
exit 1;
;;
$ExceptionInstallerPKG)
echo "Failed running installer on PKG."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
esac
}
} }

View File

@@ -0,0 +1,3 @@
#!/usr/bin/env bash
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean FALSE

View File

@@ -34,8 +34,8 @@
# This script installs FBX SDK # This script installs FBX SDK
# shellcheck source=./../unix/try_catch.sh set -ex
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
# shellcheck source=../unix/SetEnvVar.sh # shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -50,27 +50,18 @@ installer="$targetFolder/fbx20161_2_fbxsdk_clang_macos.pkg"
ExceptionExtractPrimaryUrl=100 ExceptionExtractPrimaryUrl=100
try echo "Extracting '$cachedUrl'"
( tar -xzf "$cachedUrl" -C "$targetFolder" || (
echo "Extracting '$cachedUrl'" echo "Failed to uncompress from '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || throw $ExceptionExtractPrimaryUrl echo "Downloading from '$officialUrl'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl"
echo "Checking SHA1 on PKG '$targetFile'"
echo "$sha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1
echo "Extracting '$targetFile'"
tar -xzf "$targetFile" -C "$targetFolder"
) )
catch || {
case $ex_code in
$ExceptionExtractPrimaryUrl)
set -e
echo "Failed to uncompress from '$cachedUrl'"
echo "Downloading from '$officialUrl'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" || exit 1;
echo "Checking SHA1 on PKG '$targetFile'"
echo "$sha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1
echo "Extracting '$targetFile'"
tar -xzf "$targetFile" -C "$targetFolder" || exit 1;
;;
esac
}
set -e
rm -rf "$targetFile" rm -rf "$targetFile"
echo "Running installer for '$installer'" echo "Running installer for '$installer'"
sudo installer -pkg "$installer" -target "/" sudo installer -pkg "$installer" -target "/"

View File

@@ -33,56 +33,30 @@
## ##
############################################################################# #############################################################################
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh" source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
set -ex set -ex
# Command line tools is need by homebrew # Command line tools is need by homebrew
function InstallCommandLineTools { function InstallCommandLineTools {
ExceptionMount=101
ExceptionInstall=102
ExceptionUnmount=103
url=$1 url=$1
url_alt=$2 url_alt=$2
expectedSha1=$3 expectedSha1=$3
packageName=$4 packageName=$4
version=$5 version=$5
try DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName
( echo "Mounting $packageName"
DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName hdiutil attach /tmp/$packageName
echo "Mounting $packageName" cd "/Volumes/Command Line Developer Tools"
hdiutil attach /tmp/$packageName || throw $ExceptionMount echo "Installing"
cd "/Volumes/Command Line Developer Tools" sudo installer -verbose -pkg *.pkg -target /
echo "Installing" cd /
sudo installer -verbose -pkg *.pkg -target / || throw $ExceptionInstall # Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted
cd / sleep 3
# Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted echo "Unmounting"
sleep 3 umount /Volumes/Command\ Line\ Developer\ Tools/
echo "Unmounting" echo "Removing $packageName"
umount /Volumes/Command\ Line\ Developer\ Tools/ || throw $ExceptionUnmount rm /tmp/$packageName
echo "Removing $packageName"
rm /tmp/$packageName
echo "Command Line Tools = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionMount)
echo "Failed to mount"
exit 1;
;;
$ExceptionInstall)
echo "Failed to install"
exit 1;
;;
$ExceptionUnmount)
echo "Failed to unmount"
exit 1;
esac
}
echo "Command Line Tools = $version" >> ~/versions.txt
} }

View File

@@ -44,48 +44,18 @@
# shellcheck source=../common/unix/try_catch.sh function InstallXCode() {
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
function InstallXCode()
{
ExceptionCPIO=103
ExceptionAcceptLicense=105
ExceptionDeveloperMode=113
sourceFile=$1 sourceFile=$1
version=$2 version=$2
try echo "Uncompressing and installing '$sourceFile'"
( xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
echo "Uncompressing and installing '$sourceFile'"
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi) || throw $ExceptionCPIO
echo "Accept license" echo "Accept license"
sudo xcodebuild -license accept || throw $ExceptionAcceptLicense sudo xcodebuild -license accept
echo "Enabling developer mode, so that using lldb does not require interactive password entry" echo "Enabling developer mode, so that using lldb does not require interactive password entry"
sudo /usr/sbin/DevToolsSecurity -enable || throw $ExceptionDeveloperMode sudo /usr/sbin/DevToolsSecurity -enable
echo "Xcode = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionCPIO)
echo "Failed to unarchive .cpio."
exit 1;
;;
$ExceptionDeveloperMode)
echo "Failed to enable developer mode."
exit 1;
;;
$ExceptionAcceptLicense)
echo "Failed to accept license."
exit 1;
;;
esac
}
echo "Xcode = $version" >> ~/versions.txt
} }

View File

@@ -39,94 +39,25 @@ set -ex
echo "Installing Java Development Kit" echo "Installing Java Development Kit"
# shellcheck source=../unix/try_catch.sh targetFile=jdk-8u102-macosx-x64.dmg
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
ExceptionDownloadPrimaryUrl=100 url=ci-files01-hki.intra.qt.io:/hdd/www/input/mac
ExceptionDownloadAltUrl=101 # url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg
ExceptionSHA1=102
ExceptionAttachImage=103
ExceptionInstall=104
ExceptionDetachImage=105
ExceptionRemoveTmpFile=106
ExceptionDisableAutoUpdate=107
echo "Mounting $targetFile"
sudo mount "$url" /Volumes
url=http://ci-files01-hki.intra.qt.io/input/mac/jdk-8u102-macosx-x64.dmg sudo cp "/Volumes/$targetFile" /tmp
url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg sudo umount /Volumes
targetFile=/tmp/jdk-8u102-macosx-x64.dmg sudo hdiutil attach "/tmp/$targetFile"
expectedSha1=1405af955f14e32aae187b5754a716307db22104
try echo Installing JDK
( cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /
try
(
echo "Downloading from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading tar.gz from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on '$targetFile'"
echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
echo Mounting DMG echo "Unmounting $targetFile"
hdiutil attach "$targetFile" || throw $ExceptionAttachImage sudo hdiutil unmount /Volumes/JDK\ 8\ Update\ 102/ -force
echo Installing JDK echo "Disable auto update"
(cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /) || throw $ExceptionInstall sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
disk=`hdiutil info | grep '/Volumes/JDK 8 Update 102' | awk '{print $1}'` echo "JDK Version = 8 update 102" >> ~/versions.txt
hdiutil detach $disk || throw $ExceptionDetachImage
echo "Removing temporary file '$targetFile'"
rm "$targetFile" || throw $ExceptionRemoveTmpFile
echo "Disable auto update"
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false || throw $ExceptionDisableAutoUpdate
echo "JDK Version = 8 update 102" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download JDK from primary URL."
exit 1;
;;
$ExceptionDownloadAltUrl)
echo "Failed to download JDK from alternative URL."
exit 1;
;;
$ExceptionSHA1)
echo "Failed to check SHA1."
exit 1;
;;
$ExceptionAttachImage)
echo "Failed to attach image."
exit 1;
;;
$ExceptionInstall)
echo "Failed to install JDK."
exit 1;
;;
$ExceptionDetachImage)
echo "Failed to detach image."
exit 1;
;;
$ExceptionRemoveTmpFile)
echo "Failed to remove temporary file."
exit 1;
;;
$ExceptionDisableAutoUpdate)
echo "Failed to disable auto update."
exit 1;
;;
esac
}

View File

@@ -40,51 +40,21 @@
# If called directly from another script, it will exit the parent script # If called directly from another script, it will exit the parent script
# as well, if not called in its own subshell with parentheses. # as well, if not called in its own subshell with parentheses.
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/try_catch.sh"
ExceptionDownloadPrimaryUrl=100
ExceptionDownloadAltUrl=101
ExceptionSHA1=102
function DownloadURL { function DownloadURL {
url=$1 url=$1
url_alt=$2 url_alt=$2
expectedSha1=$3 expectedSha1=$3
targetFile=$4 targetFile=$4
try echo "Downloading from primary URL '$url'"
( curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
try echo "Failed to download '$url' multiple times"
( echo "Downloading from alternative URL '$url_alt'"
echo "Downloading from primary URL '$url'" curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading tar.gz from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
sha1sum --check $targetFile.sha1 || throw $ExceptionSHA1
) )
catch || { echo "Checking SHA1 on PKG '$targetFile'"
case $ex_code in echo "$expectedSha1 *$targetFile" > $targetFile.sha1
$ExceptionDownloadAltUrl) sha1sum --check $targetFile.sha1
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed checksum on $targetFile."
exit 1;
;;
esac
}
} }

View File

@@ -33,21 +33,11 @@
## ##
############################################################################# #############################################################################
# shellcheck source=try_catch.sh set -ex
source "${BASH_SOURCE%/*}/try_catch.sh"
# shellcheck source=DownloadURL.sh # shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/DownloadURL.sh" source "${BASH_SOURCE%/*}/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallFromCompressedFileFromURL { function InstallFromCompressedFileFromURL {
url=$1 url=$1
url_alt=$2 url_alt=$2
@@ -55,70 +45,35 @@ function InstallFromCompressedFileFromURL {
installDirectory=$4 installDirectory=$4
appPrefix=$5 appPrefix=$5
try basefilename=${url##*/}
( extension=${basefilename##*.}
basefilename=${url##*/} filename=${basefilename%.*}
extension=${basefilename##*.} if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
filename=${basefilename%.*} extension="tar.gz"
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then fi
extension="tar.gz" echo "Extension for file: $extension"
fi echo "Creating temporary file and directory"
echo "Extension for file: $extension" targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension")
echo "Creating temporary file and directory" targetDirectory=$(mktemp -d)
targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension") || throw $ExceptionCreateTmpFile DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory echo "Uncompress $targetFile"
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload case $extension in
echo "Uncompress $targetFile" "tar.gz")
case $extension in tar -xzf "$targetFile" --directory "$targetDirectory"
"tar.gz") ;;
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress "zip")
;; unzip "$targetFile" -d "$targetDirectory"
"zip") ;;
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress *)
;; exit 1
*) ;;
throw $ExceptionUnknownFormat esac
;; echo "Moving app to $installDirectory"
esac sudo mkdir -p "$installDirectory"
echo "Moving app to $installDirectory" sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory"
sudo mkdir -p "$installDirectory" echo "Removing file '$targetFile'"
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp rm "$targetFile"
echo "Removing file '$targetFile'" echo "Removing directory '$targetDirectory'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile rm -rf "$targetDirectory"
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to target location."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
} }

View File

@@ -32,19 +32,8 @@
## ##
############################################################################# #############################################################################
source "${BASH_SOURCE%/*}/try_catch.sh" set -ex
source "${BASH_SOURCE%/*}/../http_proxy.txt"
try source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
(
wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io
)
if [ $? -eq 0 ]; then
echo "Setting http_proxy to $proxy"
export http_proxy=$proxy
else
echo "Proxy not detected at $proxy"
fi
(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"

View File

@@ -33,8 +33,6 @@
## ##
############################################################################# #############################################################################
source "${BASH_SOURCE%/*}/try_catch.sh"
set -ex set -ex
# This script will install squish package for Linux and Mac. # This script will install squish package for Linux and Mac.
@@ -65,18 +63,7 @@ if [ -f "/etc/profile.d/squish_env.sh" ]; then
export SQUISH_LICENSEKEY_DIR=$HOME export SQUISH_LICENSEKEY_DIR=$HOME
fi fi
ExceptionMount=100
ExceptionCreateFolder=101
ExceptionUncompress=102
ExceptionUnknownFormat=103
ExceptionCopy=104
ExceptionUmount=105
ExceptionHdiutilAttach=106
ExceptionInstallSquish=107
ExceptionChangeOwnership=108
function MountAndInstall { function MountAndInstall {
url=$1 url=$1
targetDirectory=$2 targetDirectory=$2
targetFile=$3 targetFile=$3
@@ -102,96 +89,51 @@ function MountAndInstall {
targetFileMount="$mountFolder"/"$targetFile" targetFileMount="$mountFolder"/"$targetFile"
try echo "Mounting $url to $mountFolder"
( sudo mount "$url" $mountFolder
echo "Mounting $url to $mountFolder" echo "Create $targetDirectory if needed"
sudo mount "$url" $mountFolder || throw $ExceptionMount if [ ! -d "/opt" ]; then
echo "Create $targetDirectory if needed" sudo mkdir "/opt"
if [ ! -d "/opt" ]; then fi
sudo mkdir "/opt" || throw $ExceptionCreateFolder if [ ! -d "$targetDirectory" ]; then
fi sudo mkdir "$targetDirectory"
if [ ! -d "$targetDirectory" ]; then fi
sudo mkdir "$targetDirectory" || throw $ExceptionCreateFolder echo "Uncompress $targetFile"
fi if [[ $targetFile == *.tar.gz ]]; then
echo "Uncompress $targetFile" if [[ $targetFile == .squish-3-license.* ]]; then
if [[ $targetFile == *.tar.gz ]]; then target="$squishLicenseDir"
if [[ $targetFile == .squish-3-license.* ]]; then # Squish license need to be exists also in users home directory, because squish check it before it starts running tests
target="$squishLicenseDir" sudo tar -xzf "$targetFileMount" --directory "$HOME"
# 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 else
throw $ExceptionUnknownFormat target="$targetDirectory"
fi fi
sudo tar -xzf "$targetFileMount" --directory "$target"
echo "Unmounting $mountFolder"
sudo umount $mountFolder
elif [[ $targetFile == *.dmg ]]; then
echo "'dmg-file', no need to uncompress"
sudo cp $targetFileMount /tmp
sudo umount $mountFolder
sudo hdiutil attach "/tmp/$targetFile"
sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory"
sudo hdiutil unmount /Volumes/froglogic\ Squish/
elif [[ $targetFile == *.run ]]; then
echo "'run-file', no need to uncompress"
sudo cp $targetFileMount $targetDirectory
sudo umount $mountFolder
sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1
sudo rm -fr "$targetDirectory/$targetFile"
if uname -a |grep -q "Ubuntu"; then
sudo mkdir /usr/lib/tcl8.6
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/
fi
else
exit 1
fi
echo "Changing ownerships" echo "Changing ownerships"
sudo chown -R qt:$usersGroup "$targetDirectory" || throw $ExceptionChangeOwnership sudo chown -R qt:$usersGroup "$targetDirectory"
sudo chown qt:$usersGroup "$HOME/.squish-3-license" 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" echo "Set commands for environment variables in .bashrc"

View File

@@ -91,7 +91,7 @@ SdkUpdate $sdkFolder platform-tools
SdkUpdate $sdkFolder build-tools-$sdkBuildToolsVersion SdkUpdate $sdkFolder build-tools-$sdkBuildToolsVersion
# kill adb. This process prevents provisioning to continue # kill adb. This process prevents provisioning to continue
$p = Get-Process -Name "adb.exe" -ErrorAction:SilentlyContinue $p = Get-Process -Name "adb" -ErrorAction:SilentlyContinue
if ($p -ne $null) { if ($p -ne $null) {
Write-Host "Stopping adb.exe" Write-Host "Stopping adb.exe"
Stop-Process -Force $p Stop-Process -Force $p

View File

@@ -1,11 +1,9 @@
#!/usr/bin/env bash ############################################################################
#############################################################################
## ##
## Copyright (C) 2017 The Qt Company Ltd. ## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/ ## Contact: http://www.qt.io/licensing/
## ##
## This file is part of the test suite of the Qt Toolkit. ## This file is part of the provisioning scripts of the Qt Toolkit.
## ##
## $QT_BEGIN_LICENSE:LGPL21$ ## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage ## Commercial License Usage
@@ -32,33 +30,6 @@
## $QT_END_LICENSE$ ## $QT_END_LICENSE$
## ##
############################################################################# #############################################################################
. "$PSScriptRoot\helpers.ps1"
echo "Sourcing try_catch.sh" Get-WmiObject Win32_OSRecoveryConfiguration -EnableAllPrivileges | Set-WmiInstance -Arguments @{ AutoReboot=$False }
function try()
{
[[ $- = *e* ]]; SAVED_OPT_E=$?
set +e
}
function throw()
{
exit "$1"
}
function catch()
{
export ex_code=$?
(( SAVED_OPT_E )) && set +e
return $ex_code
}
function throwErrors()
{
set -e
}
function ignoreErrors()
{
set +e
}

View File

@@ -71,6 +71,9 @@ Run-Executable "$javaPackage" "/s SPONSORS=0"
Write-Host "Cleaning $javaPackage.." Write-Host "Cleaning $javaPackage.."
Remove-Item -Recurse -Force -Path "$javaPackage" Remove-Item -Recurse -Force -Path "$javaPackage"
Write-Host "Remove Java update from startup"
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run" /v SunJavaUpdateSched /f
Set-EnvironmentVariable "JAVA_HOME" "$installdir" Set-EnvironmentVariable "JAVA_HOME" "$installdir"
Add-Path "$installdir\bin" Add-Path "$installdir\bin"

View File

@@ -47,7 +47,6 @@ if (Test-Path $preparedPackage) {
# The prepared package contains updated packages so that not everything has to be downloaded # The prepared package contains updated packages so that not everything has to be downloaded
Write-Host "Using prepared package" Write-Host "Using prepared package"
Copy-Item -Recurse $preparedPackage $packagePath Copy-Item -Recurse $preparedPackage $packagePath
exit 0
# Remove the whole downloaded folder # Remove the whole downloaded folder
$toRemove = $packagePath + "\vs14-kb3165756-update" $toRemove = $packagePath + "\vs14-kb3165756-update"
$executable = "$toRemove\vs14-kb3165756.exe" $executable = "$toRemove\vs14-kb3165756.exe"

View File

@@ -31,7 +31,7 @@
## ##
############################################################################# #############################################################################
$n = Get-Content "$PSScriptRoot\..\http_proxy.txt" $n = Get-Content "$PSScriptRoot\..\shared\http_proxy.txt"
$n = $n.Split('=') $n = $n.Split('=')
New-Variable -Name $n[0] -Value $n[1] New-Variable -Name $n[0] -Value $n[1]

View File

@@ -33,13 +33,18 @@
. "$PSScriptRoot\helpers.ps1" . "$PSScriptRoot\helpers.ps1"
# This script will install squish package for Windows. # This script will install squish package for Windows.
# Squish is need by Release Test Automation (RTA) # Squish is need by Release Test Automation (RTA)
# NOTE! Make sure 64bit versions are always installed before 32bit,
# because they use same folder name before a rename
$version = "6.3.0" $version = "6.3.0"
# Qt branch without dot (*.*) # Qt branch without dot (*.*)
$qtBranch = "59x" $qtBranch = "59x"
# So far Squish built with Qt5.9 works also with 5.10 and 5.11, but we have to be prepared that on some point
# the compatibility breaks, and we may need to have separate Squish packages for different Qt versions.
$targetDir = "C:\Utils\squish" $targetDir = "C:\Utils\squish"
$squishUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin" $squishUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin"
$squishBranchUrl = "$squishUrl\$qtBranch" $squishBranchUrl = "$squishUrl\$qtBranch"
@@ -49,23 +54,10 @@ $licensePackage = ".squish-3-license"
$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName $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 {
Write-Host "Renaming old Squish"
Write-Host "Rename-Item -ErrorAction 'Stop' $targetDir $targetDir_deleted"
Rename-Item -ErrorAction 'Stop' "$targetDir" squish_deleted
} catch {}
}
Function DownloadAndInstallSquish { Function DownloadAndInstallSquish {
Param ( Param (
[string]$version, [string]$version,
[string]$squishBranchUrl,
[string]$qtBranch,
[string]$bit, [string]$bit,
[string]$targetDir,
[string]$squishPackage [string]$squishPackage
) )
@@ -78,81 +70,57 @@ Function DownloadAndInstallSquish {
Write-Host "Installing Squish" Write-Host "Installing Squish"
Run-Executable "$SquishInstaller" "$SquishParameters" Run-Executable "$SquishInstaller" "$SquishParameters"
Remove-Item -Path $SquishInstaller Remove-Item -Path $SquishInstaller
if ("$bit" -eq "win64") {
if ($squishPackage.StartsWith("mingw")) {
$squishPackage64bit = "mingw_64"
} else {
$squishPackage64bit = "$squishPackage`_64"
}
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
} else {
if ($squishPackage.StartsWith("mingw")) {
Rename-Item $targetDir\$squishPackage $targetDir\mingw
}
}
} }
Function DownloadSquishLicence { Function DownloadSquishLicence {
Param ( Param (
[string]$licensePackage, [string]$squishUrl
[string]$squishUrl,
[string]$targetDir
) )
# This can be removed when using vanilla os
if ($Env:SQUISH_LICENSEKEY_DIR) {
Write-Host "Removing SQUISH_LICENSEKEY_DIR env variable"
Remove-Item Env:\SQUISH_LICENSEKEY_DIR
}
Write-Host "Installing Squish license to home directory" Write-Host "Installing Squish license to home directory"
Copy-Item $squishUrl\$licensePackage ~\$licensePackage Copy-Item $squishUrl\$licensePackage ~\$licensePackage
} }
Write-Host "Creating $targetDir" Write-Host "Creating $targetDir"
New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir" New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir"
DownloadSquishLicence $licensePackage $squishUrl $targetDir DownloadSquishLicence $squishUrl
if (($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 8.1 Enterprise")) { if ($OSVersion -eq "Windows 10 Enterprise") {
# Squish for MinGW
$squishPackageMingw = "mingw_gcc53_posix_dwarf"
Write-Host "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 (Is64BitWinHost) { if (Is64BitWinHost) {
Write-Host "Installing $squishPackage64bit" DownloadAndInstallSquish $version win64 msvc14
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
} }
DownloadAndInstallSquish $version win32 "mingw_gcc53_posix_dwarf"
DownloadAndInstallSquish $version win32 "msvc14"
Write-Host "Installing $squishPackage" } elseif ($OSVersion -eq "Windows 8.1 Enterprise") {
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
}
if ($OSVersion -eq "Windows 8.1 Enterprise") {
# Squish for Visual Studio 2013
$squishPackage64bit = "msvc12_64"
if (Is64BitWinHost) { if (Is64BitWinHost) {
Write-Host "Installing $squishPackage_64" DownloadAndInstallSquish $version win64 "msvc12"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage DownloadAndInstallSquish $version win64 "msvc14"
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
} else {
Write-Host "Change secret file to normal one"
Run-Executable "attrib.exe" "-h C:\Users\qt\.squish-3-license"
} }
} DownloadAndInstallSquish $version win32 "msvc14"
if ($OSVersion -eq "Windows 7 Enterprise") {
# Squish for MinGW
$squishPackageMingw = "mingw_gcc53_posix_dwarf"
Write-Host "Installing $squishPackageMingw"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackageMingw
Rename-Item $targetDir\$squishPackageMingw $targetDir\mingw
# Squish for Visual Studio 2015 } elseif ($OSVersion -eq "Windows 7 Enterprise") {
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if (Is64BitWinHost) { if (Is64BitWinHost) {
Write-Host "Installing $squishPackage64bit" DownloadAndInstallSquish $version win64 "msvc12"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage DownloadAndInstallSquish $version win64 "msvc14"
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
} }
DownloadAndInstallSquish $version win32 "mingw_gcc53_posix_dwarf"
Write-Host "Installing $squishPackage" DownloadAndInstallSquish $version win32 "msvc14"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
} }

View File

@@ -36,7 +36,6 @@
set -ex set -ex
BASEDIR=$(dirname "$0") BASEDIR=$(dirname "$0")
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
source $BASEDIR/../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 "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
@@ -50,7 +49,3 @@ export DISPLAY=:0
gsettings set org.gnome.desktop.screensaver lock-enabled false gsettings set org.gnome.desktop.screensaver lock-enabled false
# disable blank screen power saving # disable blank screen power saving
gsettings set org.gnome.desktop.session idle-delay 0 gsettings set org.gnome.desktop.session idle-delay 0
if [ "$http_proxy" != "" ]; then
echo "proxy=$proxy" | sudo tee -a /etc/yum.conf
fi

View File

@@ -35,4 +35,42 @@
set -ex set -ex
sudo subscription-manager repos --enable rhel-workstation-rhscl-7-rpms echo "set WritePreparedUpdates=false" | sudo tee -a /etc/PackageKit/PackageKit.conf
sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-7-workstation-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-7-workstation-optional-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-optional-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation - Optional (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-workstation-rhscl-7-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-workstation-rhscl-7-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Workstation
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
sudo yum clean all
# As well as this fetching the repository data, we also get a printout of the used repos
sudo yum repolist

View File

@@ -35,7 +35,6 @@
set -ex set -ex
sudo yum-config-manager --enable rhel-server-rhscl7-rpms
sudo yum -y install devtoolset-4 sudo yum -y install devtoolset-4
echo "source /opt/rh/devtoolset-4/enable" >> ~/.bashrc echo "source /opt/rh/devtoolset-4/enable" >> ~/.bashrc

View File

@@ -48,7 +48,6 @@ installPackages+=(mesa-libGL-devel)
installPackages+=(libxkbfile-devel) installPackages+=(libxkbfile-devel)
# Xinput2 # Xinput2
installPackages+=(libXi-devel) installPackages+=(libXi-devel)
installPackages+=(python-devel)
installPackages+=(mysql-server) installPackages+=(mysql-server)
installPackages+=(mysql) installPackages+=(mysql)
installPackages+=(mysql-devel) installPackages+=(mysql-devel)
@@ -64,8 +63,10 @@ installPackages+=(gtk3-devel)
installPackages+=(libusbx-devel) installPackages+=(libusbx-devel)
# speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux # speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux
installPackages+=(speech-dispatcher-devel) installPackages+=(speech-dispatcher-devel)
# Python # Python 2.7 with python-devel, pip and virtualenv
installPackages+=(python-devel python-virtualenv) installPackages+=(python27)
# Python 3 with python-devel, pip and virtualenv
installPackages+=(rh-python36)
# WebEngine # WebEngine
installPackages+=(bison) installPackages+=(bison)
installPackages+=(flex) installPackages+=(flex)
@@ -89,5 +90,10 @@ installPackages+=(libxslt-devel)
# For building Wayland from source # For building Wayland from source
installPackages+=(libffi-devel) installPackages+=(libffi-devel)
sudo yum -y update
sudo yum -y install "${installPackages[@]}" sudo yum -y install "${installPackages[@]}"
# Make python 2.7 and its pip default
echo "source scl_source enable python27" >> ~/.bashrc
sudo ln -s /opt/rh/rh-python36/root/usr/bin/python3 /usr/local/bin/python3
sudo ln -s /opt/rh/rh-python36/root/usr/bin/pip3 /usr/local/bin/pip3

View File

@@ -1,54 +0,0 @@
#!/usr/bin/env bash
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the 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
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
# install python3
sudo yum install -y python34-devel
# install pip3
packagePip="get-pip.py"
OfficialUrlPip="https://bootstrap.pypa.io/$packagePip"
CachedUrlPip="http://ci-files01-hki.intra.qt.io/input/redhat/$packagePip"
SHA1Pip="3d45cef22b043b2b333baa63abaa99544e9c031d"
DownloadURL $OfficialUrlPip $CachedUrlPip $SHA1Pip ./$packagePip
sudo python3 $packagePip
sudo rm -f $packagePip
sudo pip3 install virtualenv

View File

@@ -37,69 +37,25 @@
set -ex set -ex
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
NTS_IP=10.212.2.216 NTS_IP=10.212.2.216
ExceptionGsettings1=100 echo "Set timezone to UTC."
ExceptionGsettings2=101 sudo timedatectl set-timezone Etc/UTC
ExceptionGsettings3=102 echo "Timeout for blanking the screen (0 = never)"
ExceptionNTS=103 gsettings set org.gnome.desktop.session idle-delay 0
ExceptionProxy=104 echo "Prevents screen lock when screesaver goes active."
ExceptionGrub=105 gsettings set org.gnome.desktop.screensaver lock-enabled false
echo "Disable questions on shutdown."
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub
sudo update-grub
try 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
echo "Set timezone to UTC."
sudo timedatectl set-timezone Etc/UTC || throw $ExceptionTimezone
echo "Timeout for blanking the screen (0 = never)"
gsettings set org.gnome.desktop.session idle-delay 0 || throw $ExceptionGsettings1
echo "Prevents screen lock when screesaver goes active."
gsettings set org.gnome.desktop.screensaver lock-enabled false || throw $ExceptionGsettings2
echo "Disable questions on shutdown."
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true || throw $ExceptionGsettings3
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub || throw $ExceptionGrub
sudo update-grub || throw $ExceptionGrub
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS
if [ "$http_proxy" != "" ]; then
echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf || throw $ExceptionProxy
fi
)
catch || {
case $ex_code in
$ExceptionTimezone)
echo "Failed to set timezone to UTC"
exit 1;
;;
$ExceptionGsettings1)
echo "Failed to disable black screen."
exit 1;
;;
$ExceptionGsettings2)
echo "Failed to prevent screen lock."
exit 1;
;;
$ExceptionGsettings3)
echo "Failed to disable questions on shutdown."
exit 1;
;;
$ExceptionGrub)
echo "Failed to set grub timeout."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set network teset server address into /etc/hosts."
exit 1;
;;
$ExceptionProxy)
echo "Failed to set proxy /etc/apt/apt.conf."
exit 1;
;;
esac
}
if [ "$http_proxy" != "" ]; then
echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf
fi

View File

@@ -37,153 +37,127 @@
set -ex set -ex
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh" echo "Disabling auto update"
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic
for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do
sudo systemctl stop $service
sudo systemctl disable $service
done
ExceptionAPTUpdate=100 # aptdaemon is used by update notifiers and similar and there is no point in having those (the symptom is aptd holding a lock)
ExceptionAPT=101 for i in `seq 10`; do
ExceptionSED=102 echo attempting to remove aptdaemon
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y remove aptdaemon || true
# check that aptdaemon is no longer installed
which aptd > /dev/null || break
if [[ $i -eq 10 ]]; then
exit 1
fi
sleep 10
done
try # Git is not needed by builds themselves, but is nice to have
( # immediately as one starts debugging
echo "Disabling auto update" installPackages+=(git)
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic || throw $ExceptionSED # 7zip is a needed decompressing tool
for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do installPackages+=(p7zip-full)
sudo systemctl stop $service # To be able to mount yocto-cache during builds
sudo systemctl disable $service installPackages+=(nfs-common)
done # libssl-dev provides headers for OpenSSL
installPackages+=(libssl-dev)
# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
installPackages+=("^libxcb.*")
installPackages+=(libxkbcommon-dev)
installPackages+=(libxkbcommon-x11-dev)
installPackages+=(libx11-xcb-dev)
installPackages+=(libglu1-mesa-dev)
installPackages+=(libxrender-dev)
installPackages+=(libxi-dev)
# Enable linking to system dbus
installPackages+=(libdbus-1-dev)
# Needed libraries for WebEngine
installPackages+=(libudev-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
# Common event loop handling
installPackages+=(libglib2.0-dev)
# MySQL support
installPackages+=(libmysqlclient-dev)
# PostgreSQL support
installPackages+=(libpq-dev)
# SQLite support
installPackages+=(libsqlite3-dev)
# ODBC support
installPackages+=(unixodbc-dev)
# Support for FreeType font engine
installPackages+=(libfreetype6-dev)
# Enable the usage of system jpeg libraries
installPackages+=(libjpeg-dev)
# Enable support for printer driver
installPackages+=(libcups2-dev)
# Install libraries needed for QtMultimedia to be able to support all plugins
installPackages+=(libasound2-dev)
installPackages+=(libgstreamer1.0-dev)
installPackages+=(libgstreamer-plugins-base1.0-dev)
installPackages+=(libgstreamer-plugins-good1.0-dev)
installPackages+=(libgstreamer-plugins-bad1.0-dev)
# Support for cross-building to x86 (needed by WebEngine boot2qt builds)
installPackages+=(g++-multilib)
# python2 development package
installPackages+=(python-pip)
# python3 development package
installPackages+=(python3-dev)
installPackages+=(python3-pip)
installPackages+=(python3-virtualenv)
# Needed to be able to build Yocto
installPackages+=(chrpath)
installPackages+=(gawk)
installPackages+=(texinfo)
# Automates interactive applications (Needed by RTA to automate configure testing)
installPackages+=(expect)
installPackages+=(mesa-common-dev)
installPackages+=(libgl1-mesa-glx)
installPackages+=(libgl1-mesa-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(curl)
installPackages+=(libicu-dev)
installPackages+=(zlib1g-dev)
installPackages+=(zlib1g)
installPackages+=(openjdk-8-jdk)
installPackages+=(libgtk-3-dev)
installPackages+=(ninja-build)
installPackages+=(libssl-dev)
installPackages+=(libxcursor-dev)
installPackages+=(libxcomposite-dev)
installPackages+=(libxdamage-dev)
installPackages+=(libxrandr-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
installPackages+=(libsrtp0-dev)
installPackages+=(libwebp-dev)
installPackages+=(libjsoncpp-dev)
installPackages+=(libopus-dev)
installPackages+=(libminizip-dev)
installPackages+=(libavutil-dev)
installPackages+=(libavformat-dev)
installPackages+=(libavcodec-dev)
installPackages+=(libevent-dev)
installPackages+=(bison)
installPackages+=(flex)
installPackages+=(gperf)
installPackages+=(libasound2-dev)
installPackages+=(libpulse-dev)
installPackages+=(libxtst-dev)
installPackages+=(libnspr4-dev)
installPackages+=(libnss3-dev)
installPackages+=(libopenal-dev)
installPackages+=(libbluetooth-dev)
#VirtualBox for RTA
installPackages+=(virtualbox)
installPackages+=(dkms)
# aptdaemon is used by update notifiers and similar and there is no point in having those (the symptom is aptd holding a lock) echo "Running update for apt"
for i in `seq 10`; do sudo apt-get update
echo attempting to remove aptdaemon echo "Installing packages"
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y remove aptdaemon || true sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"
# check that aptdaemon is no longer installed
which aptd > /dev/null || break
if [[ $i -eq 10 ]]; then
throw $ExceptionAPT
fi
sleep 10
done
# Git is not needed by builds themselves, but is nice to have
# immediately as one starts debugging
installPackages+=(git)
# 7zip is a needed decompressing tool
installPackages+=(p7zip-full)
# To be able to mount yocto-cache during builds
installPackages+=(nfs-common)
# libssl-dev provides headers for OpenSSL
installPackages+=(libssl-dev)
# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
installPackages+=("^libxcb.*")
installPackages+=(libxkbcommon-dev)
installPackages+=(libxkbcommon-x11-dev)
installPackages+=(libx11-xcb-dev)
installPackages+=(libglu1-mesa-dev)
installPackages+=(libxrender-dev)
installPackages+=(libxi-dev)
# Enable linking to system dbus
installPackages+=(libdbus-1-dev)
# Needed libraries for WebEngine
installPackages+=(libudev-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
# Common event loop handling
installPackages+=(libglib2.0-dev)
# MySQL support
installPackages+=(libmysqlclient-dev)
# PostgreSQL support
installPackages+=(libpq-dev)
# SQLite support
installPackages+=(libsqlite3-dev)
# ODBC support
installPackages+=(unixodbc-dev)
# Support for FreeType font engine
installPackages+=(libfreetype6-dev)
# Enable the usage of system jpeg libraries
installPackages+=(libjpeg-dev)
# Enable support for printer driver
installPackages+=(libcups2-dev)
# Install libraries needed for QtMultimedia to be able to support all plugins
installPackages+=(libasound2-dev)
installPackages+=(libgstreamer1.0-dev)
installPackages+=(libgstreamer-plugins-base1.0-dev)
installPackages+=(libgstreamer-plugins-good1.0-dev)
installPackages+=(libgstreamer-plugins-bad1.0-dev)
# Support for cross-building to x86 (needed by WebEngine boot2qt builds)
installPackages+=(g++-multilib)
# python2 development package
installPackages+=(python-pip)
# python3 development package
installPackages+=(python3-dev)
installPackages+=(python3-pip)
installPackages+=(python3-virtualenv)
# Needed to be able to build Yocto
installPackages+=(chrpath)
installPackages+=(gawk)
installPackages+=(texinfo)
# Automates interactive applications (Needed by RTA to automate configure testing)
installPackages+=(expect)
installPackages+=(mesa-common-dev)
installPackages+=(libgl1-mesa-glx)
installPackages+=(libgl1-mesa-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(curl)
installPackages+=(libicu-dev)
installPackages+=(zlib1g-dev)
installPackages+=(zlib1g)
installPackages+=(openjdk-8-jdk)
installPackages+=(libgtk-3-dev)
installPackages+=(ninja-build)
installPackages+=(libssl-dev)
installPackages+=(libxcursor-dev)
installPackages+=(libxcomposite-dev)
installPackages+=(libxdamage-dev)
installPackages+=(libxrandr-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
installPackages+=(libsrtp0-dev)
installPackages+=(libwebp-dev)
installPackages+=(libjsoncpp-dev)
installPackages+=(libopus-dev)
installPackages+=(libminizip-dev)
installPackages+=(libavutil-dev)
installPackages+=(libavformat-dev)
installPackages+=(libavcodec-dev)
installPackages+=(libevent-dev)
installPackages+=(bison)
installPackages+=(flex)
installPackages+=(gperf)
installPackages+=(libasound2-dev)
installPackages+=(libpulse-dev)
installPackages+=(libxtst-dev)
installPackages+=(libnspr4-dev)
installPackages+=(libnss3-dev)
installPackages+=(libopenal-dev)
installPackages+=(libbluetooth-dev)
#VirtualBox for RTA
installPackages+=(virtualbox)
installPackages+=(dkms)
echo "Running update for apt"
sudo apt-get update
echo "Installing packages"
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" || throw $ExceptionAPT
)
catch || {
case $ex_code in
$ExceptionAPTUpdate)
echo "Failed to run APT update."
exit 1;
;;
$ExceptionAPT)
echo "Failed to install package."
sudo lsof /var/lib/dpkg/lock
exit 1;
;;
$ExceptionSED)
echo "Failed to disable auto update."
exit 1;
;;
esac
}

View File

@@ -7,9 +7,6 @@ source $BASEDIR/../common/shared/network_test_server_ip.txt
source "${BASH_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 sed -i '$ a\[Daemon\]\nAutolock=false\nLockOnResume=false' ~/.config/kscreenlockerrc
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub
sudo update-grub
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts" 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 echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts

View File

@@ -37,33 +37,19 @@ set -ex
# This script modified system settings for automated use # This script modified system settings for automated use
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
VNCPassword=qt VNCPassword=qt
NTS_IP=10.212.2.216 NTS_IP=10.212.2.216
ExceptionDisableScreensaver=100 echo "Disable Screensaver"
ExceptionSetInitialDelay=101 # For current session
ExceptionSetDelay=102 defaults -currentHost write com.apple.screensaver idleTime 0
ExceptionVNC=103
ExceptionNTS=104
ExceptionDisableScreensaverPassword=105
ExceptionDisableSleep=106
try echo "Disable sleep"
( sudo pmset sleep 0 displaysleep 0
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver
echo "Disable sleep" # For session after a reboot
sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep mkdir -p "$HOME/Library/LaunchAgents"
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
(
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
@@ -87,53 +73,17 @@ try
</dict> </dict>
</plist> </plist>
EOT EOT
) || throw $ExceptionDisableScreensaver
defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword defaults write com.apple.screensaver askForPassword -int 0
echo "Set keyboard type rates and delays" echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms) # normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay defaults write -g InitialKeyRepeat -int 15
# normal minimum is 2 (30 ms) # normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay defaults write -g KeyRepeat -int 2
echo "Enable remote desktop sharing" echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all
echo "Set Network Test Server address to $NTS_IP in /etc/hosts" echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
)
catch || {
case $ex_code in
$ExceptionDisableScreensaver)
echo "Failed to disable screensaver."
exit 1;
;;
$ExceptionSetInitialDelay)
echo "Failed to set initial delay of keyboard."
exit 1;
;;
$ExceptionSetDelay)
echo "Failed to set delay of keyboard."
exit 1;
;;
$ExceptionVNC)
echo "Failed to enable VNC."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set NTS."
exit 1;
;;
$ExceptionDisableScreensaverPassword)
echo "Failed to disable requiring of password after screensaver is enabled."
exit 1;
;;
$ExceptionDisableSleep)
echo "Failed to disable sleep."
exit 1;
;;
esac
}

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -39,7 +39,7 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh # shellcheck source=../common/macos/InstallPKGFromURL
source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh" source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/XZ.pkg" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/XZ.pkg"

View File

@@ -44,9 +44,6 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/macos/install_xcode.sh # shellcheck source=../common/macos/install_xcode.sh
source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh" source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh"

View File

@@ -39,8 +39,6 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/unix/SetEnvVar.sh # shellcheck source=../common/unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
@@ -64,57 +62,23 @@ toolsSourceFile="$basePath/$toolsFile"
ndkTargetFile="/tmp/$ndkFile" ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile" ndkSourceFile="$basePath/$ndkFile"
ExceptionUnzipTools=100 echo "Unzipping Android NDK to '$targetFolder'"
ExceptionUnzipNdk=101 sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
ExceptionRmTools=102 echo "Unzipping Android Tools to '$sdkTargetFolder'"
ExceptionRmNdk=103 sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
ExceptionSdkManager=104
try echo "Changing ownership of Android files."
( sudo chown -R qt:wheel "$targetFolder"
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkSourceFile" -d "$targetFolder" || throw $ExceptionUnzipNdk
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
echo "Changing ownership of Android files." echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
sudo chown -R qt:wheel "$targetFolder" (echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion." SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
(echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder" SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionUnzipTools)
echo "Failed to unzip Android SDK Tools."
exit 1;
;;
$ExceptionUnzipNdk)
echo "Failed to unzip Android NDK."
exit 1;
;;
$ExceptionRmTools)
echo "Failed to remove temporary tools package '$toolsTargetFile'."
exit 1;
;;
$ExceptionRmNdk)
echo "Failed to remove temporary NDK package '$ndkTargetFile'."
exit 1;
;;
$ExceptionSdkManager)
echo "Failed to run sdkmanager."
exit 1;
;;
esac
}
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

View File

@@ -37,8 +37,6 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/unix/InstallFromCompressedFileFromURL.sh # shellcheck source=../common/unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/unix/InstallFromCompressedFileFromURL.sh" source "${BASH_SOURCE%/*}/../common/unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../common/unix/SetEnvVar.sh # shellcheck source=../common/unix/SetEnvVar.sh
@@ -54,68 +52,25 @@ opensslSha1="5f26a624479c51847ebd2f22bb9f84b3b44dcb44"
# QTQAINFRA-1195 # QTQAINFRA-1195
opensslTargetLocation="/usr/local/opt/openssl" opensslTargetLocation="/usr/local/opt/openssl"
ExceptionCD=100 InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion"
ExceptionConfig=101 cd "/tmp/openssl-$opensslVersion"
ExceptionMake=102 pwd
ExceptionInstall=103 sudo ./config --prefix=/usr/local/openssl-$opensslVersion
ExceptionLN=104 echo "Running 'make' for OpenSSL"
ExceptionCertificate=105 sudo make --silent > /tmp/openssl_make.log 2>&1
ExceptionCleanup=106 echo "Running 'make install' for OpenSSL"
sudo make --silent install > /tmp/openssl_make_install.log 2>&1
try path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/')
( sudo mkdir -p "$path"
InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion" sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation
cd "/tmp/openssl-$opensslVersion" || throw $ExceptionCD
pwd
sudo ./config --prefix=/usr/local/openssl-$opensslVersion || throw $ExceptionConfig
echo "Running 'make' for OpenSSL"
sudo make --silent > /tmp/openssl_make.log 2>&1 || throw $ExceptionMake
echo "Running 'make install' for OpenSSL"
sudo make --silent install > /tmp/openssl_make_install.log 2>&1 || throw $ExceptionInstall
path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/') SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\""
sudo mkdir -p "$path" SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\""
sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation || throw $ExceptionLN
SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\"" security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\"" security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate sudo rm -rf /tmp/openssl-$opensslVersion
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
sudo rm -rf /tmp/openssl-$opensslVersion || throw $ExceptionCleanup echo "OpenSSL = $opensslVersion" >> ~/versions.txt
echo "OpenSSL = $opensslVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionCD)
echo "Failed to change directory to /tmp/openssl-$opensslVersion."
exit 1;
;;
$ExceptionConfig)
echo "Failed to run config for OpenSSL."
exit 1;
;;
$ExceptionMake)
echo "Failed to run 'make' for OpenSSL."
exit 1;
;;
$ExceptionInstall)
echo "Failed to run 'make install' for OpenSSL."
exit 1;
;;
$ExceptionLN)
echo "Failed to create a soft link for OpenSSL."
exit 1;
;;
$ExceptionCertificate)
echo "Failed to install Certificate for OpenSSL."
exit 1;
;;
$ExceptionCleanup)
echo "Failed to clean up /tmp/openssl-$opensslVersion."
exit 1;
;;
esac
}

View File

@@ -35,45 +35,23 @@
# This script installs QNX 7. # This script installs QNX 7.
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
targetFolder="/opt/" targetFolder="/opt/"
sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip" sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip"
folderName="qnx700" folderName="qnx700"
ExceptionExtract=100 sudo mkdir -p "$targetFolder"
ExceptionExtract2=101
echo "Extracting QNX 7"
sudo unzip -q "$sourceFile" -d "$targetFolder"
try sudo chown -R qt:wheel "$targetFolder"/"$folderName"
(
sudo mkdir -p "$targetFolder"
echo "Extracting QNX 7" # Verify that we have last file in zip
sudo unzip -q "$sourceFile" -d "$targetFolder" || throw $ExceptionExtract if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
exit 1
fi
sudo chown -R qt:wheel "$targetFolder"/"$folderName" # Set env variables
echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc
# Verify that we have last file in zip echo "QNX SDP = 7.0.0" >> ~/versions.txt
if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
throw $ExceptionExtract2
fi
# Set env variables
echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc
echo "QNX SDP = 7.0.0" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionExtract)
echo "Failed to unzip QNX 7."
exit 1;
;;
$ExceptionExtract2)
echo "The last file in the zip did not get extracted."
exit 1;
;;
esac
}

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -37,33 +37,19 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
VNCPassword=qt VNCPassword=qt
NTS_IP=10.212.2.216 NTS_IP=10.212.2.216
ExceptionDisableScreensaver=100 echo "Disable Screensaver"
ExceptionSetInitialDelay=101 # For current session
ExceptionSetDelay=102 defaults -currentHost write com.apple.screensaver idleTime 0
ExceptionVNC=103
ExceptionNTS=104
ExceptionDisableScreensaverPassword=105
ExceptionDisableSleep=106
try echo "Disable sleep"
( sudo pmset sleep 0 displaysleep 0
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver
echo "Disable sleep" # For session after a reboot
sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep mkdir -p "$HOME/Library/LaunchAgents"
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
(
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
@@ -87,54 +73,18 @@ try
</dict> </dict>
</plist> </plist>
EOT EOT
) || throw $ExceptionDisableScreensaver
defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword defaults write com.apple.screensaver askForPassword -int 0
echo "Set keyboard type rates and delays" echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms) # normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay defaults write -g InitialKeyRepeat -int 15
# normal minimum is 2 (30 ms) # normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay defaults write -g KeyRepeat -int 2
echo "Enable remote desktop sharing" echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all
echo "Set Network Test Server address to $NTS_IP in /etc/hosts" echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
)
catch || {
case $ex_code in
$ExceptionDisableScreensaver)
echo "Failed to disable screensaver."
exit 1;
;;
$ExceptionSetInitialDelay)
echo "Failed to set initial delay of keyboard."
exit 1;
;;
$ExceptionSetDelay)
echo "Failed to set delay of keyboard."
exit 1;
;;
$ExceptionVNC)
echo "Failed to enable VNC."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set NTS."
exit 1;
;;
$ExceptionDisableScreensaverPassword)
echo "Failed to disable requiring of password after screensaver is enabled."
exit 1;
;;
$ExceptionDisableSleep)
echo "Failed to disable sleep."
exit 1;
;;
esac
}

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -39,7 +39,7 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh # shellcheck source=../common/macos/InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh" source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/XZ.pkg" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/XZ.pkg"

View File

@@ -44,9 +44,6 @@
set -ex set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/macos/install_xcode.sh # shellcheck source=../common/macos/install_xcode.sh
source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh" source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\install-sevenzip.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\install-jdk.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\jom.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-autoreboot.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\python.ps1" 64

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\python3.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\jom.ps1"

2
qt3d

Submodule qt3d updated: 028c35909c...af4972fd15

2
qtbase

Submodule qtbase updated: 1e27219968...28c9ad199c

2
qtdoc

Submodule qtdoc updated: e99e9a0fa1...ba5445a949

Submodule qtscxml updated: 544f8c4ef7...67d48807b4

Submodule qttools updated: 863178beaf...c96755ea7e