Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remote: fix connhelpers with custom dialer #2327

Merged
merged 2 commits into from
Mar 12, 2024

Conversation

tonistiigi
Copy link
Member

@tonistiigi tonistiigi commented Mar 9, 2024

fix #2324
closes #2329

With the new dial-stdio command the dialer is split from Client function in order to access it directly.

This breaks the custom connhelpers functionality
as support for connhelpers is a feature of the default dialer. If client defines a custom dialer then only it is used without extra modifications. This means that remote driver dialer needs to detect the
connhelpers on its own.

The relevant default dialer addition is in https://github.com/moby/buildkit/blob/a38011b9f57db4b805e6bb0322d7d923b341bc6e/client/client.go#L109-L115 .

@cpuguy83 @jsternberg

@crazy-max For test, should we have one custom test just for connhelpers or maybe just add extra config in the matrix that runs remote driver with a docker-container:// endpoint address?

With the new dial-stdio command the dialer is split
from `Client` function in order to access it directly.

This breaks the custom connhelpers functionality
as support for connhelpers is a feature of the default
dialer. If client defines a custom dialer then only
it is used without extra modifications. This means
that remote driver dialer needs to detect the
connhelpers on its own.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
@tonistiigi tonistiigi added this to the v0.13.1 milestone Mar 9, 2024
@crazy-max
Copy link
Member

crazy-max commented Mar 9, 2024

For test, should we have one custom test just for connhelpers or maybe just add extra config in the matrix that runs remote driver with a docker-container:// endpoint address?

I think a custom test is fine, I will open a PR with this test to make it fail with current master.

tests/create.go Outdated Show resolved Hide resolved
tests/create.go Show resolved Hide resolved
@crazy-max crazy-max force-pushed the remote-connhelper-fix branch 2 times, most recently from 52c454d to 73e04c9 Compare March 9, 2024 17:03
@crazy-max
Copy link
Member

tests/create.go Outdated Show resolved Hide resolved
@crazy-max crazy-max force-pushed the remote-connhelper-fix branch 4 times, most recently from 2e85fbb to 05b3229 Compare March 9, 2024 17:42
Copy link
Member Author

@tonistiigi tonistiigi left a comment

Choose a reason for hiding this comment

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

Test LGTM

Copy link
Collaborator

@jsternberg jsternberg left a comment

Choose a reason for hiding this comment

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

LGTM. A few comments on some refactoring ideas that I think would be minor and good to implement, but nothing blocking.

builder/node.go Outdated Show resolved Hide resolved
driver/kubernetes/factory.go Outdated Show resolved Hide resolved
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
@tonistiigi tonistiigi merged commit bb51111 into docker:master Mar 12, 2024
63 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[0.13] remote driver with kube-pod URL is stuck at inactive
4 participants