Skip to content

Conversation

@mdelapenya
Copy link
Member

  • chore: use new version (v0.36.0) in modules and examples
  • chore: prepare for next minor development cycle (0.37.0)
  • chore: migrate BigQuery to its own package
  • chore: migrate BigTable to its own package
  • chore: migrate Datastore to its own package
  • chore: migrate Firestore to its own package
  • chore: migrate Pubsub to its own package
  • chore: migrate Spanner to its own package
  • chore: use shared options

What does this PR do?

Following the new Azure module, this PR creates subpackages inside the gcloud module, so that each sspecialised container is able to offer a different set of functional options to customise it.

As a result, gcloud exports new packages to interact with the different services of the emulator: bigquery, bigtable, datastore, firestore, pubsub and spanner.

The old containers have been deprecated, so we recommend moving to the new ones as soon as possible.

Because all the services used a shared ProjectID configuration, we created an internal shared package to handle it, creating package and variable aliases in all the service packages, so they are able to reuse the same code, maintaining their package namespace.

The docs has been updated, and the lint and tests pass.

Why is it important?

Improve the maintainability of each service in an independent manner. I.e. the bigquery service uses a WithDataYAML option that must not be used in the other services.

As an example, #3009 adds a new option to the firestore container, which could be added to its own package with ease.

Related issues

@mdelapenya mdelapenya requested a review from a team as a code owner March 28, 2025 09:23
@mdelapenya mdelapenya added the chore Changes that do not impact the existing functionality label Mar 28, 2025
@mdelapenya mdelapenya self-assigned this Mar 28, 2025
@mdelapenya mdelapenya requested a review from stevenh March 28, 2025 09:23
@netlify
Copy link

netlify bot commented Mar 28, 2025

Deploy Preview for testcontainers-go ready!

Name Link
🔨 Latest commit 6e34ad2
🔍 Latest deploy log https://app.netlify.com/sites/testcontainers-go/deploys/67ea5045e996e100085bf80f
😎 Deploy Preview https://deploy-preview-3063--testcontainers-go.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link
Contributor

@stevenh stevenh left a comment

Choose a reason for hiding this comment

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

Looking good, just question on the deprecation chain.

@mdelapenya mdelapenya requested a review from stevenh March 28, 2025 11:01
@mdelapenya
Copy link
Member Author

@stevenh I think this is ready to go 🚀

Copy link
Contributor

@stevenh stevenh left a comment

Choose a reason for hiding this comment

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

LGTM :shipit:

@mdelapenya mdelapenya merged commit 7907986 into testcontainers:main Apr 2, 2025
16 checks passed
@mdelapenya mdelapenya deleted the gcloud-revamp branch April 2, 2025 12:50
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Apr 2, 2025
* main:
  chore(gcloud): deprecate old gcp containers, creating subpackages for them (testcontainers#3063)
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Apr 3, 2025
* main:
  chore: bump golangci-lint to v2 (testcontainers#3082)
  chore(gcloud): deprecate old gcp containers, creating subpackages for them (testcontainers#3063)
  fix(mongodb): replica set initialization & connection handling (testcontainers#2984)
  chore(deps): bump docker/setup-docker-action from 4.2.0 to 4.3.0 (testcontainers#3077)
  chore(deps): bump github/codeql-action from 3.28.12 to 3.28.13 (testcontainers#3078)
  chore(deps): bump tj-actions/changed-files from 45.0.4 to 46.0.3 (testcontainers#3076)
  docs: add dependabot configuration (testcontainers#3074)
  chore(deps): replace `golang.org/x/exp/slices` with stdlib (testcontainers#3075)
  fix(dind): use docker image load (testcontainers#3073)
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Apr 3, 2025
* main:
  fix(mssql): reduce flakiness in tests (testcontainers#3084)
  chore: bump golangci-lint to v2 (testcontainers#3082)
  chore(gcloud): deprecate old gcp containers, creating subpackages for them (testcontainers#3063)
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Apr 3, 2025
* main:
  fix(mssql): reduce flakiness in tests (testcontainers#3084)
  chore: bump golangci-lint to v2 (testcontainers#3082)
  chore(gcloud): deprecate old gcp containers, creating subpackages for them (testcontainers#3063)
  fix(mongodb): replica set initialization & connection handling (testcontainers#2984)
mdelapenya added a commit to mdelapenya/testcontainers-go that referenced this pull request Apr 14, 2025
* main: (91 commits)
  chore(deps): bump github/codeql-action from 3.28.13 to 3.28.15 (testcontainers#3097)
  chore(deps): bump golang.org/x/crypto from 0.31.0 to 0.37.0 (testcontainers#3098)
  feat(aerospike): add Aerospike module (testcontainers#3094)
  security(compose): upgrade github.com/docker/compose/v2 to fix security vulnerability (testcontainers#3095)
  feat: add more functional options to the modules API (testcontainers#3070)
  chore(deps): bump golang.org/x/net in /modules/arangodb (testcontainers#3087)
  feat: add arangodb module (testcontainers#3083)
  chore(deps): bump actions/upload-artifact from 4.6.0 to 4.6.2 (testcontainers#3086)
  chore(deps): bump SonarSource/sonarqube-scan-action from 5.0.0 to 5.1.0 (testcontainers#3085)
  feat: add socat container (testcontainers#3071)
  fix(mssql): reduce flakiness in tests (testcontainers#3084)
  chore: bump golangci-lint to v2 (testcontainers#3082)
  chore(gcloud): deprecate old gcp containers, creating subpackages for them (testcontainers#3063)
  fix(mongodb): replica set initialization & connection handling (testcontainers#2984)
  chore(deps): bump docker/setup-docker-action from 4.2.0 to 4.3.0 (testcontainers#3077)
  chore(deps): bump github/codeql-action from 3.28.12 to 3.28.13 (testcontainers#3078)
  chore(deps): bump tj-actions/changed-files from 45.0.4 to 46.0.3 (testcontainers#3076)
  docs: add dependabot configuration (testcontainers#3074)
  chore(deps): replace `golang.org/x/exp/slices` with stdlib (testcontainers#3075)
  fix(dind): use docker image load (testcontainers#3073)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Changes that do not impact the existing functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants