mirror of
https://github.com/haugene/docker-transmission-openvpn.git
synced 2025-08-07 14:57:20 +02:00
54 lines
1.4 KiB
Python
54 lines
1.4 KiB
Python
import argparse
|
|
import os
|
|
|
|
parser = argparse.ArgumentParser(
|
|
description='Store env vars into runnable .sh file with export statements',
|
|
)
|
|
parser.add_argument(
|
|
'env_var_script_file',
|
|
type=str,
|
|
help='Path to variables-script.sh',
|
|
)
|
|
|
|
args = parser.parse_args()
|
|
|
|
wanted_variables = {
|
|
'OPENVPN_PROVIDER',
|
|
'DEBUG',
|
|
'ENABLE_UFW',
|
|
'PUID',
|
|
'PGID',
|
|
'DROP_DEFAULT_ROUTE',
|
|
'GLOBAL_APPLY_PERMISSIONS',
|
|
'LOG_TO_STDOUT',
|
|
'DISABLE_PORT_UPDATER',
|
|
'TZ',
|
|
'PEER_DNS',
|
|
'PEER_DNS_PIN_ROUTES',
|
|
'CONFIG'
|
|
}
|
|
|
|
variables_to_persist = {}
|
|
|
|
for env_var in os.environ:
|
|
if env_var.startswith('TRANSMISSION_'):
|
|
variables_to_persist[env_var] = os.environ.get(env_var)
|
|
elif env_var.startswith('TR_'):
|
|
variables_to_persist[env_var] = os.environ.get(env_var)
|
|
elif env_var.startswith('WEBPROXY_'):
|
|
variables_to_persist[env_var] = os.environ.get(env_var)
|
|
elif env_var in wanted_variables:
|
|
variables_to_persist[env_var] = os.environ.get(env_var)
|
|
|
|
|
|
# Dump resulting settings to file
|
|
with open(args.env_var_script_file, 'w') as script_file:
|
|
script_file.write("#!/bin/bash\n")
|
|
for var_name, var_value in variables_to_persist.items():
|
|
script_file.write(
|
|
'export {env_var}="{env_var_value}"\n'.format(
|
|
env_var=var_name,
|
|
env_var_value=var_value,
|
|
),
|
|
)
|