feat(scylladb): add scylladb provider#2919
feat(scylladb): add scylladb provider#2919danielhe4rt wants to merge 21 commits intotestcontainers:mainfrom
Conversation
✅ Deploy Preview for testcontainers-go ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
…rd-awareness port
stevenh
left a comment
There was a problem hiding this comment.
Thanks for a PR @danielhe4rt, have done an initial review with some suggestions and questions for you.
| @@ -0,0 +1,194 @@ | |||
| package scylladb_test | |||
There was a problem hiding this comment.
Can we include a test using ssl? I think would be nice to have.
| } | ||
|
|
||
| // WithShardAwareness enable shard-awareness in the ScyllaDB container so you can use the `19042` port. | ||
| func WithShardAwareness() testcontainers.CustomizeRequestOption { |
There was a problem hiding this comment.
scylladb starts both ports 9042 and 19042 by default. IMO we should expose a fn to get the mapped port for 19042 and omit this one.
There was a problem hiding this comment.
@danielhe4rt @eddumelendez I'm taking over the PR and adding the suggestions on top of the original PR.
I'd like to have this in the upcoming release.
Thanks all for your time here
There was a problem hiding this comment.
Ups, I noticed this PR is sent from the main branch of the fork, so unfortunately I cannot contribute commits to it.
@danielhe4rt could you please address the above comments 🙏 ?
There was a problem hiding this comment.
Done! Sorry for the delay. Tomorrow I'll sync with @CodeLieutenant and finish it for good. Give us one more day @mdelapenya. We're also gonna stream it, so you can find us on twitch.tv/danielhe4rt.
Co-authored-by: Steven Hartland <stevenmhartland@gmail.com>
mdelapenya
left a comment
There was a problem hiding this comment.
@danielhe4rt thanks for your time in this PR, I added a few comments/suggestions in the review.
Could you address them 🙏 ?
Thank you in advance
modules/scylladb/scylladb_test.go
Outdated
| }, nil | ||
| } | ||
|
|
||
| func getDynamoAlternatorClient(t *testing.T, c *scylladb.Container, port int) (*dynamodb.Client, error) { |
There was a problem hiding this comment.
suggestion: if the assertions in the calling tests are all the same (create a table using the client), you may want to merge them into this helper function, and name it assertCreateTable(t *testing.T). You could also merge the createTable helper
|
Thanks @danielhe4rt for your initial work in this PR 🙇 We merged it in the follow-up PR and will be released in the upcoming new release 🚀 Spread the word! |
What does this PR do?
Implements the Database ScyllaDB as a new provider.
Under the
ScyllaDBContaineryou will have the possibility of:Shard Awarenessport usingWithShardAwareness;WithCommandConnectionHostAPI Example
Why is it important?
ScyllaDB is a NoSQL Database that is being constantly used by big companies and acts as a Drop-in Replacement to
CassandraDBandDynamoDB.How to test this PR
Clone the repository and enter the
scylladbmodule folder: