in notebooks/postgresql2bq/PostgreSqlToBigQuery_parameterize_script.py [0:0]
def parse_args(args: Optional[Sequence[str]] = None) -> Dict[str, Any]:
parser = argparse.ArgumentParser()
parser.add_argument(
f'--{constants.POSTGRESQL_HOST_ARG}',
dest=constants.POSTGRESQL_HOST,
required=True,
help='POSTGRESQL host or IP address'
)
parser.add_argument(
f'--{constants.POSTGRESQL_PORT_ARG}',
dest=constants.POSTGRESQL_PORT,
default="3306",
required=False,
help='POSTGRESQL port (Default: 3306)'
)
parser.add_argument(
f'--{constants.POSTGRESQL_USERNAME_ARG}',
dest=constants.POSTGRESQL_USERNAME,
required=True,
help='POSTGRESQL username'
)
parser.add_argument(
f'--{constants.POSTGRESQL_PASSWORD_ARG}',
dest=constants.POSTGRESQL_PASSWORD,
required=True,
help='POSTGRESQL password'
)
parser.add_argument(
f'--{constants.POSTGRESQL_DATABASE_ARG}',
dest=constants.POSTGRESQL_DATABASE,
required=True,
help='POSTGRESQL database name'
)
parser.add_argument(
f'--{constants.POSTGRESQL_TABLE_LIST_ARG}',
dest=constants.POSTGRESQL_TABLE_LIST,
required=False,
default='',
help='POSTGRESQL table list to migrate. '
'Leave empty for migrating complete database else provide tables as \"table1,table2\"'
)
parser.add_argument(
f'--{constants.POSTGRESQL_SCHEMA_LIST_ARG}',
dest=constants.POSTGRESQL_SCHEMA_LIST,
required=False,
default='',
help='POSTGRESQL schema list to migrate. '
'Only Migrate tables associated with the provided schema list. Provide schema as \"schema1,schema2\" '
)
parser.add_argument(
f'--{constants. BIGQUERY_DATASET_ARG}',
dest=constants. BIGQUERY_DATASET,
required=True,
help=' BIGQUERY dataset name'
)
parser.add_argument(
f'--{constants. BIGQUERY_MODE_ARG}',
dest=constants. BIGQUERY_MODE,
default='overwrite',
required=True,
help='output write mode (Default: overwrite)'
)
parser.add_argument(
f'--{constants.MAX_PARALLELISM_ARG}',
dest=constants.MAX_PARALLELISM,
type=int,
default=5,
required=False,
help='Maximum number of tables that will migrated parallelly (Default: 5)'
)
parser = get_common_args(parser)
known_args: argparse.Namespace
known_args, _ = parser.parse_known_args()
return vars(known_args)