From 1b4a5fdcc8b87c6dd8fe441a8d68eacdd00e9f2b Mon Sep 17 00:00:00 2001 From: Nico Vermaas <vermaas@astron.nl> Date: Mon, 8 Aug 2022 14:34:25 +0200 Subject: [PATCH] add extra --configuration parameter to the file with tunnel and ldvadmin credentials --- ldv_migrate/ldv_migrate/connection/config.py | 4 ++-- .../ldv_migrate/connection/retrieve_db_connection.py | 4 ++-- ldv_migrate/ldv_migrate/migrate_ldvadmin_to_ldvspec.py | 6 ++++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/ldv_migrate/ldv_migrate/connection/config.py b/ldv_migrate/ldv_migrate/connection/config.py index aa51743..36fac48 100644 --- a/ldv_migrate/ldv_migrate/connection/config.py +++ b/ldv_migrate/ldv_migrate/connection/config.py @@ -2,8 +2,8 @@ from configparser import ConfigParser import os -def read_config(section, filename='database.cfg'): - full_filename = os.path.join(os.path.dirname(__file__), filename) +def read_config(configuration_file, section): + full_filename = os.path.join(os.path.dirname(__file__), configuration_file) parser = ConfigParser() read_result = parser.read(full_filename) # If file not found then parser returns just an empty list it does not raise an Exception! diff --git a/ldv_migrate/ldv_migrate/connection/retrieve_db_connection.py b/ldv_migrate/ldv_migrate/connection/retrieve_db_connection.py index 21f5684..52f1184 100644 --- a/ldv_migrate/ldv_migrate/connection/retrieve_db_connection.py +++ b/ldv_migrate/ldv_migrate/connection/retrieve_db_connection.py @@ -8,13 +8,13 @@ import os from ldv_migrate.connection.config import read_config -def connect_postgresql(section): +def connect_postgresql(configuration_file, section): """ Connect to the PostgreSQL database server """ conn = None tunnel = None try: # read connection parameters - configuration = read_config(section=section) + configuration = read_config(configuration_file=configuration_file, section=section) logging.info('Connecting PostgreSQL database %s', configuration.get('database', 'no database name given')) diff --git a/ldv_migrate/ldv_migrate/migrate_ldvadmin_to_ldvspec.py b/ldv_migrate/ldv_migrate/migrate_ldvadmin_to_ldvspec.py index e6bee1b..deb12a9 100644 --- a/ldv_migrate/ldv_migrate/migrate_ldvadmin_to_ldvspec.py +++ b/ldv_migrate/ldv_migrate/migrate_ldvadmin_to_ldvspec.py @@ -73,7 +73,9 @@ def main(): parser.add_argument("-t", "--token", default="ad9b37a24380948601257f9c1f889b07a00ac81e", help="Token to access the REST API of ldvspec", action="store") parser.add_argument("--host", nargs="?", default='dev', - help="The ldv-spec-db host. Presets are 'dev', 'test', 'prod', otherwise give a full url like https://atdb.astron.nl/atdb") + help="The ldv-spec-db host.") + parser.add_argument("--configuration", default='~/shared/ldv_migrate.cfg', + help="Configuration file containing tunnel and ldvadmin database credentials") parser.add_argument("-s", "--section", default='postgresql-ldv', help="Add the configuration's section from the database.cfg.") # Have payload of more millions will most likely not work @@ -113,7 +115,7 @@ def main(): .format(limit_str) # Create connection using ssh tunnel with the ldvadmin database - conn, tunnel = connector.connect_postgresql(args.section) + conn, tunnel = connector.connect_postgresql(args.configuration, args.section) count_raw_dps = execute_query(conn, query_count_all_raw_dataproducts)[0][0] count_pl_dps = execute_query(conn, query_count_all_pipeline_dataproducts)[0][0] logging.info(f"There are {count_raw_dps} raw dataproducts and {count_pl_dps} pipeline dataproduct in the ldvadmin.astrowise table!!") -- GitLab