Skip to content

draft: Feat/play ClickHouse template#8738

Closed
royendo wants to merge 105 commits intomainfrom
feat/play-clickhouse-template
Closed

draft: Feat/play ClickHouse template#8738
royendo wants to merge 105 commits intomainfrom
feat/play-clickhouse-template

Conversation

@royendo
Copy link
Copy Markdown
Contributor

@royendo royendo commented Jan 31, 2026

This can possibly open the door for other templating connectors/sources.
requested by Mike: https://rilldata.slack.com/archives/C07710F6932/p1769619124383569

Screenshot 2026-02-02 at 17 47 30

Checklist:

  • Covered by tests
  • Ran it and it works as intended
  • Reviewed the diff before requesting a review
  • Checked for unhandled edge cases
  • Linked the issues it closes
  • Checked if the docs need to be updated. If so, create a separate Linear DOCS issue
  • Intend to cherry-pick into the release branch
  • I'm proud of this work!

lovincyrus and others added 27 commits January 29, 2026 10:43
Move form creation out of AddDataFormManager into a dedicated
createConnectorForm() factory function in FormValidation.ts.

The manager now accepts form stores as parameters instead of
creating them, making it a pure orchestration layer that handles
step flow, submission routing, and validation coordination.

This separation allows form creation to be reused and tested
independently of the orchestration logic.
Remove properties and filteredParamsProperties from AddDataFormManager
as they were computed but never used - computeYamlPreview retrieves
schema fields directly when needed.

This completes the simplification of AddDataFormManager to a thin
orchestration layer that derives all behavior from JSON schemas.
When S3 sources are rewritten to DuckDB, the model YAML was incorrectly
using the original connector instance name (s3) instead of duckdb.
This caused the backend to expect a 'path' property but receive 'sql',
resulting in "missing property \`path\`" errors.

Now when a connector is rewritten to DuckDB, the YAML connector field
uses duckdb, while credential access is maintained via
create_secrets_from_connectors.
When S3 sources are rewritten to DuckDB, the model YAML was incorrectly
using the original connector instance name (s3) instead of duckdb.
This caused the backend to expect a 'path' property but receive 'sql',
resulting in "missing property \`path\`" errors.

Now when a connector is rewritten to DuckDB, the YAML connector field
uses duckdb, while credential access is maintained via
create_secrets_from_connectors.
Enable users to choose between rill-managed infrastructure and self-hosted ClickHouse Cloud connections, mirroring the same pattern used in the standard ClickHouse connector.
…extracted variables

- Remove duplicate JSDoc comment on computeYamlPreview
- Extract explanatory variables in getPrimaryButtonLabel (isOnConnectorStep, isOnSourceOrExplorerStep)
- Add comments clarifying each button label branch
- Extract three key variables in makeOnUpdate for clarity:
  - isOnSourceOrExplorerStep: reduces conditional duplication
  - isOnConnectorStep: makes connector step checks explicit
  - isPublicAuth: clarifies authentication method checks
- Extract submitConnectorStepAndAdvance private method to reduce nesting
- Add section comments throughout makeOnUpdate explaining validation flow and submission logic
* identityhash

* decoded from hex first

* Update types.d.ts

* Review

---------

Co-authored-by: Benjamin Egelund-Müller <b@egelund-muller.com>
@royendo
Copy link
Copy Markdown
Contributor Author

royendo commented Feb 3, 2026

re-opening in new PR

@royendo royendo closed this Feb 3, 2026
@royendo royendo deleted the feat/play-clickhouse-template branch February 3, 2026 19:01
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.

2 participants