PGH003: fix
This commit is contained in:
@@ -15,6 +15,10 @@ from clan_lib.nix import nix_eval
|
||||
from clan_lib.persist.inventory_store import InventoryStore
|
||||
from clan_lib.templates import list_templates
|
||||
|
||||
from .secrets.groups import list_groups
|
||||
from .secrets.secrets import list_secrets
|
||||
from .secrets.users import list_users
|
||||
|
||||
"""
|
||||
This module provides dynamic completions.
|
||||
The completions should feel fast.
|
||||
|
||||
@@ -86,7 +86,7 @@ def flash_command(args: argparse.Namespace) -> None:
|
||||
|
||||
run_machine_flash(
|
||||
machine=machine,
|
||||
mode=opts.mode, # type: ignore
|
||||
mode=opts.mode, # type: ignore[arg-type]
|
||||
disks=opts.disks,
|
||||
system_config=opts.system_config,
|
||||
dry_run=opts.dry_run,
|
||||
|
||||
@@ -23,8 +23,7 @@ def hyperlink_same_text_and_url(url: str) -> str:
|
||||
|
||||
|
||||
def help_hyperlink(description: str, url: str) -> str:
|
||||
"""Keep the description and the link the same to support legacy terminals.
|
||||
"""
|
||||
"""Keep the description and the link the same to support legacy terminals."""
|
||||
if sys.argv[0].__contains__("docs.py"):
|
||||
return docs_hyperlink(description, url)
|
||||
|
||||
|
||||
@@ -6,13 +6,6 @@ from pathlib import Path
|
||||
from clan_lib.errors import ClanError
|
||||
from clan_lib.git import commit_files
|
||||
|
||||
from clan_cli.completions import (
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
complete_machines,
|
||||
complete_secrets,
|
||||
complete_users,
|
||||
)
|
||||
from clan_cli.machines.types import machine_name_type, validate_hostname
|
||||
from clan_cli.secrets.sops import load_age_plugins
|
||||
|
||||
@@ -238,6 +231,11 @@ def remove_machine_command(args: argparse.Namespace) -> None:
|
||||
|
||||
|
||||
def add_group_argument(parser: argparse.ArgumentParser) -> None:
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
)
|
||||
|
||||
group_action = parser.add_argument(
|
||||
"group",
|
||||
help="the name of the secret",
|
||||
@@ -336,6 +334,11 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machines to add",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_machine_action, complete_machines)
|
||||
add_machine_parser.set_defaults(func=add_machine_command)
|
||||
|
||||
@@ -350,6 +353,11 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machines to remove",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_machine_action, complete_machines)
|
||||
remove_machine_parser.set_defaults(func=remove_machine_command)
|
||||
|
||||
@@ -361,6 +369,11 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user to add",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_user_action, complete_users)
|
||||
add_user_parser.set_defaults(func=add_user_command)
|
||||
|
||||
@@ -375,6 +388,11 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user to remove",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_user_action, complete_users)
|
||||
remove_user_parser.set_defaults(func=remove_user_command)
|
||||
|
||||
@@ -389,6 +407,11 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the secret",
|
||||
type=secret_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_secrets,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_secret_action, complete_secrets)
|
||||
add_secret_parser.set_defaults(func=add_secret_command)
|
||||
|
||||
@@ -403,5 +426,10 @@ def register_groups_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the secret",
|
||||
type=secret_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_secrets,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_secret_action, complete_secrets)
|
||||
remove_secret_parser.set_defaults(func=remove_secret_command)
|
||||
|
||||
@@ -7,12 +7,6 @@ from clan_lib.cmd import RunOpts, run
|
||||
from clan_lib.errors import ClanError
|
||||
from clan_lib.nix import nix_shell
|
||||
|
||||
from clan_cli.completions import (
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
complete_machines,
|
||||
complete_users,
|
||||
)
|
||||
from clan_cli.secrets.sops import load_age_plugins
|
||||
|
||||
from .secrets import encrypt_secret, sops_secrets_folder
|
||||
@@ -75,6 +69,11 @@ def register_import_sops_parser(parser: argparse.ArgumentParser) -> None:
|
||||
default=[],
|
||||
help="the group to import the secrets to",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
)
|
||||
|
||||
add_dynamic_completer(group_action, complete_groups)
|
||||
machine_action = parser.add_argument(
|
||||
"--machine",
|
||||
@@ -83,6 +82,11 @@ def register_import_sops_parser(parser: argparse.ArgumentParser) -> None:
|
||||
default=[],
|
||||
help="the machine to import the secrets to",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(machine_action, complete_machines)
|
||||
user_action = parser.add_argument(
|
||||
"--user",
|
||||
@@ -91,6 +95,11 @@ def register_import_sops_parser(parser: argparse.ArgumentParser) -> None:
|
||||
default=[],
|
||||
help="the user to import the secrets to",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(user_action, complete_users)
|
||||
parser.add_argument(
|
||||
"--prefix",
|
||||
|
||||
@@ -4,11 +4,6 @@ from pathlib import Path
|
||||
from clan_lib.flake import require_flake
|
||||
from clan_lib.git import commit_files
|
||||
|
||||
from clan_cli.completions import (
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
complete_secrets,
|
||||
)
|
||||
from clan_cli.machines.types import machine_name_type, validate_hostname
|
||||
|
||||
from . import secrets, sops
|
||||
@@ -177,6 +172,11 @@ def register_machines_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machine",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_machine_action, complete_machines)
|
||||
add_parser.add_argument(
|
||||
"key",
|
||||
@@ -192,6 +192,11 @@ def register_machines_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machine",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(get_machine_parser, complete_machines)
|
||||
get_parser.set_defaults(func=get_command)
|
||||
|
||||
@@ -202,6 +207,11 @@ def register_machines_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machine",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_machine_parser, complete_machines)
|
||||
remove_parser.set_defaults(func=remove_command)
|
||||
|
||||
@@ -215,6 +225,12 @@ def register_machines_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machine",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
complete_secrets,
|
||||
)
|
||||
|
||||
add_dynamic_completer(machine_add_secret_parser, complete_machines)
|
||||
add_secret_action = add_secret_parser.add_argument(
|
||||
"secret",
|
||||
@@ -234,6 +250,12 @@ def register_machines_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the machine",
|
||||
type=machine_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
complete_secrets,
|
||||
)
|
||||
|
||||
add_dynamic_completer(machine_remove_parser, complete_machines)
|
||||
remove_secret_action = remove_secret_parser.add_argument(
|
||||
"secret",
|
||||
|
||||
@@ -12,14 +12,6 @@ from typing import IO
|
||||
from clan_lib.errors import ClanError
|
||||
from clan_lib.git import commit_files
|
||||
|
||||
from clan_cli.completions import (
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
complete_machines,
|
||||
complete_secrets,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
from . import sops
|
||||
from .folders import (
|
||||
list_objects,
|
||||
@@ -258,6 +250,11 @@ def add_secret_argument(parser: argparse.ArgumentParser, autocomplete: bool) ->
|
||||
type=secret_name_type,
|
||||
)
|
||||
if autocomplete:
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_secrets,
|
||||
)
|
||||
|
||||
add_dynamic_completer(secrets_parser, complete_secrets)
|
||||
|
||||
|
||||
@@ -465,6 +462,11 @@ def register_secrets_parser(subparser: argparse._SubParsersAction) -> None:
|
||||
default=[],
|
||||
help="the group to import the secrets to (can be repeated)",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_groups,
|
||||
)
|
||||
|
||||
add_dynamic_completer(set_group_action, complete_groups)
|
||||
machine_parser = parser_set.add_argument(
|
||||
"--machine",
|
||||
@@ -473,6 +475,11 @@ def register_secrets_parser(subparser: argparse._SubParsersAction) -> None:
|
||||
default=[],
|
||||
help="the machine to import the secrets to (can be repeated)",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_machines,
|
||||
)
|
||||
|
||||
add_dynamic_completer(machine_parser, complete_machines)
|
||||
set_user_action = parser_set.add_argument(
|
||||
"--user",
|
||||
@@ -481,6 +488,11 @@ def register_secrets_parser(subparser: argparse._SubParsersAction) -> None:
|
||||
default=[],
|
||||
help="the user to import the secrets to (can be repeated)",
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(set_user_action, complete_users)
|
||||
parser_set.add_argument(
|
||||
"-e",
|
||||
|
||||
@@ -9,8 +9,6 @@ from clan_lib.errors import ClanError
|
||||
from clan_lib.flake import require_flake
|
||||
from clan_lib.git import commit_files
|
||||
|
||||
from clan_cli.completions import add_dynamic_completer, complete_secrets, complete_users
|
||||
|
||||
from . import groups, secrets, sops
|
||||
from .filters import get_secrets_filter_for_user
|
||||
from .folders import (
|
||||
@@ -283,6 +281,11 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(get_user_action, complete_users)
|
||||
get_parser.set_defaults(func=get_command)
|
||||
|
||||
@@ -292,6 +295,11 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_user_action, complete_users)
|
||||
remove_parser.set_defaults(func=remove_command)
|
||||
|
||||
@@ -304,6 +312,12 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_secrets,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_secret_user_action, complete_users)
|
||||
add_secrets_action = add_secret_parser.add_argument(
|
||||
"secret",
|
||||
@@ -322,6 +336,12 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the group",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_secrets,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_secret_user_action, complete_users)
|
||||
remove_secrets_action = remove_secret_parser.add_argument(
|
||||
"secret",
|
||||
@@ -340,6 +360,11 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(add_key_user_action, complete_users)
|
||||
_add_key_flags(add_key_parser)
|
||||
add_key_parser.set_defaults(func=add_key_command)
|
||||
@@ -353,6 +378,11 @@ def register_users_parser(parser: argparse.ArgumentParser) -> None:
|
||||
help="the name of the user",
|
||||
type=user_name_type,
|
||||
)
|
||||
from clan_cli.completions import ( # noqa: PLC0415
|
||||
add_dynamic_completer,
|
||||
complete_users,
|
||||
)
|
||||
|
||||
add_dynamic_completer(remove_key_user_action, complete_users)
|
||||
_add_key_flags(remove_key_parser)
|
||||
remove_key_parser.set_defaults(func=remove_key_command)
|
||||
|
||||
@@ -20,7 +20,7 @@ def list_command(args: argparse.Namespace) -> None:
|
||||
builtin_template_set: TemplateClanType | None = templates.builtins.get(
|
||||
template_type,
|
||||
None,
|
||||
) # type: ignore
|
||||
) # type: ignore[assignment]
|
||||
if not builtin_template_set:
|
||||
continue
|
||||
|
||||
@@ -41,7 +41,7 @@ def list_command(args: argparse.Namespace) -> None:
|
||||
]
|
||||
last_idx = len(visible_inputs) - 1
|
||||
for input_idx, (input_name, input_templates) in enumerate(visible_inputs):
|
||||
custom_templates: TemplateClanType = input_templates[template_type] # type: ignore
|
||||
custom_templates: TemplateClanType = input_templates[template_type] # type: ignore[literal-required]
|
||||
is_last_input = input_idx == last_idx
|
||||
prefix = "│" if not is_last_input else " "
|
||||
if not is_last_input:
|
||||
|
||||
Reference in New Issue
Block a user