This is an automated email from the ASF dual-hosted git repository. michaelsmolina pushed a commit to branch 5.0 in repository https://gitbox.apache.org/repos/asf/superset.git
commit 09a93d2803d832dc2ff0678c02bdae3fcc6bfc63 Author: Dino <[email protected]> AuthorDate: Mon Feb 24 21:58:49 2025 +0100 fix: clickhouse-connect engine SSH parameter (#32348) (cherry picked from commit 8dcae810d4be741675e7657cb837cdead183b69f) --- superset/db_engine_specs/clickhouse.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/superset/db_engine_specs/clickhouse.py b/superset/db_engine_specs/clickhouse.py index 437c0d25c0..0d40acbe67 100644 --- a/superset/db_engine_specs/clickhouse.py +++ b/superset/db_engine_specs/clickhouse.py @@ -219,6 +219,10 @@ class ClickHouseParametersSchema(Schema): values=fields.Raw(), metadata={"description": __("Additional parameters")}, ) + ssh = fields.Boolean( + required=False, + metadata={"description": __("Use an ssh tunnel connection to the database")}, + ) try: @@ -312,8 +316,18 @@ class ClickHouseConnectEngineSpec(BasicParametersMixin, ClickHouseEngineSpec): url_params["query"] = query if not url_params.get("database"): url_params["database"] = "__default__" - url_params.pop("encryption", None) - return str(URL.create(f"{cls.engine}+{cls.default_driver}", **url_params)) + + return str( + URL.create( + f"{cls.engine}+{cls.default_driver}", + username=url_params.get("username"), + password=url_params.get("password"), + host=url_params.get("host"), + port=url_params.get("port"), + database=url_params.get("database"), + query=url_params.get("query"), + ) + ) @classmethod def get_parameters_from_uri(
