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

etcd_docker 3: Incorporate docker based etcd integration package into… #4205

Conversation

andrewmains12
Copy link
Contributor

@andrewmains12 andrewmains12 commented Mar 14, 2023

…… (#4147)

PR 3 for #4144

High level approach is as described in #4144 .

This PR incorporates the new test package into our unittests. Usage is via the etcdintegration package, which
makes it transparent to the test code; it simply gets an etcd server started via different means.

One piece of weirdness to call out here: the package currently relies on autosync being disabled on the client side.
This is because the advertise client URL (aka what etcd tells clients to connect to) isn't correct for the open port on the host.

That is we have:

  • etcd: listen on container port 0.0.0.0:2379, advertise 0.0.0.0:2379
  • docker: expose etcd port 2379 to 0.0.0.0:0 on host machine (random free port)
  • client: connect to etcd via host machine.

We could probably make this better.

commit-id:263fed13


Stack:

⚠️ Part of a stack created by spr. Do not merge manually using the UI - doing so may have unexpected results.

@andrewmains12 andrewmains12 force-pushed the pr/andrewmains12/amains/grpc-update/etcd_tests.review/263fed13 branch from 780280f to fa338b9 Compare March 24, 2023 16:36
Base automatically changed from pr/andrewmains12/amains/grpc-update/etcd_tests.review/7aeae843 to master March 24, 2023 17:13
#4147)

PR 3 for #4144

High level approach is as described in #4144 .

This PR incorporates the new test package into our unittests. Usage is via the `etcdintegration` package, which
makes it transparent to the test code; it simply gets an etcd server started via different means.

One piece of weirdness to call out here: the package currently relies on autosync being *disabled* on the client side.
This is because the advertise client URL (aka what etcd tells clients to connect to) isn't correct for the open port on the host.

That is we have:

- etcd: listen on container port 0.0.0.0:2379, advertise 0.0.0.0:2379
- docker: expose etcd port 2379 to 0.0.0.0:0 on host machine (random free port)
- client: connect to etcd via host machine.

We could probably make this better.

commit-id:263fed13
@andrewmains12 andrewmains12 force-pushed the pr/andrewmains12/amains/grpc-update/etcd_tests.review/263fed13 branch from fa338b9 to 8d896f4 Compare March 28, 2023 14:17
@andrewmains12 andrewmains12 changed the title etcd_docker 3: Incorporate docker based etcd integration package into… (#4147) etcd_docker 3: Incorporate docker based etcd integration package into… Mar 28, 2023
@andrewmains12 andrewmains12 merged commit c1a96fd into master Mar 28, 2023
@andrewmains12 andrewmains12 deleted the pr/andrewmains12/amains/grpc-update/etcd_tests.review/263fed13 branch March 28, 2023 14:40
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.

2 participants