You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by be...@apache.org on 2021/05/21 22:14:28 UTC
[superset] branch master updated: fix: save non-parameter DBs
(#14759)
This is an automated email from the ASF dual-hosted git repository.
beto pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git
The following commit(s) were added to refs/heads/master by this push:
new dd31853 fix: save non-parameter DBs (#14759)
dd31853 is described below
commit dd318539fa276dd4840e312ee98dbccff03a1159
Author: Beto Dealmeida <ro...@dealmeida.net>
AuthorDate: Fri May 21 15:13:36 2021 -0700
fix: save non-parameter DBs (#14759)
---
superset/databases/schemas.py | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/superset/databases/schemas.py b/superset/databases/schemas.py
index a23659f..e43997d 100644
--- a/superset/databases/schemas.py
+++ b/superset/databases/schemas.py
@@ -28,7 +28,6 @@ from sqlalchemy.engine.url import make_url
from sqlalchemy.exc import ArgumentError
from superset.db_engine_specs import get_engine_specs
-from superset.db_engine_specs.base import BasicParametersMixin
from superset.exceptions import CertificateException, SupersetSecurityException
from superset.models.core import ConfigurationMethod, PASSWORD_MASK
from superset.security.analytics_db_safety import check_sqlalchemy_uri
@@ -264,18 +263,12 @@ class DatabaseParametersSchemaMixin:
[_('Engine "%(engine)s" is not a valid engine.', engine=engine,)]
)
engine_spec = engine_specs[engine]
- if not issubclass(engine_spec, BasicParametersMixin):
- raise ValidationError(
- [
- _(
- 'Engine spec "%(engine_spec)s" does not support '
- "being configured via individual parameters.",
- engine_spec=engine_spec.__name__,
- )
- ]
+ if hasattr(engine_spec, "build_sqlalchemy_uri"):
+ data[
+ "sqlalchemy_uri"
+ ] = engine_spec.build_sqlalchemy_uri( # type: ignore
+ parameters
)
-
- data["sqlalchemy_uri"] = engine_spec.build_sqlalchemy_uri(parameters)
return data