<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>On 7/20/17 10:44 AM, Alessandro Pasotti wrote:<br>
</p>
<blockquote type="cite"
cite="mid:CAL5Q673BppkPZy-oe1YkgZ=9ai_ULEV7=F2e6z8FpuGV4gxZkg@mail.gmail.com">
<div dir="ltr"><br>
<span class=""> </span>
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"><span class="">
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div>
<div><br>
</div>
<div>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.<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</span> Normally they should be cached and not rebuilt.<span
class=""><br>
</span></div>
</blockquote>
<div><br>
</div>
<div><br>
Oh, I see, I would not know how to do that though. <br>
</div>
</div>
</div>
</div>
</blockquote>
We already do something similar to bring down QGIS compilation time
from >1 hour to 15 minutes.<br>
<br>
<blockquote type="cite"
cite="mid:CAL5Q673BppkPZy-oe1YkgZ=9ai_ULEV7=F2e6z8FpuGV4gxZkg@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"><span class=""> <br>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div>
<div>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.<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</span> I imagine version updates happen more often. For
example a new gdal version that brings in some
geopackage functionality which is covered by a unit
test.<br>
</div>
</blockquote>
<div><br>
</div>
<div>More often than daily?</div>
</div>
</div>
</div>
</blockquote>
More often than new dependencies will be added.<br>
<blockquote type="cite"
cite="mid:CAL5Q673BppkPZy-oe1YkgZ=9ai_ULEV7=F2e6z8FpuGV4gxZkg@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div> I was thinking at building the dependencies in the
docker daily with AWS. We could even have different set of
dependencies in different docker tags and use a Travis
matrix to test them all ... given that it does not add too
much to the Travis allowed time.<br>
</div>
</div>
</div>
</div>
</blockquote>
True, that's something to consider as well. That could also directly
populate a ppa (and avoid using docker).<br>
<br>
Considering the matrix, do you have a good idea what we could/should
include in this matrix?<br>
<br>
One thing I'm not sure is if we have a maximum number of parallel
jobs and will make our own queue grow if we are hammering the
infrastructure with parallel jobs. Do you know anything about this?<br>
<br>
<blockquote type="cite"
cite="mid:CAL5Q673BppkPZy-oe1YkgZ=9ai_ULEV7=F2e6z8FpuGV4gxZkg@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div> <br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"> <br>
What's the workflow here?<br>
<br>
If this can be added directly inside a pull request this
has some advantages like<br>
<br>
a) responsibility (even without commit rights on the
qgis repo you can build the deps in the pull request)<br>
b) sandboxing (if the library is updated in a
centralized repository and the new gdal version kills
some other unit tests we will have that also failing on
master).<span class=""><br>
<br>
</span></div>
</blockquote>
<div><br>
</div>
<div>That's a big advantage, I agree.<br>
<br>
</div>
<div>The bottomline is that if you know how to do that and
it will work without timing out, your solutions is for
sure the best one.<br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
Larry has been doing similar things for osgeo4mac in the past, so
I'm fairly positive that it's possible.<br>
<br>
Cheers<br>
<br>
<blockquote type="cite"
cite="mid:CAL5Q673BppkPZy-oe1YkgZ=9ai_ULEV7=F2e6z8FpuGV4gxZkg@mail.gmail.com">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div><br>
</div>
<div> <br>
</div>
<div>Cheers<br clear="all">
</div>
</div>
<br>
-- <br>
<div class="gmail_signature" data-smartmail="gmail_signature">Alessandro
Pasotti<br>
w3: <a href="http://www.itopen.it" target="_blank"
moz-do-not-send="true">www.itopen.it</a></div>
</div>
</div>
</blockquote>
<br>
</body>
</html>