diff --git a/ennstatus/cli/commands/config.py b/ennstatus/cli/commands/config.py --- a/ennstatus/cli/commands/config.py +++ b/ennstatus/cli/commands/config.py @@ -31,8 +31,9 @@ def server(): @click.argument('name') @click.option('-i', '--ips', prompt='IPs (comma separated)') @click.password_option() +@click.option('--bridgeprogram/--no-bridgeprogram', default=False) @click.pass_obj -def add(obj, name, ips, password): +def add(obj, name, ips, password, bridgeprogram): with obj['config_file'].open() as f: config = json.load(f) @@ -60,6 +61,12 @@ def add(obj, name, ips, password): 'PASSWORD': password } + if bridgeprogram: + try: + config['ENNSTATUS_BRIDGE_PROGRAM'].append(name) + except KeyError: + config['ENNSTATUS_BRIDGE_PROGRAM'] = [name] + with obj['config_file'].open(mode='w', encoding='utf-8') as f: json.dump(config, f, indent=4, sort_keys=True) @@ -78,5 +85,10 @@ def delete(obj, name): except KeyError: raise SystemExit('{} does not exists!'.format(name)) + try: + config['ENNSTATUS_BRIDGE_PROGRAM'].remove(name) + except KeyError: + pass + with obj['config_file'].open(mode='w', encoding='utf-8') as f: json.dump(config, f, indent=4, sort_keys=True)