Skip to content

fix(connectors): show BigQuery in Add Connection dropdown - #701

Open
larsgeorge-db wants to merge 1 commit into
mainfrom
cat-conn-issue
Open

fix(connectors): show BigQuery in Add Connection dropdown#701
larsgeorge-db wants to merge 1 commit into
mainfrom
cat-conn-issue

Conversation

@larsgeorge-db

Copy link
Copy Markdown
Collaborator

Summary

The "Add Connection" dropdown was missing the fully-implemented BigQuery connector.

Root cause: ConnectionsManager.list_connector_types() gated the dropdown on each connector's runtime is_available property. BigQuery's is_available performs a live client check that fails until a project/credentials are configured — which is always the case at startup — so BigQuery was filtered out of the very dialog meant to configure it.

Fix: introduce a static is_selectable class flag (implementation status, distinct from runtime availability) and gate the dropdown on that instead. Stub/mockup connectors (Snowflake, PowerBI, Kafka) set is_selectable = False and stay hidden.

Changes

  • connectors/base.py — add is_selectable: bool = True on AssetConnector, documented vs. runtime is_available.
  • connectors/{snowflake,powerbi,kafka}.pyis_selectable = False (stubs stay hidden).
  • controller/connections_manager.py — filter on is_selectable instead of is_available; updated docstring.
  • tests/test_connections_manager_connector_types.py — regression tests (BigQuery listed despite is_available=False, default databricks always listed, stubs hidden, metadata populated).

Notes

  • No frontend change needed: BigQuery config fields already exist in CONNECTOR_CONFIG_FIELDS, and the existing !== 'databricks' filter correctly keeps the system Unity Catalog connection out of the create flow.
  • The built-in Databricks/UC connection is intentionally untouched. A dedicated external Unity Catalog connector (OAuth M2M) is scoped as a follow-up: feat(connectors): dedicated external Unity Catalog connector (OAuth M2M) #683.

Testing

pytest tests/test_connections_manager_connector_types.py — 4 passed. Verified against the real registry that bigquery now surfaces while the three stubs remain hidden.

Closes #683 is not intended — that is tracked as a separate follow-up.

The connector type dropdown was gated on each connector's runtime
is_available property. BigQuery's is_available does a live client check
that fails until a project/credentials are configured, which is always
true at startup, so the fully-implemented BigQuery connector was
filtered out of the dialog that is meant to configure it.

Introduce a static is_selectable class flag (implementation status,
distinct from runtime availability) and gate list_connector_types() on
it. Stub connectors (Snowflake, PowerBI, Kafka) set is_selectable=False
and stay hidden. Adds regression tests.

Follow-up for a dedicated external Unity Catalog connector (OAuth M2M):
#683
@larsgeorge-db
larsgeorge-db requested a review from a team August 12, 2026 10:32
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