diff options
author | Heikki Halmet <heikki.halmet@qt.io> | 2018-11-09 14:21:25 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2018-11-12 08:21:43 +0000 |
commit | c89d9ed35796e6f4db37f49bd2f1eb6e629127bb (patch) | |
tree | 835f12537c611355616b8b86add7699f9fc406bf | |
parent | 4d15cea11a49755898639b9fd09ff0473015a247 (diff) |
Provisioning: Add Rhel 6.6 for QtCreator
QtCreator need's to have provisioned Rhel 6.6 available.
(Partially) Reverts 54261be7c3bde1486b5036df4058bcd9deb9dfdd
Task-number: QTQAINFRA-2270
Change-Id: Ie73c09181e0586dd0f4e9977208c9188037843d9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
13 files changed, 380 insertions, 0 deletions
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh new file mode 100755 index 00000000..84238ebf --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# refresh local certificates +sudo subscription-manager refresh + +# Attach available subscriptions to system. This is needed when subscriptions are renewed. +sudo subscription-manager attach --auto + diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh new file mode 100755 index 00000000..99612260 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh @@ -0,0 +1,44 @@ +#!/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 + +# shellcheck source=../common/unix/check_and_set_proxy.sh +source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" + +# shellcheck disable=SC2031 +if [ "$http_proxy" != "" ]; then + echo "proxy=$proxy" | sudo tee -a /etc/yum.conf +fi diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh new file mode 100755 index 00000000..89806892 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +# shellcheck source=../common/linux/disable-ntp_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh new file mode 100755 index 00000000..21a45506 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# shellcheck source=../common/unix/DownloadURL.sh +source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh" + +package="epel-release-6-8.noarch.rpm" +primaryUrl="https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/e/$package" +cacheUrl="http://ci-files01-hki.intra.qt.io/input/rhel6/$package" +sha1="2b2767a5ae0de30b9c7b840f2e34f5dd9deaf19a" +targetFile="/tmp/$package" + +DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile" + +sudo rpm -ivh "$targetFile" +rm "$targetFile" + diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/04-install-packages.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/04-install-packages.sh index e42bb937..c1189a94 100644..100755 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/04-install-packages.sh +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/04-install-packages.sh @@ -39,6 +39,8 @@ installPackages=() # For Jenkins installPackages+=(java-1.8.0-openjdk-devel) +# For Qt Creator +installPackages+=(openssl-devel) sudo yum -y install "${installPackages[@]}" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh new file mode 100755 index 00000000..d3072b37 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +# provides: fix for possible bug in the subscription manager +# version: provided by RedHat +# needed for yum to work properly in case there is incorrect data in +# the sslclientkey repository parameter value + +set -ex + +sudo rm -f /etc/pki/entitlement/* +sudo subscription-manager refresh diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh new file mode 100755 index 00000000..c8edc2a2 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +# provides: odbc devel packages on RHEL +# version: provided by default Linux distribution repository +# needed for configure -plugin-sql-odbc in qtbase + +set -ex + +sudo yum install -y unixODBC-devel diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh new file mode 100755 index 00000000..2861821c --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# provides: python development libraries +# version: provided by default Linux distribution repository +# needed to build pyside + +set -ex + +sudo yum install -y python-devel python-virtualenv + +# install python3 +sudo yum install -y python34-devel + +# install pip3 +wget https://bootstrap.pypa.io/get-pip.py +sudo python3 get-pip.py +sudo rm -f get-pip.py +sudo pip3 install virtualenv diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh new file mode 100755 index 00000000..74520b6e --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -ex + +"$(dirname "$0")/../common/linux/cmake_linux.sh" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh new file mode 100755 index 00000000..b156e8f9 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +# Required for tqtc-boot2qt/qdb + +set -ex + +sudo yum install -y libusb1-devel diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh new file mode 100755 index 00000000..505374c5 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the test suite of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# shellcheck source=../common/unix/mqtt_broker.sh +source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh new file mode 100755 index 00000000..67c17954 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh @@ -0,0 +1,74 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the test suite of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script installs the right ICU version + +set -ex +icuVersion="56.1" +icuLocation="/usr/lib64" +sha1="f2eab775c04ce5f3bdae6c47d06b62158b5d6753" + +function Install7ZPackageFromURL { + url=$1 + expectedSha1=$2 + targetDirectory=$3 + + targetFile=$(mktemp) + wget --tries=5 --waitretry=5 --output-document="$targetFile" "$url" + echo "$expectedSha1 $targetFile" | sha1sum --check + sudo /usr/local/bin/7z x -yo"$targetDirectory" "$targetFile" + rm "$targetFile" +} + +echo "Installing custom ICU $icuVersion $sha1 packages on RHEL to $icuLocation" + +baseBinaryPackageURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64.7z" +Install7ZPackageFromURL "$baseBinaryPackageURL" "$sha1" "/usr/lib64" + +echo "Installing custom ICU devel packages on RHEL" + +sha1Dev="82f8b216371b848b8d36ecec7fe7b6e9b0dba0df" +develPackageURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64-devel.7z" +tempDir=$(mktemp -d) +# shellcheck disable=SC2064 +trap "sudo rm -fr $tempDir" EXIT +Install7ZPackageFromURL "$develPackageURL" "$sha1Dev" "$tempDir" +sudo cp -a "$tempDir/lib"/* /usr/lib64 +sudo cp -a "$tempDir"/* /usr/ + +sudo /sbin/ldconfig + +# Storage version information to ~/versions.txt, which is used to print version information to provision log. +echo "ICU = $icuVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh new file mode 100755 index 00000000..1354bf6b --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the test suite of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script needs to be called last during provisioning so that the software information will show up last in provision log. + +# Storage installed RPM packages information + +set -ex + +# shellcheck disable=SC2129 +echo "*********************************************" >> ~/versions.txt +echo "***** All installed RPM packages *****" >> ~/versions.txt +rpm -q -a | sort >> ~/versions.txt +echo "*********************************************" >> ~/versions.txt + +"$(dirname "$0")/../common/linux/version.sh" |