From 74974d7981b84837b67f1dc64ee0973eeef77e21 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Fri, 20 Oct 2023 13:31:15 -0400 Subject: [PATCH] dont write dupe idents w different drivers in the idents file Change-Id: I474b40327fcc40a8a6eb4c537a4b80f0eea37162 --- lib/sqlalchemy/testing/plugin/plugin_base.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/sqlalchemy/testing/plugin/plugin_base.py b/lib/sqlalchemy/testing/plugin/plugin_base.py index 563d8f68c2..585f6bac3c 100644 --- a/lib/sqlalchemy/testing/plugin/plugin_base.py +++ b/lib/sqlalchemy/testing/plugin/plugin_base.py @@ -420,6 +420,7 @@ def _engine_uri(options, file_config): from sqlalchemy import testing from sqlalchemy.testing import config from sqlalchemy.testing import provision + from sqlalchemy.engine import url as sa_url if options.dburi: db_urls = list(options.dburi) @@ -444,18 +445,19 @@ def _engine_uri(options, file_config): config._current = None - expanded_urls = list(provision.generate_db_urls(db_urls, extra_drivers)) - - for db_url in expanded_urls: - log.info("Adding database URL: %s", db_url) - - if options.write_idents and provision.FOLLOWER_IDENT: + if options.write_idents and provision.FOLLOWER_IDENT: + for db_url in [sa_url.make_url(db_url) for db_url in db_urls]: with open(options.write_idents, "a") as file_: file_.write( f"{provision.FOLLOWER_IDENT} " f"{db_url.render_as_string(hide_password=False)}\n" ) + expanded_urls = list(provision.generate_db_urls(db_urls, extra_drivers)) + + for db_url in expanded_urls: + log.info("Adding database URL: %s", db_url) + cfg = provision.setup_config( db_url, options, file_config, provision.FOLLOWER_IDENT ) -- 2.39.5