[Development] Changes to continuous integration in qtdeclarative/dev
frederik.gladhorn at theqtcompany.com
Thu Mar 19 13:16:43 CET 2015
I'd like to give everyone a heads up (of hopefully good news). We plan to
switch over the dev branch of qtdeclarative to a new continuous integration
system in the beginning of next week. We currently aim for Monday if all goes
There will be a more comprehensive blog post about the new system in the near
future, but it seems only fair to give a short intro here. One goal is to take
advantage of the modularization which has been done on a per module level in
Qt, but is so far only partially reflected in the continuous integration
In order to cut out long waiting times for git checkouts, we will create
source tar balls centrally using git archive which are then downloaded by the
Agents are clones of virtual machine snapshots, so they should always be in a
good shape, runs should be much more reproducible (apart from system clock and
network dependencies). Once a module is built, we save the build artifacts
(the build library binaries etc) and then reuse the build artifacts for the
modules depending on it. This way we do not rebuild qtbase for qtdeclarative,
unless it changed since the last run. There is still a lot of potential for
optimization at this stage, but first we want the system to be reliable.
We should be covering all platforms/operating systems/configurations that we
are currently running in the CI, but it would be great if everyone working on
the module could have an eye on the test logs, in case we did miss something.
One feature we will no longer support are reverse dependencies. After many
long discussions we concluded that the best way forward is to have fast
turnaround times (potentially reverting patches quicker if they are found to
block other modules, until they have been fixed) combined with frequent builds
of all modules (at least daily, probably more often).
If you run into trouble or see suspicious behavior, talk to Simon, Lars and
me, we'll all be keeping an eye on things running smoothly.
More information about the Development