refactor!: use all ruff rules

This commit is contained in:
2026-04-12 16:46:12 +02:00
parent 1a165876fe
commit 5bb9725000
9 changed files with 211 additions and 156 deletions
+36 -21
View File
@@ -1,7 +1,6 @@
import argparse
import dataclasses
import os
import os.path
from . import project
@@ -19,7 +18,7 @@ class Parameters:
debug: bool
@classmethod
def from_namespace(cls, args: argparse.Namespace) -> "Parameters":
def from_namespace(cls, args: argparse.Namespace) -> Parameters:
return Parameters(**vars(args))
@@ -37,37 +36,48 @@ def __get_env_int(var: str, default: int) -> int:
def __add_arg_str(
parser: argparse.ArgumentParser, *flags: str, env_var: str, default: str, help: str
):
parser: argparse.ArgumentParser,
*flags: str,
env_var: str,
default: str,
help_txt: str,
) -> None:
parser.add_argument(
*flags,
metavar=env_var,
default=__get_env_str(env_var, default),
help=f"{help} (default: {default})",
help=f"{help_txt} (default: {default})",
)
def __add_arg_int(
parser: argparse.ArgumentParser, *flags: str, env_var: str, default: int, help: str
):
parser: argparse.ArgumentParser,
*flags: str,
env_var: str,
default: int,
help_txt: str,
) -> None:
parser.add_argument(
*flags,
type=int,
metavar=env_var,
default=__get_env_int(env_var, default),
help=f"{help} (default: {default})",
help=f"{help_txt} (default: {default})",
)
def __add_arg_str_required(
parser: argparse.ArgumentParser, *flags: str, env_var: str, help: str
):
parser: argparse.ArgumentParser,
*flags: str,
env_var: str,
help_txt: str,
) -> None:
parser.add_argument(
*flags,
metavar=env_var,
required=os.getenv(env_var) is None,
default=os.getenv(env_var),
help=f"{help}",
help=help_txt,
)
@@ -78,36 +88,41 @@ def parse_parameters() -> Parameters:
epilog="(Each option can be supplied with equivalent environment variable.)",
)
__add_arg_int(
parser, "-p", "--port", env_var="PORT", default=8080, help="server port"
parser,
"-p",
"--port",
env_var="PORT",
default=8080,
help_txt="server port",
)
__add_arg_str(
parser,
"--host",
env_var="HOST",
default="localhost:8080",
help="server default host",
help_txt="server default host",
)
__add_arg_str(
parser,
"-d",
"--data-dir",
env_var="DATA_DIR",
default=os.path.join(".", "data"),
help="directory where pages are/will be stored",
default="./data",
help_txt="directory where pages are/will be stored",
)
__add_arg_str_required(
parser,
"-t",
"--token",
env_var="TOKEN",
help="secret token for update requests",
help_txt="secret token for update requests",
)
__add_arg_int(
parser,
"--max-size-bytes",
env_var="MAX_SIZE",
default=2_000_000,
help="max size of accepted archives (in bytes)",
help_txt="max size of accepted archives (in bytes)",
)
__add_arg_str(
parser,
@@ -115,21 +130,21 @@ def parse_parameters() -> Parameters:
"--bind",
env_var="BIND",
default="0.0.0.0",
help="server bind address",
help_txt="server bind address",
)
__add_arg_str(
parser,
"--certbot-conf",
env_var="CERTBOT_CONF",
default="/etc/letsencrypt",
help="Certbot config dir",
help_txt="Certbot config dir",
)
__add_arg_str(
parser,
"--certbot-www",
env_var="CERTBOT_WWW",
default=os.path.join(".", "data", ".certbot"),
help="Certbot www dir",
default="./data/.certbot",
help_txt="Certbot www dir",
)
parser.add_argument("--debug", action=argparse.BooleanOptionalAction)
args = parser.parse_args()