From bd4f4dab8111aa621319f53756e0c423df63c0de Mon Sep 17 00:00:00 2001 From: Colin Date: Fri, 12 Jan 2024 15:42:12 +0000 Subject: [PATCH] servo: clightning-sane: factor out a subcommands interface --- .../clightning-sane/clightning-sane | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/hosts/by-name/servo/services/cryptocurrencies/clightning-sane/clightning-sane b/hosts/by-name/servo/services/cryptocurrencies/clightning-sane/clightning-sane index c198edd2..79686fd8 100755 --- a/hosts/by-name/servo/services/cryptocurrencies/clightning-sane/clightning-sane +++ b/hosts/by-name/servo/services/cryptocurrencies/clightning-sane/clightning-sane @@ -296,11 +296,15 @@ def main(): logger.setLevel(logging.INFO) parser = argparse.ArgumentParser(description="rebalance lightning channel balances") - parser.add_argument("out", help="peer id to send tx through") - parser.add_argument("in_", help="peer id to receive tx through") parser.add_argument("--verbose", action="store_true", help="more logging") - parser.add_argument("--min-msat", default="999", help="min to rebalance") - parser.add_argument("--max-msat", default="1000000", help="max to rebalance") + subparsers = parser.add_subparsers(help="action") + + loop_parser = subparsers.add_parser("loop") + loop_parser.set_defaults(action="loop") + loop_parser.add_argument("out", help="peer id to send tx through") + loop_parser.add_argument("in_", help="peer id to receive tx through") + loop_parser.add_argument("--min-msat", default="999", help="min to rebalance") + loop_parser.add_argument("--max-msat", default="1000000", help="max to rebalance") args = parser.parse_args() @@ -310,11 +314,12 @@ def main(): rpc = LightningRpc(RPC_FILE) balancer = Balancer(rpc) - bounds = TxBounds( - min_msat = int(args.min_msat), - max_msat = int(args.max_msat), - ) - balancer.balance_once_with_retries(args.out, args.in_, bounds) + if args.action == "loop": + bounds = TxBounds( + min_msat = int(args.min_msat), + max_msat = int(args.max_msat), + ) + balancer.balance_once_with_retries(args.out, args.in_, bounds) if __name__ == '__main__': main()