The upstream URLs have changed:
- emscripten packages now at github.com/emscripten-core/emscripten/archive/
- binaries (llvm/binaryen/node) now at storage.googleapis.com/webassembly/emscripten-releases-builds/
Add support for unpacking tbz2 files. Keep caching as
before, update .emscripten config file with new paths.
Task-number: QTQAINFRA-3577
Change-Id: I53e72f19d3eefa0e2155493db4f93c8730c60334
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Save some seconds or even minutes during provisioning, by avoiding copying
many files across filesystems, from /tmp to /usr/local. We now install
directly to /usr/local.
Change-Id: I3a8f545f1400995095193c4eb337f9dd8534ef72
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Sometimes we pre-create the target filename using mktemp. In that case of
course the hash will not match, so avoid comparing.
Change-Id: Id0feb0178d659e03f5ceb000f738167cdc28a3ec
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
It happened that old bash version on macOS the alias was not being expanded
for non-interactive shells running under "bash" but was being expanded fine
when under "sh". Using functions is the recommended way.
Here we define a function conditionally.
Change-Id: I607b265cb9e88b2b529ed170121e5a0833003acd
Reviewed-by: Heikki Halmet <heikki.halmet@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>
There is no need to install as sudo for qt user. Using sudo will
change the cache dir's permissions preventing us from
installing anything with pip as normal user.
Change-Id: Id45bf3805ce4d772a6c82e429d4e1948289f076e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Update with custom build of Squish to be able to launch Qt5.14
applications in RTA tests.
Change-Id: Ic420656852ae885b057de937baabf01135526764
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
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>
It seems RHEL 6.6 does not provide /etc/os-release.
Change-Id: I01ba2bb17b89c01f9991944a11eeaa9c2eba6f20
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
The reason is that Ubuntu does not have curl at the very beginning of
provisioning scripts, and also does not have the repositories configured
in order to install it.
Change-Id: Ia485c1672f894bc800f199b742d238b2945938e5
Reviewed-by: Heikki Halmet <heikki.halmet@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>
Auto-detects and verifies all kinds of hashes, not only SHA1.
Hash verification is now an autonomous function.
If the file is found at the destination, skip redownloading it if the
hash is OK.
Runs on POSIX sh, not requiring bash.
Retain compatibility with previous version.
Change-Id: I9930336030aa776f49dc460fe766f3e831700255
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Provisioning was failing and the logs did not provide any useful
information because of the silenced squish install command. So I went
through all the scripts and I re-enabled stderr logging where I found it
silenced (with the exception of where it was purposeful or harmless).
Change-Id: I5fa0b0ba4362970b214c150d399b6720b1780e1e
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Having it first in path seems to cause some confusion when detecting
libc++ in darwin.
Change-Id: I841e7f169e4771d3818cf156d9d78fc242e9995c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Provision emsdk and its dependecies to windows and macos.
Task-number: QTBUG-63917
Task-number: QTQAINFRA-2835
Done-with: Juha Karjalainen <juha.karjalainen@qt.io>
Change-Id: I24ea9cbc4f7cc95e6952765099d5e46247470011
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Use newest LTS version of openssl as support for 1.0.2 series
will end at end of 2019.
For windows 7 x86 openssl 1.0.2 will be used until all need fixed
are made to submodule tests
Task-number: QTQAINFRA-2327
Change-Id: I930d239cd139b6202ebdfb5cdc8068ff2ad0b8a3
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Froglogic has not yet released Squish for Qt5.13 but we can use Squish
packages build with Qt5.12.
Remove msvc12 Squish, not needed.
Change-Id: I1de1bb67a5577fa7f7233c69c3a58bedd15fd16b
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Env variable BREAKPAD_SOURCE_DIR had /src at end which was
not needed.
Change-Id: I4d126c3b7c3b2da03dc2a0ba075b0d4ddad92eeb
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Protobuf is needed for Automotive Suite
Task-number: QTQAINFRA-2314
Change-Id: I12b4248f1de5aea88f573297a47b791b5b6296fb
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
DownloadURL returns 0 even when alt download fails.
Task-number: QTQAINFRA-2501
Change-Id: Id2fb1e0b4ff12a48b6adb27291f55fc129296233
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
The subshell actually meant, that the http_proxy environment
variable was never seen outside that check. Thus proxy was never
used where this was checked.
Change-Id: I069f43f13dffca98d8b60a47c2e105209018c84d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
This change will install specified packages of Emscripten and set up
the build environment for making binary artifacts of WebAssembly
Task-number: QTQAINFRA-1972
Change-Id: Ia5df6c208ea8f29ca8948f0273f321a59fc694a2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Update to latest Squish versions that Froglogic is providing. May need
to update to Squish 6.4 later, but now we use 6.3.2.
Change-Id: I89e1f20b58cdd2e948c8021a5fdc357bfc201db1
Reviewed-by: Liang Qi <liang.qi@qt.io>
This file needs execution rights before it can be run in provisioning.
Change-Id: Id49de89e0260b18a71cbcd4f4dc2b5a28e0a9890
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
RHEL 6 has been removed in 5.12+ verifications, so no need
to maintain those changes.
Change-Id: Ie65120bf8ec7a7d0aaa71b7c28e95283263e62eb
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Updates required for latest MQTT5 features and fixes.
Change-Id: I63e967efafbe1b22800e338b6c431febe3389a45
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Sometimes unmount of squish fail because resource busy even if
the installation is already succeeded. To avoid this let's add force
option to make sure unmounting works every time.
Task-number: QTQAINFRA-1964
Change-Id: Icacd01341d09577d9880e3ed208cb6ea18a7ac4f
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@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>
This is the qt5 part of the fix for the task. For the special version of
libclang we hacked together that allows static linkage, set an
environment variable that the mighty qdoc build system can utilize to
activate the release packaging specific linkage.
Change-Id: Ie340955214585329fe8fd3bc790e3cd6c6be42f9
Task-number: QTBUG-68178
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@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>
Squish is needed by RTA which is not run during normal qt5 build. Other
words squish installation is not tested during integration. That's why
we need separate test for it.
This change will fetch test and run test suite which is made to check
that squish installation works
Task-number: QTQAINFRA-1733
Change-Id: I9284fd52d87767ae04022c3a6996e0bb972315dd
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>