-
Notifications
You must be signed in to change notification settings - Fork 670
separate the image build and export phases #994
Conversation
87ff8e0
to
af0356d
Compare
@tomwilkie so this is breaking CircleCI because it looks like the docker version on the build VM is too old - multi-arg |
We could potentially build in a container with a newer version of docker, On Tuesday, 23 June 2015, Matthias Radestock [email protected]
|
where is that ancient version coming from? CircleCI? GCE? |
isn't this using the weaveworks/weave-build image, and doesn't that contain a version of docker? |
I reckon that's the problem. weave-build's Dockerfile installs docker.io, not lxc-docker. Am I on the right track? |
Old version comes from circle. We do build in the container, and we bind mount the docker socket in. But On Tuesday, 23 June 2015, Matthias Radestock [email protected]
|
Hmm. Allegedly CircleCI runs Docker 1.4.1. Which does support multi-arg save. Something isn't right here. |
So I reckon the issue is what I said earlier. The multi-arg save gets rejected because the docker client inside the build container is too old a version, since it gets installed from the docker.io instead of lxc-docker package. |
Note that we wouldn't be able to just switch to lxc-docker; we'd have to pin the version to 1.4.1 too, since otherwise the client won't be able to talk to the CircleCI-provided docker daemon. |
That way the export can be just a single tar, which is more convenient. And without introducing unnecessary image builds.
af0356d
to
6dea9bd
Compare
to 1.3.1, the same version we use everywhere else, e.g. in weavexec.
6dea9bd
to
bdda9d0
Compare
Success! I changed the weave-build image to include docker 1.3.1, which is what we use elsewhere, notably in the weaveexec image. It's a bit gross since it requires two @tomwilkie I had to |
@tomwilkie says to "just press the button until it works". |
separate the image build and export phases
I just noticed a surprising consequence of this change, although it seems benign: I have a VM where I had previously done
These appear to be just warnings, and don't appear for subsequent loads of the single tar file. But I don't know what is special about this case to trigger them. I can reproduce this by checking out 1.0 and building and loading separate tar files again, and then loading the single tar file again. I expect these warnings are confined to |
Here is the message: called from: I can't see what special circumstances would cause it to come just once. |
It's a new feature in Docker 1.7 |
Indeed it is: I get the same warnings when loading the single tar file after a build that changed things. |
That way the export can be just a single tar, which is more convenient.