replace calls to sys for arguments with argparse

This commit is contained in:
Thomas Borgen
2020-08-09 23:12:17 +02:00
parent 83b6e26446
commit d46fd7631c

View File

@@ -1,17 +1,37 @@
import argparse
import json
import os import os
import sys import sys
import json
# Verify script arguments parser = argparse.ArgumentParser(
if len(sys.argv) != 3: description='Updates output settings file based on a default file',
sys.exit('Invalid number of arguments. Usage:\n updateSettings.py defaultSettingsFile.json outputSettingsFile.json') )
default_settings = sys.argv[1] parser.add_argument(
transmission_settings = sys.argv[2] 'input_file',
type=str,
help='Path to default settings json file',
)
parser.add_argument(
'output_file',
type=str,
help='Path to output settings json file',
)
args = parser.parse_args()
default_settings = args.input_file
transmission_settings = args.output_file
# Fail if default settings file doesnt exist.
if not os.path.isfile(default_settings): if not os.path.isfile(default_settings):
sys.exit('Invalid arguments, default settings file does not exist') sys.exit(
'Invalid arguments, default settings file{file} does not exist'.format(
file=default_settings,
),
)
# Define which file to base the config on # Define which file to base the config on
if os.path.isfile(transmission_settings): if os.path.isfile(transmission_settings):