diff options
| author | 2026-05-02 01:26:21 +0000 | |
|---|---|---|
| committer | 2026-05-02 01:26:21 +0000 | |
| commit | e4f879fed65a7c1eea15fa54932b554f880054dc (patch) | |
| tree | a1d13be793ef93c3c2cc1e1829417059e2dcf11f | |
| parent | add logging (diff) | |
more verbosity around pending deletions
| -rwxr-xr-x | autopeer_shell.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/autopeer_shell.py b/autopeer_shell.py index 649b24c..de126e4 100755 --- a/autopeer_shell.py +++ b/autopeer_shell.py @@ -87,10 +87,13 @@ class AutopeerShell(cmd.Cmd): def do_ls(self): '''(no args) List your peers''' - curs = DB.execute('SELECT name, endpoint, port FROM peers WHERE asn=:asn', dict(asn=SELECTED_ASN)) + curs = DB.execute('SELECT name, endpoint, port, deleted FROM peers WHERE asn=:asn', dict(asn=SELECTED_ASN)) print(f'Active peerings for {SELECTED_ASN}:') while row := curs.fetchone(): - print(f'- {row[0]} ({row[1]} {row[2]})') + if int(row[3]): + print(f'- {row[0]} (pending deletion)') + else: + print(f'- {row[0]} ({row[1]} {row[2]})') print() def help_addpeer(self): @@ -133,6 +136,13 @@ My Tunnel IPv6LL: {me.ipll} print(f'Error: ipv6 link local must match {IPLL_REGEX}', file=sys.stderr) return + if row := DB.execute('SELECT deleted FROM peers WHERE asn=:asn AND name=:name', dict(asn=SELECTED_ASN, name=name)).fetchone(): + if int(row[0]): + print(f'Error: {name} already exists and is still pending deletion. Try again in 5 minutes.', file=sys.stderr) + else: + print(f'Error: {name} already exists', file=sys.stderr) + return + sp = subprocess.run(['socat', 'stdio', NOTIFY_TO], input=f"[autopeer {socket.gethostname()}] Created new peering {name!r} for AS{SELECTED_ASN} by {USER}", text=True) try: |
