WIP: Improve config parsing, make --verbose and --config-file global options

Bonus: Generalize and reuse cmd_ssh()

Signed-off-by: InsanePrawn <insane.prawny@gmail.com>
This commit is contained in:
InsanePrawn 2021-09-09 20:23:23 +02:00
parent 4cf608eeb6
commit 144acee10f
12 changed files with 122 additions and 104 deletions

View file

@ -1,13 +1,11 @@
import click
import subprocess
from logger import logging, setup_logging, verbose_option
from logger import logging
from ssh import cmd_ssh
@click.command(name='forwarding')
@verbose_option
def cmd_forwarding(verbose):
setup_logging(verbose)
def cmd_forwarding():
result = subprocess.run([
'sysctl',
'net.ipv4.ip_forward=1',
@ -41,18 +39,7 @@ def cmd_forwarding(verbose):
logging.fatal(f'Failed set iptables rule')
exit(1)
result = subprocess.run([
'ssh',
'-o',
'GlobalKnownHostsFile=/dev/null',
'-o',
'UserKnownHostsFile=/dev/null',
'-o',
'StrictHostKeyChecking=no',
'-t',
'kupfer@172.16.42.1',
'sudo route add default gw 172.16.42.2',
])
result = cmd_ssh(cmd=['sudo route add default gw 172.16.42.2'])
if result.returncode != 0:
logging.fatal(f'Failed to add gateway over ssh')
exit(1)