Commit Graph

10 Commits

Author SHA1 Message Date
Dimitrios Apostolou
c66f8407a8 Enable automatic gdb stacktrace in QTest, in case a test crashes
On Linux, this requires that gdb can be found in PATH, and that no
kernel security settings like yama.ptrace_scope  prevent it.

Patch contains also a drive-by architecture detection fix for Debian arm64.

Fixes: QTQAINFRA-6029
Fixes: QTQAINFRA-5940
Fixes: QTQAINFRA-6030
Fixes: QTQAINFRA-6046
Fixes: QTQAINFRA-6012
Fixes: QTQAINFRA-5930
Task-number: QTQAINFRA-5933
Change-Id: Ie6debde94c1cc5783161ffa7354b58734c372702
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2024-01-31 20:07:09 +01:00
Tony Sarajärvi
620666bce4 Fix shellcheck complaints about provisioning scripts
Also adds executable attributes to shell scripts that were missing it.

Change-Id: Id52ef495147fdbfb5cb1a1f711fac530e0e85f3b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2023-09-13 06:44:02 +00:00
Lucie Gérard
eecfb19548 Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.

Pick-to: 6.5 6.6
Task-number: QTBUG-67283
Task-number: QTBUG-108364
Change-Id: If26e4d35c780db4a7982bb84872b251dad24716e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-06-12 12:10:41 +00:00
Kai Köhne
becb423e80 Replace LGPL2.1 only header with LGPL3 one
This is in line with e.g. qtbase. Also remove outdated/unreferenced
license files.

Pick-to: 6.3
Change-Id: I5d3370ab453610f9c8165ff9e57db7ad4a785370
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-12-19 19:47:15 +00:00
Heikki Halmet
4d617e24ee Add provisioning scripts for macOS 11.0 ARM
Task-number: QTQAINFRA-4263
Task-number: QTQAINFRA-4012
Pick-to: 6.2
Change-Id: Ia862ac2582912f6faa96667880fb605861c770c6
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-09-03 13:14:16 +03:00
Tony Sarajärvi
e0eb04ecf8 Add execution attribute to provisioning scripts
Change-Id: Ia241a4211d24d2788f0f0ef9af55b23a6b227624
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-07-01 15:40:33 +03:00
Dimitrios Apostolou
fe4a724a3e Use internal mirror repositories for Ubuntu docker containers
Depending on different external URLs makes our provisioning scripts flaky,
because they can fail if any one of the external servers goes down.
In this patch

* the docker images qt_ubuntu_16.04 and qt_ubuntu_18.04 are being built first,
  they apt-get from the internal ubuntu mirror

* all the existing docker images have been rebased to these two images, so
  they inherit this behavior

* images that fetch files from the internet have been modified to not do the
  fetching themselves; insted URLs are fetched in advance using "DownloadURL"
  which accepts internal mirrored URLs, and the downloaded files are ADDed to
  the images with a local copy

* previously existing git clone commands have been modified to fetch
  internally mirrored tarballs

Task-number: QTQAINFRA-3343
Change-Id: Ic4640a4f7776e38623edba90f0eba7cb68631223
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-01-13 19:44:45 +01:00
Dimitrios Apostolou
869a9b3ae7 Fix shell function is_script_executed
It used to return error when tested inside a login shell, because $0 is
"-bash" and `basename` was trying to interpret -b as an option.

Change-Id: I5faa2dc01e50c7d5bcfc0ab1fcfd910b2538afc2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-08 08:26:34 +02:00
Dimitrios Apostolou
d97d1af1ee Fix provisioning script for RHEL 6
It seems RHEL 6.6 does not provide /etc/os-release.

Change-Id: I01ba2bb17b89c01f9991944a11eeaa9c2eba6f20
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-10-08 08:26:34 +02:00
Dimitrios Apostolou
fbe3a8d84e Install telegraf on all provisioned VMs
Install binaries as early as possible in the provisioning process, and
start them, in order to monitor provisioning too.

To achieve this, some OS auto-detection logic is introduced in shell
script common.sourced.sh. The script can be sourced and used in all kind
of other generic scripts.

ioping is also installed from custom-compiled binaries in order to
monitor the disk latency of the VMs. Reason we don't use ioping from the
repositories, is that the units differ between ioping versions (new
ioping reports latencies in nanoseconds, old in microseconds).

Fixes: QTQAINFRA-3092
Change-Id: I9d9afb791955725d4bd0b32dae97dfc0bd4a76a3
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-09-27 08:42:31 +02:00