summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeikki Halmet <heikki.halmet@qt.io>2022-06-30 10:57:25 +0300
committerHeikki Halmet <heikki.halmet@qt.io>2022-09-15 12:30:52 +0300
commit05450d9a26ac854ce3d265590226f92cfbc1b3c5 (patch)
tree84c80ebd93118386b962e2a922c0cbcc043f82bf
parent33e7cac1b47ce4047097325d35e55fa42acc5c58 (diff)
downloadqt5-05450d9a26ac854ce3d265590226f92cfbc1b3c5.tar.gz
Add SLES 15 SP4 to CI
Python-xml library was dropped out - not supported anymore. Task-number: QTQAINFRA-5068 Change-Id: I6695b4456279143839c38637a5e67a754cafae19 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io> (cherry picked from commit a5b9ca03e1c84f35fd4cc3f1134664f26d8a0503) Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
-rw-r--r--coin/platform_configs/cmake_platforms.yaml8
-rw-r--r--coin/platform_configs/cmake_platforms_static_tests.yaml9
-rw-r--r--coin/pre-provisioning/qtci-linux-SLES-15_SP4-x86_64/README_MANUAL_INSTALLATIONS64
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-btrfs-balance.sh9
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-coredump.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-fstrim_timer.sh7
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable_net_lso.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-install_telegraf.sh3
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-set-ulimit.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-systemsetup.sh79
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-gnome-notifications.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-ntp.sh3
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-enable-modules.sh58
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-zypperpackages.sh125
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang-v100-dyn.sh7
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang.sh7
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-pythondev.sh116
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/09-cmake.sh5
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/20-sccache.sh3
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/22-mqtt_broker.sh43
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-conan.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-git.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/55-emsdk.sh45
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/70-install_QemuGA.sh46
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/90-squish.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-unset-proxy.sh45
-rwxr-xr-xcoin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-version.sh54
27 files changed, 774 insertions, 0 deletions
diff --git a/coin/platform_configs/cmake_platforms.yaml b/coin/platform_configs/cmake_platforms.yaml
index 3bc5bd0f..9f9692cf 100644
--- a/coin/platform_configs/cmake_platforms.yaml
+++ b/coin/platform_configs/cmake_platforms.yaml
@@ -42,6 +42,14 @@ Configurations:
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
]
-
+ Template: 'qtci-linux-SLES-15_SP4-x86_64-50'
+ Compiler: 'GCC'
+ Features: ['Sccache', 'DisableTests', 'UseConfigure']
+ Configure arguments: '-nomake examples -static -no-sql-mysql'
+ Environment variables: [
+ 'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
+ ]
+-
Template: 'qtci-windows-10_21H2-x86_64-51'
Compiler: 'MSVC2019'
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure']
diff --git a/coin/platform_configs/cmake_platforms_static_tests.yaml b/coin/platform_configs/cmake_platforms_static_tests.yaml
index 41c7b381..c9ba6cfa 100644
--- a/coin/platform_configs/cmake_platforms_static_tests.yaml
+++ b/coin/platform_configs/cmake_platforms_static_tests.yaml
@@ -10,6 +10,15 @@ Configurations:
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
]
-
+ Id: 'sles-15-SP4-static'
+ Template: 'qtci-linux-SLES-15_SP4-x86_64-50'
+ Compiler: 'GCC'
+ Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
+ Configure arguments: '-nomake examples -static -no-sql-mysql'
+ Environment variables: [
+ 'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}'
+ ]
+-
Template: 'qtci-windows-10_21H2-x86_64-51'
Compiler: 'MSVC2019'
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
diff --git a/coin/pre-provisioning/qtci-linux-SLES-15_SP4-x86_64/README_MANUAL_INSTALLATIONS b/coin/pre-provisioning/qtci-linux-SLES-15_SP4-x86_64/README_MANUAL_INSTALLATIONS
new file mode 100644
index 00000000..da785987
--- /dev/null
+++ b/coin/pre-provisioning/qtci-linux-SLES-15_SP4-x86_64/README_MANUAL_INSTALLATIONS
@@ -0,0 +1,64 @@
+### SUSE Linux Enterprise Server 15 SP4 ###
+
+# Installation #
+Language: English (US)
+Keyboard Layout: English (US)
+
+Available Extensions and Modules:
+ Basesystem Module
+ Desktop Applications Module
+ Python 3 Module
+ Server Applications Module
+
+SLES with GNOME
+
+Region: Etc
+Time Zone: UTC
+
+Create user with automatic login
+
+disable firewall
+
+Displays: Resolution 1280x800
+Power: Screen Blank: Never
+Privacy: Screen lock: Automatic screen lock: disable
+Privacy: Screen lock: Show notifications on lock screen: disable
+
+# Add user to sudoers
+Add 'qt ALL=NOPASSWD: ALL' to /etc/sudoers.d/qt
+
+sudo su -
+echo "add_drivers+=\"virtio-blk\"" >/etc/dracut.conf.d/virtio.conf
+dracut -f
+
+# Add these to /etc/polkit-default-privs.local
+org.freedesktop.udisks2.filesystem-mount yes
+org.freedesktop.udisks2.filesystem-mount-other-seat yes
+org.freedesktop.udisks2.filesystem-mount-system yes
+org.freedesktop.login1.power-off yes
+org.freedesktop.login1.power-off-ignore-inhibit yes
+org.freedesktop.login1.power-off-multiple-sessions yes
+
+# Set how DHClient creates CID for compatibility with older DHCP servers
+sudo sed -i 's/DHCLIENT_CREATE_CID=""/DHCLIENT_CREATE_CID="rfc2132"/' /etc/sysconfig/network/dhcp
+systemctl restart wicked
+
+# Create etc/sysconfig/network/ifcfg-eth1 with values:
+* BOOTPROTO='dhcp'
+* STARTMODE='auto'
+sudo ifup eth1
+
+# Register product
+# Add 'Available Extensions and Modules'
+* Basesystem Module 15 SP4 x86_64
+* Server Applications Module 15 SP4 x86_64
+
+zypper yum update
+
+* Download and run coin-setup
+
+# Fetch and run coin-setup
+Download http://coin/coin/binary/linux_386/coin-setup
+sudo ./coin-setup
+
+sudo reboot now
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-btrfs-balance.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-btrfs-balance.sh
new file mode 100755
index 00000000..a0126cb2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-btrfs-balance.sh
@@ -0,0 +1,9 @@
+#!/usr/bin/env bash
+
+set -ex
+
+# Stops the balance job if one is running at the moment. This is a very expensive thing to run and causes major slow down.
+sudo systemctl stop btrfs-balance.service
+
+# This will disable btrfs balance job scheduling.
+sudo sed -i 's/BTRFS_BALANCE_PERIOD="weekly"/BTRFS_BALANCE_PERIOD="none"/g' /etc/sysconfig/btrfsmaintenance
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-coredump.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-coredump.sh
new file mode 100755
index 00000000..d078f9c7
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-coredump.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+sudo chkconfig kdump off
+sudo sed -i 's/#Storage=external/Storage=none/g' /etc/systemd/coredump.conf
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-fstrim_timer.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-fstrim_timer.sh
new file mode 100755
index 00000000..9fd06e72
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable-fstrim_timer.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+set -ex
+
+# This will disable fstrim. The fstrim.timer is scheduled to activate the fstrim.service
+sudo systemctl stop fstrim.timer
+sudo systemctl disable fstrim.timer
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable_net_lso.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable_net_lso.sh
new file mode 100755
index 00000000..95fd5467
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-disable_net_lso.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+sudo mkdir -p /etc/wicked/scripts
+echo "ethtool -K \$2 tso off" | sudo tee -a /etc/wicked/scripts/net_tso_off
+sudo chmod 744 /etc/wicked/scripts/net_tso_off
+echo "PRE_UP_SCRIPT='wicked:/etc/wicked/scripts/net_tso_off'" | sudo tee -a /etc/sysconfig/network/ifcfg-eth0
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-install_telegraf.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-install_telegraf.sh
new file mode 100755
index 00000000..729f9003
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-install_telegraf.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+"$(dirname "$0")"/../common/unix/telegraf_install.sh
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-set-ulimit.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-set-ulimit.sh
new file mode 100755
index 00000000..dadc0781
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-set-ulimit.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+"$BASEDIR/../common/linux/set_ulimit.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-systemsetup.sh
new file mode 100755
index 00000000..e6cff67d
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/01-systemsetup.sh
@@ -0,0 +1,79 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2019 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+# shellcheck source=../common/shared/network_test_server_ip.txt
+source "$BASEDIR/../common/shared/network_test_server_ip.txt"
+# shellcheck source=../common/unix/check_and_set_proxy.sh
+source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
+
+echo "Set timezone to UTC."
+sudo timedatectl set-timezone Etc/UTC
+echo "Timeout for blanking the screen (0 = never)"
+gsettings set org.gnome.desktop.session idle-delay 0
+echo "Prevents screen lock when screesaver goes active."
+gsettings set org.gnome.desktop.screensaver lock-enabled false
+gsettings set org.gnome.desktop.lockdown disable-lock-screen 'true'
+
+sudo sed -i 's|GRUB_TIMEOUT=8|GRUB_TIMEOUT=0|g' /etc/default/grub
+sudo grub2-mkconfig -o /boot/grub2/grub.cfg
+
+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 "Set DISPLAY"
+echo 'export DISPLAY=":0"' >> ~/.bashrc
+
+sudo systemctl stop packagekit
+sudo systemctl disable packagekit
+sudo systemctl mask packagekit
+while sudo fuser /usr/lib/packagekitd >/dev/null 2>&1 ; do
+ echo "Waiting for PackageKit to finish..."
+ sleep 5
+done
+sudo zypper -nq remove gnome-software
+
+# shellcheck disable=SC2031
+if [ "$http_proxy" != "" ]; then
+ sudo sed -i 's/PROXY_ENABLED=\"no\"/PROXY_ENABLED=\"yes\"/' /etc/sysconfig/proxy
+ sudo sed -i "s|HTTP_PROXY=\".*\"|HTTP_PROXY=\"$proxy\"|" /etc/sysconfig/proxy
+fi
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-gnome-notifications.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-gnome-notifications.sh
new file mode 100755
index 00000000..f38c9bab
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-gnome-notifications.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+# shellcheck source=../common/linux/disable-notifications.sh
+source "${BASH_SOURCE%/*}/../common/linux/disable-notifications.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-ntp.sh
new file mode 100755
index 00000000..38707a8a
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-disable-ntp.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+# shellcheck source=../common/linux/disable-ntp_linux.sh
+source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-enable-modules.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-enable-modules.sh
new file mode 100755
index 00000000..61100b6e
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-enable-modules.sh
@@ -0,0 +1,58 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2022 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+sudo curl http://repo-clones.ci.qt.io:8081/tools/rmt-client-setup --output rmt-client-setup
+sudo chmod 755 rmt-client-setup
+sudo SUSEConnect --cleanup
+sudo sh rmt-client-setup https://repo-clones.ci.qt.io:8082 --yes --fingerprint 80:90:7F:45:C6:DF:45:8A:57:25:1E:17:5E:D7:E3:6E:96:1B:1B:95
+
+# Activate these modules
+sudo SUSEConnect -p sle-module-basesystem/15.4/x86_64
+sudo SUSEConnect -p sle-module-server-applications/15.4/x86_64
+sudo SUSEConnect -p sle-module-desktop-applications/15.4/x86_64
+sudo SUSEConnect -p sle-module-development-tools/15.4/x86_64
+sudo SUSEConnect -p sle-module-python3/15.4/x86_64
+
+sudo zypper lr -u
+
+sudo rm -f /tmp/suse_rk.sh
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-zypperpackages.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-zypperpackages.sh
new file mode 100755
index 00000000..f4ebbfc2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/02-zypperpackages.sh
@@ -0,0 +1,125 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2020 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+sudo zypper -nq install elfutils binutils
+
+sudo zypper addrepo --no-gpgcheck https://download.opensuse.org/repositories/devel:gcc/SLE-15/devel:gcc.repo
+sudo zypper refresh
+sudo zypper -nq install --force-resolution gcc10 gcc10-c++
+
+sudo /usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 1 \
+ --slave /usr/bin/g++ g++ /usr/bin/g++-10 \
+ --slave /usr/bin/cc cc /usr/bin/gcc-10 \
+ --slave /usr/bin/c++ c++ /usr/bin/g++-10
+
+sudo zypper -nq install git ninja make patch wget tar
+
+sudo zypper -nq install bison flex gperf \
+ zlib-devel \
+ libudev-devel \
+ glib2-devel \
+ libopenssl-devel \
+ freetype2-devel \
+ fontconfig-devel \
+ sqlite3-devel \
+ libxkbcommon-devel \
+ libxkbcommon-x11-devel
+
+sudo zypper -nq install cmake
+
+sudo zypper -nq install p7zip
+
+# EGL support
+sudo zypper -nq install Mesa-libEGL-devel Mesa-libGL-devel
+
+# ICU
+sudo zypper -nq install libicu-devel libicu-suse65_1
+
+# gtk3 style for QtGui/QStyle
+sudo zypper -nq install gtk3-devel
+
+# Xinput2
+sudo zypper -nq install libXi-devel postgresql14 postgresql14-devel mysql-devel mysql mysql-server
+
+# system provided XCB libraries
+sudo zypper -nq install xcb-util-devel xcb-util-image-devel xcb-util-keysyms-devel \
+ xcb-util-wm-devel xcb-util-renderutil-devel
+
+# qtwebengine
+sudo zypper -nq install alsa-devel dbus-1-devel libxkbfile-devel libdrm-devel \
+ libXcomposite-devel libXcursor-devel libXrandr-devel libXtst-devel \
+ mozilla-nspr-devel mozilla-nss-devel glproto-devel libxshmfence-devel
+
+# qtwebkit
+sudo zypper -nq install libxml2-devel libxslt-devel
+
+# GStreamer (qtwebkit and qtmultimedia), pulseaudio (qtmultimedia)
+sudo zypper -nq install gstreamer-devel gstreamer-plugins-base-devel libpulse-devel
+
+# cups
+sudo zypper -nq install cups-devel
+
+# speech-dispatcher
+sudo zypper -nq install libspeechd-devel
+#sudo sed -i 's:includedir=/usr/include:includedir=/usr/include/speech-dispatcher:' /usr/lib64/pkgconfig/speech-dispatcher.pc
+
+# ODBC support
+sudo zypper -nq install unixODBC-devel unixODBC
+
+# sqlite support
+sudo zypper -nq install sqlite3 sqlite3-devel
+
+# Java - needed by RTA jenkins
+sudo zypper -nq install java
+
+# open-vm-tools requires update. Version in tier1 is broken and causes segfault on boot.
+sudo zypper -nq update open-vm-tools
+
+# Tools to build Git
+sudo zypper -nq install autoconf libcurl-devel libexpat-devel
+
+gccVersion="$(gcc --version |grep gcc |cut -b 17-23)"
+echo "GCC = $gccVersion" >> versions.txt
+
+OpenSSLVersion="$(openssl version |cut -b 9-14)"
+echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang-v100-dyn.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang-v100-dyn.sh
new file mode 100755
index 00000000..b0080cbc
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang-v100-dyn.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+# shellcheck source=../common/unix/libclang-v100-dyn.sh
+"$BASEDIR/../common/unix/libclang-v100-dyn.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang.sh
new file mode 100755
index 00000000..bbe2b4b4
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-libclang.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+# shellcheck source=../common/unix/libclang.sh
+"$BASEDIR/../common/unix/libclang.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-pythondev.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-pythondev.sh
new file mode 100755
index 00000000..f8530fc8
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/08-pythondev.sh
@@ -0,0 +1,116 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+# provides: python development libraries
+# version: provided by default Linux distribution repository
+# needed to build pyside
+
+set -ex
+
+PROVISIONING_DIR="$(dirname "$0")/../"
+. "$PROVISIONING_DIR"/common/unix/common.sourced.sh
+. "$PROVISIONING_DIR"/common/unix/DownloadURL.sh
+
+
+# Selected installation instructions coming from:
+# https://raw.githubusercontent.com/linux-on-ibm-z/scripts/master/Python3/build_python3.sh
+export PACKAGE_NAME="python"
+python2Version="2.7.18"
+python3Version="3.7.6"
+python2Sha="678d4cf483a1c92efd347ee8e1e79326dc82810b"
+python3Sha="55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f"
+
+
+function InstallPython {
+
+ PACKAGE_VERSION=$1
+ PACKAGE_SHA=$2
+
+ $CMD_PKG_INSTALL ncurses zlib-devel libffi-devel libopenssl-devel
+
+ echo 'Configuration and Installation started'
+
+ #Download Source code
+ DownloadURL \
+ http://ci-files01-hki.intra.qt.io/input/python/Python-${PACKAGE_VERSION}.tar.xz \
+ https://www.python.org/ftp/${PACKAGE_NAME}/${PACKAGE_VERSION}/Python-${PACKAGE_VERSION}.tar.xz \
+ $PACKAGE_SHA
+ tar -xf "Python-${PACKAGE_VERSION}.tar.xz"
+
+ #Configure and Build
+ cd "Python-${PACKAGE_VERSION}"
+ ./configure --prefix=/usr/local --exec-prefix=/usr/local
+ make
+ sudo make install
+
+ echo 'Installed python successfully'
+
+ #Cleanup
+ cd -
+ rm "Python-${PACKAGE_VERSION}.tar.xz"
+
+ #Verify python installation
+ export PATH="/usr/local/bin:${PATH}"
+ if command -V "$PACKAGE_NAME"${PACKAGE_VERSION:0:1} >/dev/null
+ then
+ printf -- "%s installation completed. Please check the Usage to start the service.\n" "$PACKAGE_NAME"
+ else
+ printf -- "Error while installing %s, exiting with 127 \n" "$PACKAGE_NAME"
+ exit 127
+ fi
+
+
+}
+
+InstallPython "$python2Version" "$python2Sha"
+InstallPython "$python3Version" "$python3Sha"
+
+python3 --version | fgrep "$python3Version"
+
+pip3 install --user wheel
+pip3 install --user virtualenv
+
+# Install all needed packages in a special wheel cache directory
+pip3 wheel --wheel-dir "$HOME/python3-wheels" -r "${BASH_SOURCE%/*}/../common/shared/requirements.txt"
+
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/09-cmake.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/09-cmake.sh
new file mode 100755
index 00000000..5eb53566
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/09-cmake.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+set -ex
+
+"$(dirname "$0")/../common/linux/cmake_linux.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/20-sccache.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/20-sccache.sh
new file mode 100755
index 00000000..b371d947
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/20-sccache.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+source "${BASH_SOURCE%/*}/../common/linux/sccache.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/22-mqtt_broker.sh
new file mode 100755
index 00000000..e0875b37
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/22-mqtt_broker.sh
@@ -0,0 +1,43 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2017 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $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-SLES-15_SP4-x86_64/30-install-conan.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-conan.sh
new file mode 100755
index 00000000..b8820053
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-conan.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+"$BASEDIR/../common/unix/install-conan.sh" "linux"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-git.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-git.sh
new file mode 100755
index 00000000..05fcdf8e
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/30-install-git.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+"$BASEDIR/../common/linux/install-git.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/55-emsdk.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/55-emsdk.sh
new file mode 100755
index 00000000..3299f3e5
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/55-emsdk.sh
@@ -0,0 +1,45 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+# shellcheck source=../common/unix/emsdk.sh
+source "${BASH_SOURCE%/*}/../common/unix/emsdk.sh"
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/70-install_QemuGA.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/70-install_QemuGA.sh
new file mode 100755
index 00000000..248e17db
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/70-install_QemuGA.sh
@@ -0,0 +1,46 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2020 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+# This script installs QEMU Guest Agent
+
+set -ex
+
+sudo zypper -nq install qemu-guest-agent
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/90-squish.sh
new file mode 100755
index 00000000..e4281588
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+"$BASEDIR/../common/unix/squishInstall.sh"
+
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-unset-proxy.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-unset-proxy.sh
new file mode 100755
index 00000000..59f3abc2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-unset-proxy.sh
@@ -0,0 +1,45 @@
+#!/usr/bin/env bash
+#############################################################################
+##
+## Copyright (C) 2017 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+# Having proxy set while running autotests makes them fail
+sudo sed -i 's/PROXY_ENABLED=\"yes\"/PROXY_ENABLED=\"no\"/' /etc/sysconfig/proxy
+
diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-version.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-version.sh
new file mode 100755
index 00000000..87825b16
--- /dev/null
+++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/99-version.sh
@@ -0,0 +1,54 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: https://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## 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 https://www.qt.io/terms-conditions. For further
+## information use the contact form at https://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 3 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL3 included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 3 requirements
+## will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 2.0 or (at your option) the GNU General
+## Public license version 3 or any later version approved by the KDE Free
+## Qt Foundation. The licenses are as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+## included in the packaging of this file. Please review the following
+## information to ensure the GNU General Public License requirements will
+## be met: https://www.gnu.org/licenses/gpl-2.0.html and
+## https://www.gnu.org/licenses/gpl-3.0.html.
+##
+## $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"