<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>