<div dir="ltr">On Thu, Jul 20, 2017 at 8:39 AM, Matthias Kuhn <span dir="ltr"><<a href="mailto:matthias@opengis.ch" target="_blank">matthias@opengis.ch</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF"><div><div class="gmail-h5">
    <p>On 7/19/17 6:59 PM, Alessandro Pasotti wrote:<br>
    </p>
    <blockquote type="cite">
      <div dir="ltr">On Wed, Jul 19, 2017 at 5:53 PM, Matthias Kuhn <span dir="ltr"><<a href="mailto:matthias@opengis.ch" target="_blank">matthias@opengis.ch</a>></span>
        wrote:<br>
        <div class="gmail_extra">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
              <br>
              Travis CI stopped working today and reported nothing but
              failures.<br>
              <br>
              # The good news<br>
              <br>
              It's up and running again.<br>
              <br>
              # Affected pull requests<br>
              <br>
              If you have a pull request which errored, either push a
              new commit to<br>
              your branch (if you have something that you wanted to push
              anyway) or<br>
              close and reopen the pull request.<br>
              <br>
              # Cause<br>
              <br>
              It was caused by the switch of the default distribution
              from precise to<br>
              trusty. (Read more about it here<br>
              <a href="https://blog.travis-ci.com/2017-07-11-trusty-as-default-linux-is-coming" rel="noreferrer" target="_blank">https://blog.travis-ci.com/201<wbr>7-07-11-trusty-as-default-linu<wbr>x-is-coming</a>).<br>
              Right now it's quite easy to revert (once you know what's
              actually going<br>
              on).<br>
              <br>
              # Perspective<br>
              <br>
              Mid-term we will have to migrate to something newer
              though.<br>
              Travis also offers support for trusty but that's quite old
              as well. We<br>
              are currently looking into a couple of different
              approaches like<br>
              building our depencies for trusty and shipping them via a
              ppa or using a<br>
              docker container with the dependencies. The main
              requirement is that the<br>
              whole dependency build process is scripted and can be done<br>
              collaboratively (something the current osgeo4travis
              dependencies don't<br>
              fulfill which I'm eager to retire).<br>
              <br>
              Cheers<br>
              Matthias<br clear="all">
            </blockquote>
            <div><br>
              <br>
            </div>
            <div>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.<br>
              <br>
            </div>
            <div>The images are then pulled by Travis and the tests are
              run inside the docker images on Travis.<br>
            </div>
            <div><br>
            </div>
            <div>Maybe something similar can be developed for the
              dependencies, please le me know if we can help.<br>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br></div></div>
    That's very interesting, Alessandro<br>
    <br>
    How are dependencies built, using some packaging system or a set of
    scripts? Are the scripts or recipes around somewhere?<br></div></blockquote><div><br></div><div>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.<br><br></div><div>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.<br></div><div><br></div><div>BTW, the recipes are here: <a href="https://github.com/boundlessgeo/qgis-testing-environment-docker">https://github.com/boundlessgeo/qgis-testing-environment-docker</a><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div bgcolor="#FFFFFF">
    <br>
    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).<br></div></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div bgcolor="#FFFFFF">
    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.<br>
    What do you think about this approach?<br>
    <br>
    Thanks<span class="gmail-HOEnZb"><font color="#888888"><br>
    Matthias</font></span><span class="gmail-"><br>
    <br></span></div></blockquote><div><br><br><div>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?<br><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><br></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><br></div><div class="gmail_extra">Will you join the hackfest? If yes we can brainstorm there!<br><br></div><div class="gmail_extra">Cheers<br clear="all"></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature">Alessandro Pasotti<br>w3:   <a href="http://www.itopen.it" target="_blank">www.itopen.it</a></div>
</div></div>