fix: allow args before/after command

This commit is contained in:
2026-04-20 21:25:51 +02:00
parent e7e8c9f141
commit 1b9eed87b9
3 changed files with 29 additions and 16 deletions
+25 -9
View File
@@ -75,6 +75,22 @@ def __add_arg_int(
)
def __add_arg_bool(
parser: argparse.ArgumentParser,
*flags: str,
default: bool,
help_txt: str,
dest: str | None = None,
) -> None:
parser.add_argument(
*flags,
action=argparse.BooleanOptionalAction,
help=f"{help_txt} (default: {str(default).lower()})",
default=default,
dest=dest,
)
def parse_parameters(args: typing.Sequence[str]) -> Parameters:
default_values = Parameters()
parser = argparse.ArgumentParser(
@@ -94,11 +110,11 @@ def parse_parameters(args: typing.Sequence[str]) -> Parameters:
default=default_values.data_dir,
help_txt="directory where pages are/will be stored",
)
parser.add_argument(
__add_arg_bool(
parser,
"--certificates",
action=argparse.BooleanOptionalAction,
help="Handle certificates (default: true)",
default=default_values.with_certificates,
help_txt="Handle certificates",
dest="with_certificates",
)
__add_arg_str(
@@ -108,11 +124,11 @@ def parse_parameters(args: typing.Sequence[str]) -> Parameters:
default=default_values.self_signed_path,
help_txt="Self-signed certificates dir",
)
parser.add_argument(
__add_arg_bool(
parser,
"--certbot",
action=argparse.BooleanOptionalAction,
help="Use Certbot (default: true)",
default=default_values.with_certbot,
help_txt="Use Certbot",
dest="with_certbot",
)
__add_arg_str(
@@ -150,11 +166,11 @@ def parse_parameters(args: typing.Sequence[str]) -> Parameters:
default=default_values.https_port,
help_txt="server https port",
)
parser.add_argument(
__add_arg_bool(
parser,
"--https",
action=argparse.BooleanOptionalAction,
help="Use https (implies --certificates) (default: true)",
default=default_values.https,
help_txt="Use https (implies --certificates)",
)
__add_arg_str(
parser,