CXH-2381: document Db2 setup, correct the supported-database list, and fix the help link - #150
Conversation
Add a "Writing a Db2 spec" section to docs/db2.md (wrap every column reference in string(), alias columns to double-quoted lowercase), notes that account provisioning is unavailable and group principals can't be represented, and a "Running the Db2 tests" section with make test-db2 / make vet-db2 and the raw CGO_CFLAGS/CGO_LDFLAGS + library-path invocation. Add test-db2 and vet-db2 Makefile targets scoping the CGO flags to the recipe. Reconcile the engine lists (README, docs/docs-info.md, test/README.md) so they agree with the dispatch switch in pkg/database/database.go, and drop the unfilled template sentence from docs-info.md. Point the connector help URL at the live docs page (/docs/baton/baton-sql); the old /docs/baton/sql returns 404. Bump the ci.yaml sync-test action to @v4 and gitignore the root baton-sql build output.
Connector PR Review: CXH-2381: document Db2 setup, correct the supported-database list, and fix the help linkBlocking Issues: 0 | Suggestions: 0 | Threads Resolved: 0 Review SummaryThe new commit Security IssuesNone found. Correctness IssuesNone found. SuggestionsNone new — the three prior suggestions listed above remain open as inline comments. |
…h check Add WordPress (MySQL-based) back to the README engine list so it agrees with docs/docs-info.md, which still ships it. Pass bad-credentials: DB_PASSWORD=invalid to sync-test@v4 so the new auth-error check actually runs; without it the step skips (DB_PASSWORD is not a BATON_* var, so nothing gets invalidated).
| baton-entitlement: 'role:admin:member' | ||
| baton-principal: john.smith | ||
| baton-principal-type: user | ||
| bad-credentials: DB_PASSWORD=invalid |
There was a problem hiding this comment.
🟡 Suggestion: This gets auth-error.sh past the "no credential env vars found" skip, but the check still won't assert anything. cmd/baton-sql/main.go uses the deprecated configSdk.DefineConfiguration + os.Exit(1) pattern rather than config.RunConnector/exit.LogExit, so an invalid DB_PASSWORD exits 1 — which auth-error.sh treats as "not migrated yet, skipping" and passes. Switching main.go to config.RunConnector (available in baton-sdk v0.28.0) would surface gRPC Unauthenticated/PermissionDenied and make this input actually exercise the check.
true
- db2.md: reframe the "Writing a Db2 spec" intro. The string()-wrapping and lowercase-alias patterns are not Db2-only; Oracle folds unquoted identifiers and Redshift needs string() in CEL concatenations. Db2 just needs both everywhere. - db2.md: correct the group-provisioning note. grantableTo is spec-driven and is not filtered by engine, so a spec that declares group still advertises it as grantable; the group grant is dropped at ingest, not at grantableTo. Split the two into separate statements. - docs-info.md: bring the "Example DSN formats" and "Configuration Examples" lists in line with the supported-engines list (SAP HANA, Vertica, Amazon Redshift, IBM DB2). - README.md: drop the hand-maintained engine enumeration in Key Features that had drifted from the Supported Database Engines list on WordPress; link to that list instead.
Documents how to set up the IBM Db2 database engine for the SQL connector, corrects the list of supported databases so it matches what the connector actually supports, and fixes the connector's help link, which pointed at a dead page.