Merge pull request 'clan-cli: clan_cli.cmd -> clan_lib.cmd' (#3705) from clan_lib_cmd into main

Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3705
This commit is contained in:
lassulus
2025-05-19 17:19:55 +00:00
41 changed files with 44 additions and 52 deletions

View File

@@ -2,9 +2,9 @@ import argparse
import json
from dataclasses import dataclass
from clan_lib.cmd import Log, RunOpts
from clan_lib.errors import ClanError
from clan_cli.cmd import Log, RunOpts
from clan_cli.completions import (
add_dynamic_completer,
complete_backup_providers_for_machine,

View File

@@ -1,8 +1,8 @@
import argparse
from clan_lib.cmd import Log, RunOpts
from clan_lib.errors import ClanError
from clan_cli.cmd import Log, RunOpts
from clan_cli.completions import (
add_dynamic_completer,
complete_backup_providers_for_machine,

View File

@@ -2,10 +2,9 @@ import os
import shutil
from pathlib import Path
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.nix import nix_shell
from clan_cli.cmd import Log, RunOpts, run
_works: bool | None = None

View File

@@ -5,13 +5,13 @@ from dataclasses import dataclass
from pathlib import Path
from clan_lib.api import API
from clan_lib.cmd import CmdOut, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_command, nix_metadata, nix_shell
from clan_lib.nix_models.inventory import Inventory
from clan_lib.persist.inventory_store import InventoryStore
from clan_cli.cmd import CmdOut, RunOpts, run
from clan_cli.templates import (
InputPrio,
TemplateName,

View File

@@ -3,6 +3,7 @@ from dataclasses import dataclass
from pathlib import Path
from typing import Any
from clan_lib.cmd import run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import (
@@ -13,7 +14,6 @@ from clan_lib.nix import (
nix_metadata,
)
from clan_cli.cmd import run
from clan_cli.dirs import machine_gcroot
from clan_cli.machines.list import list_machines
from clan_cli.machines.machines import Machine

View File

@@ -5,13 +5,12 @@ from pathlib import Path
from urllib.parse import urlparse
from clan_lib.api import API
from clan_lib.cmd import run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_eval
from clan_lib.nix_models.inventory import Meta
from clan_cli.cmd import run
log = logging.getLogger(__name__)

View File

@@ -7,10 +7,9 @@ from collections.abc import Callable, Iterable
from types import ModuleType
from typing import Any
from clan_lib.cmd import run
from clan_lib.nix import nix_eval
from .cmd import run
"""
This module provides dynamic completions.
The completions should feel fast.

View File

@@ -7,10 +7,10 @@ from collections.abc import Callable
from pathlib import Path
from tempfile import TemporaryDirectory
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import RunOpts, run
from clan_cli.completions import (
add_dynamic_completer,
complete_machines,

View File

@@ -3,9 +3,9 @@ import subprocess
from pathlib import Path
from typing import override
from clan_lib.cmd import Log, RunOpts
from clan_lib.nix import nix_shell
from clan_cli.cmd import Log, RunOpts
from clan_cli.machines.machines import Machine
from clan_cli.ssh.host import Host

View File

@@ -4,9 +4,9 @@ from collections.abc import Generator
from contextlib import contextmanager
from pathlib import Path
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.machines.machines import Machine
log = logging.getLogger(__name__)

View File

@@ -7,10 +7,10 @@ from tempfile import TemporaryDirectory
from typing import Any
from clan_lib.api import API
from clan_lib.cmd import Log, RunOpts, cmd_with_root, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import Log, RunOpts, cmd_with_root, run
from clan_cli.facts.generate import generate_facts
from clan_cli.machines.machines import Machine
from clan_cli.vars.generate import generate_vars

View File

@@ -4,11 +4,10 @@ import os
from pathlib import Path
from clan_lib.api import API
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_build
from clan_cli.cmd import Log, RunOpts, run
log = logging.getLogger(__name__)

View File

@@ -1,10 +1,10 @@
import os
from pathlib import Path
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from .cmd import Log, RunOpts, run
from .locked_open import locked_open

View File

@@ -6,10 +6,10 @@ from enum import Enum
from pathlib import Path
from clan_lib.api import API
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.nix import nix_config, nix_eval
from clan_cli.cmd import RunOpts, run
from clan_cli.completions import add_dynamic_completer, complete_machines
from clan_cli.dirs import specific_machine_dir
from clan_cli.git import commit_file

View File

@@ -8,10 +8,10 @@ from pathlib import Path
from tempfile import TemporaryDirectory
from clan_lib.api import API
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.completions import (
add_dynamic_completer,
complete_machines,

View File

@@ -9,11 +9,11 @@ from functools import cached_property
from pathlib import Path
from typing import TYPE_CHECKING, Any
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_config, nix_eval, nix_test_store
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.facts import public_modules as facts_public_modules
from clan_cli.facts import secret_modules as facts_secret_modules
from clan_cli.ssh.host import Host

View File

@@ -7,12 +7,12 @@ import re
from pathlib import Path
from tempfile import TemporaryDirectory
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_build, nix_command
from clan_lib.nix_models.inventory import Machine as InventoryMachine
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.dirs import get_clan_flake_toplevel_or_env
from clan_cli.machines.create import CreateOptions, create_machine
from clan_cli.machines.machines import Machine

View File

@@ -8,11 +8,11 @@ import sys
from contextlib import ExitStack
from clan_lib.api import API
from clan_lib.cmd import Log, MsgColor, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_command, nix_config, nix_metadata
from clan_cli.async_run import AsyncContext, AsyncOpts, AsyncRuntime, is_async_cancelled
from clan_cli.cmd import Log, MsgColor, RunOpts, run
from clan_cli.colors import AnsiColor
from clan_cli.completions import (
add_dynamic_completer,

View File

@@ -3,10 +3,10 @@ import json
import sys
from pathlib import Path
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import RunOpts, run
from clan_cli.completions import (
add_dynamic_completer,
complete_groups,

View File

@@ -14,11 +14,11 @@ from tempfile import NamedTemporaryFile
from typing import IO, Any
from clan_lib.api import API
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_shell
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.dirs import user_config_dir
from .folders import sops_users_folder

View File

@@ -6,11 +6,11 @@ from dataclasses import dataclass
from pathlib import Path
from typing import Any
from clan_lib.cmd import run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.async_run import AsyncRuntime
from clan_cli.cmd import run
from clan_cli.completions import (
add_dynamic_completer,
complete_machines,

View File

@@ -13,10 +13,10 @@ from shlex import quote
from tempfile import TemporaryDirectory
from typing import Any
from clan_lib.cmd import CmdOut, RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import CmdOut, RunOpts, run
from clan_cli.colors import AnsiColor
from clan_cli.ssh.host_key import HostKeyCheck

View File

@@ -7,11 +7,11 @@ import struct
import time
from dataclasses import dataclass
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.errors import TorConnectionError, TorSocksError
from clan_lib.nix import nix_shell
from clan_cli.async_run import AsyncRuntime
from clan_cli.cmd import Log, RunOpts, run
log = logging.getLogger(__name__)

View File

@@ -2,9 +2,9 @@ import tarfile
from pathlib import Path
from tempfile import TemporaryDirectory
from clan_lib.cmd import Log, RunOpts
from clan_lib.errors import ClanError
from clan_cli.cmd import Log, RunOpts
from clan_cli.ssh.host import Host

View File

@@ -3,10 +3,10 @@ import json
import logging
from pathlib import Path
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.nix import nix_eval
from clan_cli.cmd import RunOpts, run
from clan_cli.completions import (
add_dynamic_completer,
complete_machines,

View File

@@ -3,10 +3,10 @@ from dataclasses import dataclass, field
from pathlib import Path
from typing import Any, Literal, NewType, TypedDict, cast
from clan_lib.cmd import run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.flake import Flake
from clan_cli.cmd import run
from clan_cli.dirs import clan_templates
log = logging.getLogger(__name__)

View File

@@ -5,7 +5,6 @@ from pathlib import Path
from typing import Any
import pytest
from clan_cli.cmd import run
from clan_cli.git import commit_file
from clan_cli.locked_open import locked_open
from clan_cli.templates import (
@@ -18,6 +17,7 @@ from clan_cli.templates import (
list_templates,
)
from clan_cli.tests.fixtures_flakes import FlakeForTest
from clan_lib.cmd import run
from clan_lib.flake import Flake
from clan_lib.nix import nix_command

View File

@@ -3,10 +3,10 @@ import logging
from pathlib import Path
import pytest
from clan_cli.cmd import run
from clan_cli.tests.fixtures_flakes import FlakeForTest, substitute
from clan_cli.tests.helpers import cli
from clan_cli.tests.stdout import CaptureOutput
from clan_lib.cmd import run
from clan_lib.nix import nix_flake_show
log = logging.getLogger(__name__)

View File

@@ -1,6 +1,6 @@
from clan_cli.async_run import AsyncRuntime
from clan_cli.cmd import ClanCmdTimeoutError, Log, RunOpts
from clan_cli.ssh.host import Host
from clan_lib.cmd import ClanCmdTimeoutError, Log, RunOpts
host = Host("some_host")

View File

@@ -5,10 +5,10 @@ from typing import Any, NamedTuple
import pytest
from clan_cli.async_run import AsyncRuntime
from clan_cli.cmd import ClanCmdTimeoutError, Log, RunOpts
from clan_cli.ssh.host import Host
from clan_cli.ssh.host_key import HostKeyCheck
from clan_cli.ssh.parse import parse_deployment_address
from clan_lib.cmd import ClanCmdTimeoutError, Log, RunOpts
from clan_lib.errors import ClanError, CmdOut
if sys.platform == "darwin":

View File

@@ -4,13 +4,13 @@ import sys
from contextlib import ExitStack
import pytest
from clan_cli import cmd
from clan_cli.machines.machines import Machine
from clan_cli.tests.age_keys import SopsSetup
from clan_cli.tests.fixtures_flakes import ClanFlake
from clan_cli.tests.helpers import cli
from clan_cli.tests.nix_config import ConfigItem
from clan_cli.vms.run import inspect_vm, spawn_vm
from clan_lib import cmd
from clan_lib.flake import Flake
from clan_lib.nix import nix_eval, run

View File

@@ -9,7 +9,6 @@ from pathlib import Path
from tempfile import TemporaryDirectory
from typing import TYPE_CHECKING, Any
from clan_cli.cmd import RunOpts, run
from clan_cli.completions import (
add_dynamic_completer,
complete_machines,
@@ -20,6 +19,7 @@ from clan_cli.machines.list import list_machines
from clan_cli.vars._types import StoreBase
from clan_cli.vars.migration import check_can_migrate, migrate_files
from clan_lib.api import API
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_config, nix_shell, nix_test_store

View File

@@ -7,12 +7,12 @@ from itertools import chain
from pathlib import Path
from tempfile import TemporaryDirectory
from clan_cli.cmd import CmdOut, Log, RunOpts, run
from clan_cli.machines.machines import Machine
from clan_cli.ssh.host import Host
from clan_cli.ssh.upload import upload
from clan_cli.vars._types import StoreBase
from clan_cli.vars.generate import Generator, Var
from clan_lib.cmd import CmdOut, Log, RunOpts, run
from clan_lib.nix import nix_shell
log = logging.getLogger(__name__)

View File

@@ -12,10 +12,10 @@ from dataclasses import dataclass
from pathlib import Path
from tempfile import TemporaryDirectory
from clan_lib.cmd import CmdOut, Log, RunOpts, handle_io, run
from clan_lib.errors import ClanCmdError, ClanError
from clan_lib.nix import nix_shell
from clan_cli.cmd import CmdOut, Log, RunOpts, handle_io, run
from clan_cli.completions import add_dynamic_completer, complete_machines
from clan_cli.dirs import module_root, user_cache_dir, vm_state_dir
from clan_cli.facts.generate import generate_facts

View File

@@ -4,8 +4,7 @@ from dataclasses import dataclass, field
from pathlib import Path
from typing import Any, Literal
from clan_cli.cmd import RunOpts, run
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_shell

View File

@@ -2,8 +2,7 @@ import argparse
import re
from dataclasses import dataclass
from clan_cli.cmd import run
from clan_lib.cmd import run
from clan_lib.nix import nix_shell
from . import API

View File

@@ -3,10 +3,10 @@ import time
from dataclasses import dataclass
from typing import Literal
from clan_cli.cmd import RunOpts
from clan_cli.machines.machines import Machine
from clan_lib.api import API
from clan_lib.cmd import RunOpts
from clan_lib.errors import ClanError
log = logging.getLogger(__name__)

View File

@@ -18,12 +18,12 @@ from enum import Enum
from pathlib import Path
from typing import IO, Any
from clan_lib.errors import ClanCmdError, ClanError, CmdOut, indent_command
from clan_cli.async_run import get_async_ctx, is_async_cancelled
from clan_cli.colors import Color
from clan_cli.custom_logger import print_trace
from clan_lib.errors import ClanCmdError, ClanError, CmdOut, indent_command
cmdlog = logging.getLogger(__name__)

View File

@@ -619,8 +619,7 @@ class Flake:
"""
Loads the flake into the store and populates self.store_path and self.hash such that the flake can evaluate locally and offline
"""
from clan_cli.cmd import run
from clan_lib.cmd import run
from clan_lib.nix import (
nix_command,
)
@@ -704,9 +703,9 @@ class Flake:
ClanError: If the number of outputs does not match the number of selectors.
AssertionError: If the cache or flake cache path is not properly initialized.
"""
from clan_cli.cmd import Log, RunOpts, run
from clan_cli.dirs import nixpkgs_source, select_source
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.nix import (
nix_build,
nix_config,
@@ -820,8 +819,7 @@ class Flake:
> '{ ...JSONSchema... }'
"""
from clan_cli.cmd import Log, RunOpts, run
from clan_lib.cmd import Log, RunOpts, run
from clan_lib.nix import (
nix_eval,
nix_test_store,

View File

@@ -7,10 +7,10 @@ from functools import cache
from pathlib import Path
from typing import Any
from clan_cli.cmd import run
from clan_cli.dirs import nixpkgs_flake, nixpkgs_source
from clan_cli.locked_open import locked_open
from clan_lib.cmd import run
from clan_lib.errors import ClanError
log = logging.getLogger(__name__)

View File

@@ -8,7 +8,6 @@ from typing import Any
import clan_cli.clan.create
import pytest
from clan_cli.cmd import RunOpts, run
from clan_cli.dirs import specific_machine_dir
from clan_cli.inventory import patch_inventory_with
from clan_cli.machines.create import CreateOptions as ClanCreateOptions
@@ -23,6 +22,7 @@ from clan_cli.vars.generate import generate_vars_for_machine, get_generators_clo
from clan_lib.api.disk import hw_main_disk_options, set_machine_disk_schema
from clan_lib.api.network import check_machine_online
from clan_lib.cmd import RunOpts, run
from clan_lib.errors import ClanError
from clan_lib.flake import Flake
from clan_lib.nix import nix_command