[opam-devel] Container based Travis CI service
Anil Madhavapeddy
anil at recoil.org
Thu Sep 3 18:34:17 BST 2015
Thanks for posting this to the list, Michael. We definitely need to do
something about Travis, since the legacy infrastructure is failing regularly
with network timeouts.
If I understand it right, it won't be suitable for completely replacing
depexts, since they specify OS dependencies for binary packages. However,
it can eliminate the need for the ["source" "linux"] depext which currently
downloads a shell script and runs it. For instance, the MaxminDB bindings
just posted could use a way to install the C library, but there are no
Ubuntu packages available: https://github.com/ocaml/opam-repository/pull/4754
-anil
> On 19 Aug 2015, at 07:25, Michael Grünewald <michipili at gmail.com> wrote:
>
> Dear opam-devel’lers,
>
> for a few days I moved my OCaml repositories to the new container-based
> continuous integration service from Travis. I had a brief off-list
> exchange with Anil, who meant this topic would be interesting to
> list members, especially for depexts.
>
> In my setting I can use Travis's cache to store several switches and
> run my test-suite for each of these switches. I wrote a blog article
> describing the setup, if you did not read it already, it is here:
>
> http://unix-workstation.blogspot.de/2015/08/opam-and-bsd-owl-support-for-travis-ci.html
>
>
> As an appetiser, here is the script running the test suite, as you
> can expect it, the TRAVIS_OCAML_VERSION is defined in .travis.yml
> as part of the test matrix environment.
>
> INSTALL_PREFIX="${HOME}/.local"
> eval $(opam config env --switch ${TRAVIS_OCAML_VERSION})
> autoconf
> ./configure --prefix="${INSTALL_PREFIX}"
> bmake -I "${INSTALL_PREFIX}/share/bsdowl” all
>
> The setup introduces a special .travis.opam file enumerating the
> switches that need to be installed and the dependencies of the opam
> package being tested. Packages can be installed using their definition
> in the repository or by pinning a git repository.
>
> Behind the scenes, a script from the Anvil package is at work:
>
> https://github.com/michipili/anvil/blob/master/subr/anvil_travisci_autoinstall.sh
>
>
> Besides the blog link above, here are a list of repositories using
> this new setup:
>
> https://github.com/michipili/broken
> https://github.com/michipili/mixture
> https://github.com/michipili/lemonade
> https://github.com/michipili/getopts
> https://github.com/michipili/configuration
>
> @Anil – Am I right understanding it would be interesting to move
> depext CI setup to the container-based version? If so, I could
> probably take a look at before the end of the week.
>
>
> Best,
> Michael
>
> _______________________________________________
> opam-devel mailing list
> opam-devel at lists.ocaml.org
> http://lists.ocaml.org/listinfo/opam-devel
More information about the opam-devel
mailing list