Skip to content

feat: Support Developer Edition connections - #603

Draft
hessjcg wants to merge 2 commits into
mainfrom
sql-data-service-public
Draft

feat: Support Developer Edition connections#603
hessjcg wants to merge 2 commits into
mainfrom
sql-data-service-public

Conversation

@hessjcg

@hessjcg hessjcg commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

This PR implements AI Developer Edition Connections (SQL Data Service tunneling) for the NodeJS connector.

It introduces a new IP address type SQL_DATA which uses the SqlDataService client from the @google-cloud/sql GAPIC client library to establish a secure tunnel.

Also includes:

  • Integration of SqlDataClient in Connector when SQL_DATA is selected.
  • Unit tests for SqlDataClient with a mock gRPC server.
  • Fix for a deprecation warning in the test server setup.

See GoogleCloudPlatform/cloud-sql-go-connector#1108

@hessjcg
hessjcg force-pushed the sql-data-service-public branch from b7948dc to b2dda0d Compare August 12, 2026 15:21
@hessjcg hessjcg changed the title feat: Implement AI Developer Edition Connections (SQL Data Service tunneling) feat: Support Developer Edition connections Aug 12, 2026
@hessjcg
hessjcg force-pushed the sql-data-service-public branch 9 times, most recently from 9008cd0 to c4960db Compare August 14, 2026 15:08
…nneling)

- Add @grpc/grpc-js and @grpc/proto-loader dependencies to package.json.
- Copy sql_data_service.proto and google/rpc/status.proto to src/proto.
- Update prepare script in package.json to copy proto files to output dist directories recursively.
- Fix infinite recursion bug in scripts/fixup.cjs.
- Add SQL_DATA to IpAddressTypes enum and selectIpAddress fallback logic.
- Implement SqlDataClient in src/sql-data-client.ts to handle gRPC bidirectional streaming connection and local TCP proxy server.
- Integrate SqlDataClient support in Connector.ts with probe verification and fallback.
- Fix TS compiler, linter, and formatting issues.
- Add unit tests for selectIpAddress fallback.

TAG=agy
CONV=e397913b-0b2d-4907-8e3d-cba7ce277bd1

refactor: Remove local protos, use @google-cloud/sql protos in tests, fix deprecation warning, fix lint errors, clean package-lock.json URLs, skip sandbox system test by default, and fix formatting
@hessjcg
hessjcg force-pushed the sql-data-service-public branch from c4960db to 8dc8912 Compare August 14, 2026 15:47
…ptype

- Add test for connecting to AIDE instances via SQL_DATA in pg-connect.{ts,cjs,mjs}
- Update write_e2e_env in build.sh to load POSTGRES_AIDE_* secrets
- Update .github/workflows/tests.yml to fetch and pass POSTGRES_AIDE_* secrets in CI
- Clean up outdated postgres-sqldata.test.ts prototype
- Ensure SqlDataClient and tunnels are cleaned up in connector.close()
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.

1 participant