Skip to content

Move builder under daemon#50365

Merged
austinvazquez merged 4 commits intomoby:masterfrom
dmcgowan:move-builder-daemon
Jul 16, 2025
Merged

Move builder under daemon#50365
austinvazquez merged 4 commits intomoby:masterfrom
dmcgowan:move-builder-daemon

Conversation

@dmcgowan
Copy link
Member

Move builder under daemon. Also moves builder-next into internal and the daemon/build package (previously for api backend) to daemon/builder/backend

@dmcgowan dmcgowan requested a review from tonistiigi as a code owner July 10, 2025 04:06
@dmcgowan dmcgowan added this to the 29.0.0 milestone Jul 10, 2025
"github.com/docker/docker/builder"
"github.com/docker/docker/builder/remotecontext"
"github.com/docker/docker/daemon/builder"
"github.com/docker/docker/daemon/builder/remotecontext"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't move the remotecontext package in the daemon; parts of it are used by the CLI, compose, and buildx. Not sure what the best place for it though; we used to have a pkg/urlutil but it was (very wrongfully) used externally for wrong purposes, which is why we moved it to be in the builder package (and added some warnings); see

But it's possible that we need to split some of the functionality, as some is used internally, some by the CLI, other bits elsewhere.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you propose here? It is not internal and there is nothing stopping us from splitting it out completely.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Opened #50372 to track usage of non-client/non-api packages

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mobyexporter "github.com/docker/docker/builder/builder-next/exporter"
imageadapter "github.com/docker/docker/daemon/internal/builder-next/adapters/containerimage"
mobyexporter "github.com/docker/docker/daemon/internal/builder-next/exporter"
"github.com/docker/docker/daemon/internal/mod"
Copy link
Member

@thaJeztah thaJeztah Jul 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FWIW; mod is only used in builder-next/worker; we could consider moving it internal to that;

"github.com/docker/docker/internal/mod"

Copy link
Member

@thaJeztah thaJeztah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM if docker/cli#6190 is accepted.

Left one comment for the mod package; not really blocking, but perhaps good to have it all done.

I also had a minor PR following some linting issues that I got on the CLI (we should enable those linters here as well probably); in case you need to update this PR; #50423

@dmcgowan dmcgowan force-pushed the move-builder-daemon branch from f601a5a to f012d4e Compare July 16, 2025 21:57
dmcgowan added 4 commits July 16, 2025 15:05
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
Copy link
Contributor

@austinvazquez austinvazquez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM and docker/cli#6190 is trending positive. Pulling this in to unblock some other PRs. Can always follow-up if needed. Thanks.

@austinvazquez austinvazquez merged commit 977dd18 into moby:master Jul 16, 2025
163 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in go modules transition Jul 16, 2025
@thompson-shaun thompson-shaun moved this from Open to Complete in 🔦 Maintainer spotlight Jul 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

go-modules release-blocker PRs we want to block a release on

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants