[QGIS-Developer] [PSA] Travis CI is up and running again

Alessandro Pasotti apasotti at gmail.com
Wed Jul 19 23:56:57 PDT 2017


On Thu, Jul 20, 2017 at 8:39 AM, Matthias Kuhn <matthias at opengis.ch> wrote:

> On 7/19/17 6:59 PM, Alessandro Pasotti wrote:
>
> On Wed, Jul 19, 2017 at 5:53 PM, Matthias Kuhn <matthias at opengis.ch>
> wrote:
>
>> Hi,
>>
>> Travis CI stopped working today and reported nothing but failures.
>>
>> # The good news
>>
>> It's up and running again.
>>
>> # Affected pull requests
>>
>> If you have a pull request which errored, either push a new commit to
>> your branch (if you have something that you wanted to push anyway) or
>> close and reopen the pull request.
>>
>> # Cause
>>
>> It was caused by the switch of the default distribution from precise to
>> trusty. (Read more about it here
>> https://blog.travis-ci.com/2017-07-11-trusty-as-default-linux-is-coming).
>> Right now it's quite easy to revert (once you know what's actually going
>> on).
>>
>> # Perspective
>>
>> Mid-term we will have to migrate to something newer though.
>> Travis also offers support for trusty but that's quite old as well. We
>> are currently looking into a couple of different approaches like
>> building our depencies for trusty and shipping them via a ppa or using a
>> docker container with the dependencies. The main requirement is that the
>> whole dependency build process is scripted and can be done
>> collaboratively (something the current osgeo4travis dependencies don't
>> fulfill which I'm eager to retire).
>>
>> Cheers
>> Matthias
>>
>
>
> Thanks Matthias for the good news, you know we (@ boundless) have an
> established workflow for nightly builds of docker QGIS testing images,
> basically the docker images are build with Vagrant on AWS through a jenkins
> task that schedules the builds and pushes them to docker hub.
>
> The images are then pulled by Travis and the tests are run inside the
> docker images on Travis.
>
> Maybe something similar can be developed for the dependencies, please le
> me know if we can help.
>
>
> That's very interesting, Alessandro
>
> How are dependencies built, using some packaging system or a set of
> scripts? Are the scripts or recipes around somewhere?
>

Oh, sorry for not being clear, we are not building dependencies but only
QGIS itself, but I think that the general workflow could be used for
building the dependencies in the docker instead of QGIS and push the image
to docker HUB.

So, when Travis starts, it will pull the pre-built docker image with all
dependencies already built and either install them in Travis and build QGIS
or build QGIS inside the docker "inside" Travis.

BTW, the recipes are here:
https://github.com/boundlessgeo/qgis-testing-environment-docker


> We were wondering if this could be done directly on travis before the
> build starts (skipping any package that is already up to date in the cache).
>


> The nice benefit of this compared to a separate build as you are doing on
> AWS would be that if something needs a new dependency (thinking of qca,
> qtkeychain, ...) it can directly integrated in the same pull request.
> What do you think about this approach?
>
> Thanks
> Matthias
>
>

I'm not sure I get it right, do you mean that you want to build the
dependencies on Travis within the same job that builds QGIS?

I think that this would add a considerable time, that's why we are building
on AWS and pull the pre-built docker, but I guess that the goal is
completely different.

I was thinking that the dependencies do not vary frequently, hence we
should be able to build the dependencies docker nightly and when the main
QGIS Travis job starts we can pull the docker with the dependencies
substantially lowering the time needed to run the entire job.

Will you join the hackfest? If yes we can brainstorm there!

Cheers

-- 
Alessandro Pasotti
w3:   www.itopen.it
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20170720/ba0c7006/attachment.html>


More information about the QGIS-Developer mailing list