feat(mongodb): Wait for mongodb module with a replicaset to finish#2777
Merged
mdelapenya merged 5 commits intotestcontainers:mainfrom Sep 17, 2024
Merged
feat(mongodb): Wait for mongodb module with a replicaset to finish#2777mdelapenya merged 5 commits intotestcontainers:mainfrom
mdelapenya merged 5 commits intotestcontainers:mainfrom
Conversation
✅ Deploy Preview for testcontainers-go ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Member
|
@smgt thanks for this PR, much appreciated! We merged yesterday a PR enforcing the usage of testify's require across modules. Could you please resolve conflicts? I'll be more than happy to review it once it's there. Thanks in advance |
stevenh
reviewed
Sep 13, 2024
To be able to catch `NotWritablePrimary` error
6106a6c to
ab6e670
Compare
Contributor
Author
|
I've updated the PR now so it uses testify's require module. |
mdelapenya
approved these changes
Sep 17, 2024
Member
mdelapenya
left a comment
There was a problem hiding this comment.
LGTM, thanks! Waiting for the CI to pass for merging it.
Great job!
stevenh
approved these changes
Sep 17, 2024
mdelapenya
added a commit
that referenced
this pull request
Sep 20, 2024
* main: feat: support databend module (#2779) chore: golangci-lint 1.61.0 (#2787) fix(mssql): bump Docker image version (#2786) fix: handle 127 error code for podman compatibility (#2778) fix: do not override ImageBuildOptions.Labels when building from a Dockerfile (#2775) feat(mongodb): Wait for mongodb module with a replicaset to finish (#2777) fix(postgres): Apply default snapshot name if no name specified (#2783)
mdelapenya
added a commit
to mdelapenya/testcontainers-go
that referenced
this pull request
Sep 23, 2024
* main: chore: use a much smaller image for testing (testcontainers#2795) fix: parallel containers clean race (testcontainers#2790) fix(registry): wait for (testcontainers#2793) fix: container timeout test (testcontainers#2792) docs: document redpanda options (testcontainers#2789) feat: support databend module (testcontainers#2779) chore: golangci-lint 1.61.0 (testcontainers#2787) fix(mssql): bump Docker image version (testcontainers#2786) fix: handle 127 error code for podman compatibility (testcontainers#2778) fix: do not override ImageBuildOptions.Labels when building from a Dockerfile (testcontainers#2775) feat(mongodb): Wait for mongodb module with a replicaset to finish (testcontainers#2777) fix(postgres): Apply default snapshot name if no name specified (testcontainers#2783) fix: resource clean up for tests and examples (testcontainers#2738) ci: add generate for mocks (testcontainers#2774) fix: docker config error handling when config file does not exist (testcontainers#2772)
mdelapenya
added a commit
to mdelapenya/testcontainers-go
that referenced
this pull request
Sep 23, 2024
* main: chore: use a much smaller image for testing (testcontainers#2795) fix: parallel containers clean race (testcontainers#2790) fix(registry): wait for (testcontainers#2793) fix: container timeout test (testcontainers#2792) docs: document redpanda options (testcontainers#2789) feat: support databend module (testcontainers#2779) chore: golangci-lint 1.61.0 (testcontainers#2787) fix(mssql): bump Docker image version (testcontainers#2786) fix: handle 127 error code for podman compatibility (testcontainers#2778) fix: do not override ImageBuildOptions.Labels when building from a Dockerfile (testcontainers#2775) feat(mongodb): Wait for mongodb module with a replicaset to finish (testcontainers#2777) fix(postgres): Apply default snapshot name if no name specified (testcontainers#2783) fix: resource clean up for tests and examples (testcontainers#2738)
mdelapenya
added a commit
that referenced
this pull request
Sep 26, 2024
* main: (29 commits) fix: template for code generation (#2800) fix: update module path (#2797) fix: container logging deadlocks (#2791) chore: use a much smaller image for testing (#2795) fix: parallel containers clean race (#2790) fix(registry): wait for (#2793) fix: container timeout test (#2792) docs: document redpanda options (#2789) feat: support databend module (#2779) chore: golangci-lint 1.61.0 (#2787) fix(mssql): bump Docker image version (#2786) fix: handle 127 error code for podman compatibility (#2778) fix: do not override ImageBuildOptions.Labels when building from a Dockerfile (#2775) feat(mongodb): Wait for mongodb module with a replicaset to finish (#2777) fix(postgres): Apply default snapshot name if no name specified (#2783) fix: resource clean up for tests and examples (#2738) ci: add generate for mocks (#2774) fix: docker config error handling when config file does not exist (#2772) docs: refine heading badges in README (#2770) feat(wait): for file (#2731) ...
ttruongatl
pushed a commit
to ttruongatl/testcontainers-go
that referenced
this pull request
Feb 15, 2025
…estcontainers#2777) * Insert a document in mongodb during tests To be able to catch `NotWritablePrimary` error * Add mongo:7 to replica set tests * Add new waiting strategy for mongodb replicaset * Extend default wait strategy Thanks @stevenh --------- Co-authored-by: Steven Hartland <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
This will add a test for writing to the mongodb module replica set so we can catch the error
(NotWritablePrimary) not primary. It also adds a new wait strategy when usingmongodb.WithReplicaSet()that waits for replica set status to be available.Why is it important?
We get flaky tests in our CI (seems to be present on slow hardware) and they fail sometimes since we try to write to a mongodb container which isn't ready.
How to test this PR
There are tests added to test for this error. Tests will randomly fail when the wait strategy in
WithReplicaSetis removed.