Moby Builder Report 2017-05-08

Quality: Dependency interface switch

Proposal for switching the dependency interface for current builder package. That should fix the current problems with data leakage and conflicts caused by daemon state cleanup scripts.

Merged as part of this effort:

In review:

Merged: docker build –iidfile

docker build --iidfile to capture the ID of the build result. New option can be used by the CLI applications to get back the image ID of build result. API users can use the Aux messages in progress stream to also get the IDs for intermediate build stages, for example to share them for build cache.

New feature: Long running session

PR for adding long-running session between daemon and cli that enables advanced features like incremental context send, build credentials from the client, ssh forwarding etc.

@simonferquel proposed a grpc-only version of that interface that should simplify the setup needed for describing new features for the session. Looking for design reviews.

The feature also needs to be reworked after CLI split.

buildkit

Not much progress apart from some design discussion. Next step would be to open up a repo.

Proposals for new Dockerfile features that need design feedback:

Add IMPORT/EXPORT commands to Dockerfile

Add DOCKEROS/DOCKERARCH default ARG to Dockerfile

Add support for RUN --mount

DAG image builder

Option to export the hash of the build context (new)

Allow –cache-from=* (new)

If you are interested in implementing any of them, leave a comment on the specific issues.

Other new builder features currently in code-review:

Allow builds from any git remote ref

Fix a case where using FROM scratch as NAME would fail

Backlog:

Build secrets will be brought up again in next maintainer’s meeting to evaluate how to move on with this, if any other proposals have changed the objective and if we should wait for swarm secrets to be available first.