[opam-devel] docker hub update?

Grégoire Henry gregoire.henry at ocamlpro.com
Mon Apr 11 13:19:35 BST 2016


Hi Anil,

> To fix this and address every usecase, I'd like to break up the container layers to be more fine-grained:
> 
> - ocaml/ocaml - remains as it is right now
> - ocaml/opam-base - provides an installed OPAM binary, but _not_ initialised, and has the capability to volume mount an OPAM repository from which it can initialise the local base without any data being held in the container.
> - ocaml/opam - embeds an OPAM repository checkout and works as-is right now
> - ocaml/opam-archive: also volume mounts in an external archive/ directory so we do not have to embed the volume in a container

What about including in `ocaml/opam-base` a "partial" OPAM repository
with only the (some) compilers and initialize OPAM with it. Then
`ocaml/opam` (or CI tools based on `ocaml/opam-base`) will replace the
"partial" OPAM repository with the real one. If done correctly, they
shouldn't have to recompile OCaml.

The partial OPAM repository could either be manually updated (e.g. at
each OCaml release) or may be extracted from the official repository
by a bot.

Grégoire


More information about the opam-devel mailing list