feat(modules.cockroachdb) Adds cockroachdb module#2131
feat(modules.cockroachdb) Adds cockroachdb module#2131mdelapenya merged 21 commits intotestcontainers:mainfrom
Conversation
✅ Deploy Preview for testcontainers-go ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
mdelapenya
left a comment
There was a problem hiding this comment.
LGTM, thanks for this new module! I only left a comment regarding the WithImageTag option. Once discussed, I think this PR is ready to be merged, thanks!
|
@rcrowe the errors in the rootless-mode pipeline are not related to this PR but to an automatic bump in the Github worker, which is installing Docker v25.0.0 since a few days ago. I'm talking to the Moby team to check if that's a regression or the expected behaviour, because the failures are consistent:
|
|
Thanks @mdelapenya Gives me some time to finish TLS support & push that up as a separate PR, unless you want me to include it here? |
0a6b8ca to
9e4fa57
Compare
|
@mdelapenya I'm assuming docker rootless failing here because it's flaky, notice on Have addressed the feedback of |
mdelapenya
left a comment
There was a problem hiding this comment.
Thanks for your hard work adding this new module. I left a few comments that are non-blocking, so I think we can merge the module once discussed.
In any case, great job!
|
@mdelapenya 🤞🏻 this is in a shape to get merged & iterate once it's in the hands of people 🤞🏻 Thanks for your feedback 🙇🏻 |
mdelapenya
left a comment
There was a problem hiding this comment.
LGTM, thank you for your contribution!
I added a few minor comments, once they are addressed, we are good to go! 🚀
Cockroach wasn't being consistent with log messages to use that as a reliable mechanism across the different authentication methods. This commit makes an actual SQL query to validate CRDB is correctly running. So we can make use of sql.DB driver and `wait.ForSQL` we've had to register a connection URL that includes TLS config, as there's no way to do that through standard connection strings.
Co-authored-by: Manuel de la Peña <[email protected]>
f8e20cd to
ebf8373
Compare
Co-authored-by: Manuel de la Peña <[email protected]>
mdelapenya
left a comment
There was a problem hiding this comment.
LGTM, thanks for this contribution and for your patience while reviewing the code.
Merging it now
* main: chore(deps): bump github.com/docker/compose/v2 in /modules/compose (testcontainers#2162) feat(modules.cockroachdb) Adds cockroachdb module (testcontainers#2131)
* main: (74 commits) chore(deps): bump github.com/docker/compose/v2 in /modules/compose (testcontainers#2162) feat(modules.cockroachdb) Adds cockroachdb module (testcontainers#2131) chore(deps): bump golang.org/x/crypto in /modules/minio (testcontainers#2161) chore(deps): bump golang.org/x/crypto in /modules/openldap (testcontainers#2165) chore(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0 (testcontainers#2169) chore(deps): bump google.golang.org/api from 0.156.0 to 0.159.0, google.golang.org/grpc from 1.60.1 to 1.61.0, cloud.google.com/go/pubsub from 1.33.0 to 1.35.0 in /modules/gcloud (testcontainers#2168) chore(deps): bump github.com/hashicorp/consul/api in /examples/consul (testcontainers#2152) chore(deps): bump github.com/couchbase/gocb/v2 in /modules/couchbase (testcontainers#2145) chore(deps): bump k8s.io/api, k8s.io/apimachinery and k8s.io/client-go from 0.29.0 to 0.29.1 in /modules/k3s (testcontainers#2167) chore: do not compile modules on macos workers on GH (testcontainers#2164) Openldap module support (testcontainers#2117) Adding inbucket module (testcontainers#2142) testifylint: enable compares rule (testcontainers#2143) Bump containerd version to v1.7.12 (testcontainers#2137) feat: Add Minio module (testcontainers#2132) Adding LogConsumers start as part of the ContainerRequest (testcontainers#2073) chore: bring back assertion for network aliases for bridge in rootless mode (testcontainers#2141) chore(deps): bump github.com/docker/compose/v2 from 2.23.3 to 2.24.0 in /modules/compose (testcontainers#2096) chore(deps): bump github.com/dvsekhvalnov/jose2go in /modules/pulsar (testcontainers#2136) fix: skip-host-cache option removed in latest MySQL 8.3.0 version (testcontainers#2130) ...
* main: (33 commits) feat (postgres): support for creating and restoring Snapshots (testcontainers#2199) fix: apply volume options only to volumes (testcontainers#2201) redpanda/test: add admin client call (testcontainers#2200) chore(deps): bump cloud.google.com/go/spanner from 1.55.0 to 1.56.0 in /modules/gcloud, cloud.google.com/go/pubsub from 1.35.0 to 1.36.1 in /modules/gcloud, cloud.google.com/go/bigquery from 1.57.1 to 1.58.0 in /modules/gcloud (testcontainers#2197) chore(deps): bump github.com/docker/docker from 25.0.1+incompatible to 25.0.2+incompatible (testcontainers#2196) fix: go doc reference broken image (testcontainers#2195) Add Support for WASM Transforms to Redpanda Module (testcontainers#2170) feat(modules.clickhouse): Add zookeeper for clickhouse clusterization (testcontainers#1995) redpanda: allow using SASL and TLS together (testcontainers#2140) chore: do not panic in testable examples (testcontainers#2193) fix: all mounts should contain the testcontainers labels (testcontainers#2191) [redpanda] sasl test for wrong mechanism (testcontainers#2048) fix: deprecate BindMounts correctly (testcontainers#2190) chore(docker_mounts): stop doing misleading logging (testcontainers#2178) fix: Add HTTPStrategy WithForcedIPv4LocalHost To Fix Docker Port Map (testcontainers#1775) chore(deps): bump github.com/docker/compose/v2 in /modules/compose (testcontainers#2162) feat(modules.cockroachdb) Adds cockroachdb module (testcontainers#2131) chore(deps): bump golang.org/x/crypto in /modules/minio (testcontainers#2161) chore(deps): bump golang.org/x/crypto in /modules/openldap (testcontainers#2165) chore(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0 (testcontainers#2169) ...
* main: (33 commits) feat (postgres): support for creating and restoring Snapshots (testcontainers#2199) fix: apply volume options only to volumes (testcontainers#2201) redpanda/test: add admin client call (testcontainers#2200) chore(deps): bump cloud.google.com/go/spanner from 1.55.0 to 1.56.0 in /modules/gcloud, cloud.google.com/go/pubsub from 1.35.0 to 1.36.1 in /modules/gcloud, cloud.google.com/go/bigquery from 1.57.1 to 1.58.0 in /modules/gcloud (testcontainers#2197) chore(deps): bump github.com/docker/docker from 25.0.1+incompatible to 25.0.2+incompatible (testcontainers#2196) fix: go doc reference broken image (testcontainers#2195) Add Support for WASM Transforms to Redpanda Module (testcontainers#2170) feat(modules.clickhouse): Add zookeeper for clickhouse clusterization (testcontainers#1995) redpanda: allow using SASL and TLS together (testcontainers#2140) chore: do not panic in testable examples (testcontainers#2193) fix: all mounts should contain the testcontainers labels (testcontainers#2191) [redpanda] sasl test for wrong mechanism (testcontainers#2048) fix: deprecate BindMounts correctly (testcontainers#2190) chore(docker_mounts): stop doing misleading logging (testcontainers#2178) fix: Add HTTPStrategy WithForcedIPv4LocalHost To Fix Docker Port Map (testcontainers#1775) chore(deps): bump github.com/docker/compose/v2 in /modules/compose (testcontainers#2162) feat(modules.cockroachdb) Adds cockroachdb module (testcontainers#2131) chore(deps): bump golang.org/x/crypto in /modules/minio (testcontainers#2161) chore(deps): bump golang.org/x/crypto in /modules/openldap (testcontainers#2165) chore(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0 (testcontainers#2169) ...
What does this PR do?
Adds CockroachDB as a module
cockroachdb.WithTLS& the helpercockroachdb.NewTLSConfigCOCKROACH_DATABASEsupport viacockroachdb.WithDatabaseCOCKROACH_USERsupport viacockroachdb.WithUserCOCKROACH_PASSWORDsupport viacockroachdb.WithPasswordWhy is it important?
Previously an example only, a module lets us develop it over time to include features like TLS.