This patch configures FFmpeg with network support. This enables QtMM
to handle network source such as HTTP, HTTPS, or RTSP.
Details:
- on macOS and windows ffmpeg uses native security backend so we don't
include openssl to the build. Additional patch for linking
with the security backend is in QtMM commit under the same task.
- on linux we add openssl; for all CI linux platforms libssl-dev is
installed.
Task-number: QTBUG-110708
Change-Id: I80a7dfda702c4d554df3a7380aac642890a28b94
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit 9b88e24d71)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch modifies linux/ffmpeg-install.sh to work also for macOS.
The FFmpeg libraries are installed under /usr/local both for Linux
and macOS.
Since macOS x64 does not have the lzma lib for arm64 architecture
installed by default, I disable this libraries for FFmpeg. This
only affects the TIFF image decoder that we do not use.
Added the execute permission to the ubuntu scripts.
Change-Id: Ib8623c6a9bcdd24c89045ede0494839fb9cd2ecc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Add required configurations to Nightly run for building
Qt SW in Windows host for QNX OS.
Task-number: QTBUG-101292
Pick-to: 6.4 6.3 6.2
Change-Id: I689abd6596bf1ab1f30ba07c198e12569dbf2164
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
One of the QtMultimedia backends is implemented using FFmpeg.
This provisioning enables building and testing of this backend.
Change-Id: Ia196c2ae4b457aa6b8e3ee8e0f367197aadfe0d9
Reviewed-by: Simo Fält <simo.falt@qt.io>
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>
Now that qtbase supports building bundled 3rd party libraries, we
should have no need for vcpkg in Coin anymore.
Change-Id: I7aa7b0323416b60ffb0cd70eec287e5f25963d9a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This makes sure we don't run into CVE-2019-10906 when using
jinja2 in QtIvis Autogenerator.
Change-Id: If51bf54bd26858c6b5faa3dd6a6627f2979b862d
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
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>
This merges merely the provisioning changes needed to perform cmake
builds in the CI. The platform configuration changes will be applied
incremental as we merge support in the individual modules.
Conflicts:
coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh
Added ninja to
coin/provisioning/qtci-linux-SLES-15-x86_64/02-zypperpackages.sh
just to force re-provisioning.
Removed module_config.yaml because that breaks license check in
qmake builds.
Change-Id: Ic074c0c881404f4361e61f66130c0cb07f5e8b84
The snapshot uses the previous snapshot as a based. It was rebased
on latest master as of 2019-12-05, and also contains cherry-picked
patches to target iOS.
Change-Id: I9fc0c39856fdb255533f6c71d27f5749894b6bea
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
We will use this tag in qtbase to refer to the image to run, because
with the current sha1tree() tag, every minor change in the docker images
requires synchronized changes between repositories.
Task-number: QTBUG-79867
Change-Id: If94eb6dd8b97526b589e58064837bc6554fed79c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Some patches were upstreamed and this beings the version in line with
what we need for Android. This patch also centralizes the version into a
shared file, for future use.
Change-Id: I90973f9bfcbc1bfeb2d11e2ee7a7fa4e4f6a58a2
Reviewed-by: Qt CMake Build Bot
Reviewed-by: Liang Qi <liang.qi@qt.io>
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>
This change includes:
- Docker image for the test server to test non-secure and PSK-based
CoAP security modes.
- Docker image for the test server to test X.509 certificate-based
CoAP security mode.
Change-Id: Ice661917591ecaee8ebc3500209bcffc08981f65
Reviewed-by: Ryan Chu <ryan.chu@qt.io>
Known high severity security vulnerability in pyyaml v< 4.2b1
Task-number: QTQAINFRA-2888
Change-Id: I6522fc66ca7c4323cc6248ec2cb31c62201f8e84
Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Split the creation of the test images and the creation of the
docker environment. This way, one can easily recreate the test
images, without requiring to re-provision everything.
Change-Id: I35bbe8d8bf497f16d9be92cbaa2d9001f8eee247
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Ryan Chu <ryan.chu@qt.io>
Used for dropping packets on a specific port.
Needs to be launched with the NET_ADMIN and NET_RAW capabilities to be
able to actually be able to interact with iptables, this is done in
docker-compose.
Change-Id: I5093d19fbc269f42fe3e314e9344866fa5b79999
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
For its imap server, needed in various tests
Change-Id: I7ad11342f362392edec2f15c781f4c48deeeff30
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Needed in the QUdpSocket test for the echo service and in the QSslSocket
test for the daylight service.
Change-Id: Ic7143eb7abd37dbf2c20ddb4b52cdd5ea3f0d193
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Comparing to the previous release, Ubuntu 18.04 includes dante-server
1.4.2 by default. Therefore, it doesn't rely on the Third-party PPA.
The SHA-1 of the provisioned images in docker cache:
qt-test-server-apache2_18.04:69478e75b362d57691a53700434a7034d471459e
qt-test-server-squid_18.04:cd5a5e2ff5d23c9a7adef1bd82847e027c090e5b
qt-test-server-vsftpd_18.04:a40425c0494f8f4e8ba27ac9fb5cc02aaedd62d8
qt-test-server-ftp-proxy_18.04:5f78e23a0579a579fcae7f3e5704bb5eec0e2f6d
qt-test-server-danted_18.04:d590b915cda9d524620d18a0398fdfa4d5876f97
Change-Id: Iffb4abe144a957465a2daab657c6259f0b75e800
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
After the system reboots, the docker machine is created, but in a
stopped state. To handle the case that a developer may rerun the
provisioning scripts for the missed docker images, make sure the
docker machine is both started and running with new TLS certificates.
Change-Id: Ibdb58152cac860132a77d6d094f9bca20a5e95e8
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Build and cache docker images to VirtualBox virtual machine.
1. Download and install the docker tool kits and Apple Bonjour
2. Deploy boot2docker image into VirtualBox via docker-machine commands
3. Use Git Bash to run the shared provisioning scripts
4. Print CPU features to verify that CI has enabled VT-X/AMD-v support
5. Disable Hyper-V from Windows 10 Pro/Enterprise editions
Change-Id: I5520e4a28376aba14f880c077bd7b083be971f0a
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
For debug purpose, print the installed version of docker,
docker-compose, and docker-engine. Because 'docker info' is related to
the docker-engine, postpone calling the command until docker virtual
machine has been created.
Change-Id: I4c869b7122b831b7f22c9c3846ac9cbe47c3b355
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
To reuse the provisioning scripts for all platforms, they are moved to a
shared folder (coin/common/shared/testserver). The scripts of macOS and
linux are combined and controlled by an input parameter (macos/linux).
Change-Id: Ibf9a438d1825d01d707c2fc8fbcf2bc70a8b4902
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Free the dependencies of the specific Ubuntu packages. Ensure that test
server is using the latest version of the Ubuntu packages to test
network changes.
The SHA-1 of the provisioned images in docker cache:
qt-test-server-apache2:537fe302f61851d1663f41495230d8e3554a4a13
qt-test-server-squid:9c32f41b19aca3d778733c4d8fb0ecc5955e893c
qt-test-server-vsftpd:f3a9c8d793a77cc007c0e4e481bec01f9e3eeb7e
qt-test-server-ftp-proxy:d7de8b28392d173db512a558ccc84ead8bece2ae
qt-test-server-danted:35607f9b790524cf9690c7d12a9a401696b7b6b5
Change-Id: I4e6c8cb235f1f798274eb52858e06d8755ae626f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Build and cache docker images based on the configurations in testserver.
1. Move the shared Docker files to common/shared/testserver
2. Deploy boot2docker image into VirtualBox via docker-machine commands.
3. Build and tag the docker images by the SHA-1 of server context.
Change-Id: Ic5a588e5cc5e753ec4c4e2e1bc79917bbd03f95d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Instead of downloading the packages during the compile/configure
step setup a wheel cache folder during the provisioning phase
Task-number: AUTOSUITE-195
Change-Id: I465f1be7cdd351e7680dcd8ae22d5e97ddf8cb2d
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
Libclang must use cached url (ci-files01-hki) to reduce the download time
Libclang release_60 versions were rebuild which requires sha1 changes
Task-number: QTQAINFRA-1966
Task-number: QTQAINFRA-2100
Change-Id: Iddf47a2a3a5bc38dbed684320120164bb40c028c
Reviewed-by: Simo Fält <simo.falt@qt.io>
The version also contains statically compiled libraries so we can
ship qdoc without shipping libclang.
The change temporarly removes CI qdoc builds from RHEL6 and MinGW,
these two configurations are not used for packaging, just for CI
testing. We should restore MinGW later.
Task-number: QTBUG-66015
Task-number: QTBUG-67764
Change-Id: Ie37b4be6a639e81d9ef0815682c6d60981cbeaae
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
Reviewed-by: Fredrik de Vibe <fredrik.devibe@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Common shared folder includes scripts of files which are common for all
operating system families. Changes under shared folder will trigger
provisioning for all platforms
Change-Id: I0789f87b76876d5f92673fe2f0e72d770e5f5ea4
Task-number: QTQAINFRA-1451
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>