Jörg Thalheim
7f1590c729
PERF403: fix
2025-08-25 15:06:32 +02:00
Jörg Thalheim
ea2d6aab65
ruff: apply automatic fixes
2025-08-25 11:34:41 +02:00
lassulus
a50b25eea2
clan-cli network: refactor, use new networking in ssh and install commands
2025-08-13 12:04:14 +07:00
lassulus
017989841d
refactor: remove DeployInfo class and use Network/Remote directly
...
- Remove DeployInfo class entirely, replacing with direct Remote usage
- Update parse_qr_json_to_networks to return dict with network and remote
- Refactor all code to work with Remote lists instead of DeployInfo
- Add get_remote_for_machine context manager for network connections
- Update tests to use new Network/Remote structure
2025-08-13 12:04:14 +07:00
lassulus
c14a5fcc69
refactor: move ssh/upload.py from cli to lib
...
Move the upload module to clan_lib to better organize SSH-related
utilities. Updated all imports across the codebase.
2025-08-13 12:04:14 +07:00
DavHau
b74193514d
ssh: refactor callers to use new Host interface
2025-08-05 13:16:59 +02:00
lassulus
1a5b77d47a
refactor: generalize Tor support to SOCKS5 proxy in network module
...
- Replace Tor-specific implementation with generic SOCKS5 proxy support
- Change `tor_socks` boolean to `socks_port` and `socks_wrapper` parameters
- Move Tor functionality to clan_lib.network.tor submodule
- Add connection context managers to NetworkTechnologyBase
- Improve network abstraction with proper remote() and connection() methods
- Update all callers to use new SOCKS5 proxy interface
- Fix network ping command to properly handle connection contexts
This allows for more flexible proxy configurations beyond just Tor,
while maintaining backward compatibility for Tor usage.
2025-07-24 22:26:44 +02:00
Qubasa
cfba97eee5
clan-cli: Reference HostKeyCheck literal instead of duplicating the list everywhere
2025-07-16 13:12:48 +07:00
Qubasa
e8b5e2c2c5
clan-cli: Fixup clan install which depends on ssh_parseargs.
...
clan-cli: Remove --ssh-option for now, as it can't work in current state
clan-cli: Remove nix_config from test as its impure
2025-07-14 20:47:49 +07:00
Qubasa
9630b6dbe4
clan-cli: Make 'clan ssh' read out the targetHost to connect to
2025-07-14 19:35:48 +07:00
Johannes Kirschbauer
6560738502
api/machine checks: rename, add checkResult
2025-07-07 13:13:00 +02:00
lassulus
045b250f9a
Revert "make host key check an enum instead of an literal type"
...
This reverts commit 3d83017acd .
2025-07-06 14:51:19 +02:00
Jörg Thalheim
3d83017acd
make host key check an enum instead of an literal type
...
this is more typesafe at runtime.
2025-07-04 14:36:05 +02:00
a-kenji
73db293ec7
pkgs/clan: Fix clan ssh subcommand
2025-06-27 15:39:38 +02:00
Qubasa
168e1d8c96
clan-cli: Move hardware.py to clan_lib/machines
2025-06-24 11:07:37 +02:00
Qubasa
071151f300
clan-lib: Rename parse_deployment_address to parse_ssh_uri
2025-06-23 15:32:35 +02:00
Qubasa
255f2da358
clan-lib: Remove override args from parse_deployment_address, instead use the Remote.override method where necessary
2025-06-23 15:28:22 +02:00
Qubasa
054ea67fb7
clan-cli: Simplify HostKeyCheck to a Literal instead of an Enum
2025-06-23 15:08:44 +02:00
Qubasa
274c552365
clan-lib: machines.py: Remove host_key attribute
2025-06-19 17:55:56 +02:00
Qubasa
ee802ad723
clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser
2025-06-09 19:27:01 +02:00
lassulus
8ce860f0d3
Revert "clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser"
...
This reverts commit b1ef5f00bf .
2025-06-09 11:28:15 +02:00
Qubasa
b1ef5f00bf
clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser
2025-06-07 00:51:24 +02:00
Jörg Thalheim
ddab4b5b94
re-store controllmaster in various places where it got removed.
2025-05-28 16:21:30 +02:00
Jörg Thalheim
f3cdcef523
no longer require controlmaster for interactive ssh
...
we only run one ssh command, so control master is not needed
2025-05-28 16:21:30 +02:00
Jörg Thalheim
cedc5113ea
add sudo_askpass_proxy
2025-05-28 16:21:30 +02:00
Qubasa
8b1968cca6
clan-cli: Move Machine object to clan_lib
2025-05-22 19:11:19 +02:00
Qubasa
e14f30bdc0
clan-cli: Rename Host -> Remote move to clan_lib and mark as frozen
2025-05-22 14:08:27 +02:00
lassulus
a4895a4d96
clan-cli: clan_cli.async_run -> clan_lib.async_run
2025-05-20 15:05:11 +02:00
lassulus
9ecf98171b
Merge pull request 'clan_lib_colors' ( #3713 ) from clan_lib_colors into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3713
2025-05-20 11:59:18 +00:00
Jörg Thalheim
2f2af072e4
upload: hide upload command by default
2025-05-20 13:37:46 +02:00
Jörg Thalheim
e2af063528
upload: stream tarball rather than read at once
2025-05-20 13:37:46 +02:00
lassulus
9063e4aae9
clan-cli: clan_cli.colors -> clan_lib.colors
2025-05-20 12:52:12 +02:00
Jörg Thalheim
c5ba64bd30
host.run: improve quoting of bash command
2025-05-20 10:56:44 +02:00
lassulus
9a0c6f55bd
clan-cli: clan_cli.cmd -> clan_lib.cmd
2025-05-19 19:07:24 +02:00
lassulus
cb74273da4
clan-cli: move clan_cli.nix to clan_lib.nix
2025-05-19 18:40:36 +02:00
Jörg Thalheim
daa0e0f4e6
machines/upload: start to use builtin sudo
2025-05-19 11:18:15 +02:00
Johannes Kirschbauer
fe0507b47c
refactor: move clan_cli.error to clan_lib.error
2025-05-16 16:14:39 +02:00
Jörg Thalheim
3d743960a4
upload: don't try to re-create directory if it already exists
...
This allows bind mounts i.e. needed for preserveration/impermanence
2025-05-16 15:39:09 +02:00
Jörg Thalheim
50dc6c4c50
fix ssh master on macos
2025-05-14 20:30:36 +02:00
Qubasa
01f9bb358e
clan-cli: Use machine object everywhere instead of name + flake
2025-05-09 13:13:14 +02:00
Jörg Thalheim
f3c673d165
only apply ssh control master to local ssh connection
2025-05-06 13:11:30 +02:00
Jörg Thalheim
5846f5d63a
Host: actual setup ssh controlmaster
...
before we were not entering the context manager
2025-05-06 13:11:30 +02:00
Jörg Thalheim
be79d75c08
bind ssh controlmaster to live time of CLI
2025-05-04 16:28:14 +02:00
Jörg Thalheim
dc4268dbf2
fix ssh control master check ( #3488 )
...
Co-authored-by: pinpox <git@pablo.tools >
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3488
Co-authored-by: Jörg Thalheim <joerg@thalheim.io >
Co-committed-by: Jörg Thalheim <joerg@thalheim.io >
2025-05-04 12:49:53 +00:00
Jörg Thalheim
9af16037a2
Revert "Merge pull request 'Fix deploying with sudo + password' ( #3470 ) from target-host into main"
...
This reverts commit fbc0f9cde5 , reversing
changes made to b47c25c620 .
2025-05-04 13:37:39 +02:00
Jörg Thalheim
39880f9434
fix upload when sudo prompts are needed
2025-05-04 10:51:49 +02:00
Mic92
b47c25c620
Merge pull request 'Miscellaneous ssh fixes.' ( #3487 ) from misc-fixes into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3487
2025-05-04 08:51:31 +00:00
Jörg Thalheim
fb4421427b
Host: always set needs_user_terminal for ssh commands, only override prefix if given by user
2025-05-04 10:39:39 +02:00
Jörg Thalheim
35ee7986d7
rename connect_ssh_shell to interactive_ssh
...
better name than secure shell shell
2025-05-04 10:28:43 +02:00
Jörg Thalheim
75cb031e6e
move password/tor_socks into Host attributes
...
we set those parameters usually just once.
2025-05-04 10:28:43 +02:00