Commit Graph

153 Commits

Author SHA1 Message Date
kenji
2e403425f9 Merge pull request 'pkgs/clan: Add --tags support to clan machines update' (#4061) from kenji/pkgs/clan: Add --tags support to clan machines update into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4061
2025-06-24 09:43:35 +00:00
Qubasa
78fdd21610 clan-cli: Add missining propagation of host-key-check in machines.update 2025-06-24 10:35:53 +02:00
a-kenji
fc0e8fa1bd pkgs/clan: Add --tags support to clan machines update 2025-06-23 23:51:43 +02:00
Qubasa
071151f300 clan-lib: Rename parse_deployment_address to parse_ssh_uri 2025-06-23 15:32:35 +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
Michael Hoang
a0f39a4a66 cli: fix machines update failing with protocol mismatch on macOS 2025-06-18 16:30:11 +07:00
Jörg Thalheim
a2eaf20492 machines: fix remote-program for darwin nix copy
MacOS doesn't come with a proper login shell for ssh and therefore
doesn't have nix in $PATH as it doesn't source /etc/profile.
This restores the remote-program parameter that was accidentally
removed in commit e14f30bdc0.
2025-06-17 16:30:04 +02:00
Qubasa
86536bae42 clan-lib: Refactor remote host handling to function parameters
This refactoring improves the separation of concerns by moving remote host creation logic from the Machine class to the calling functions, making the code more flexible and testable.
2025-06-17 14:04:22 +02:00
Qubasa
d29bba48e7 clan-lib: Make Remote overridable over function arguments 2025-06-17 13:53:43 +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
hsjobeki
78c0ad24d9 Merge pull request 'Refactor(api/update_machine): rename to set_machine; use name, flake' (#3899) from api-narrowing into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3899
2025-06-09 11:55:28 +00:00
Johannes Kirschbauer
2685db33d7 Refactor(cli/list_machines): rename to list_full_machines
This makes it clear that this should be used with care
It is potentially more expensive to create the full object, therefore it should be discouraged by its longer name
This listing is implemented based on the basic listing, where each item is turned into the bigger machine class
2025-06-09 13:40:57 +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
b4263caf37 cli: fix buildHost source upload destination
Sources were being uploaded to target host instead of build host,
causing nixos-rebuild to fail with "no such file or directory".
2025-06-06 14:51:12 +02:00
Jörg Thalheim
2ef379b4df update/upload_sources remove ssh_control_master again from upload_sources 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
Jörg Thalheim
e275bb20bc fix build_host not beeing applied 2025-05-22 00:22:04 +02:00
lassulus
a4895a4d96 clan-cli: clan_cli.async_run -> clan_lib.async_run 2025-05-20 15:05:11 +02:00
lassulus
9063e4aae9 clan-cli: clan_cli.colors -> clan_lib.colors 2025-05-20 12:52:12 +02:00
Jörg Thalheim
3543315f81 use absolute path to darwin-rebuild to workaround missing login shells used on macOS 2025-05-20 10:56:44 +02:00
Jörg Thalheim
cb2ccd33a4 add workaround for nix-copy on darwin 2025-05-20 10:56:44 +02:00
Jörg Thalheim
cb1703d059 drop deploy_as_root check
We haven't documented macOS support yet, so I don't expect many people
using it yet. Now that the pull request is merged probably most people
starting with darwin-nix will be on that commit anyway, so it's not
worth the check, given that the sudo version doesn't work very well.
2025-05-20 10:38:54 +02:00
lassulus
494705e9d3 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
2025-05-19 17:19:55 +00:00
lassulus
9a0c6f55bd clan-cli: clan_cli.cmd -> clan_lib.cmd 2025-05-19 19:07:24 +02:00
lassulus
7ec9f20a25 Merge pull request 'fix(cli/machines/deploy): warn on local input' (#3687) from tennox/clan-core:warn-local-input into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3687
Reviewed-by: lassulus <clanlol@lassul.us>
2025-05-19 16:58:33 +00:00
lassulus
cb74273da4 clan-cli: move clan_cli.nix to clan_lib.nix 2025-05-19 18:40:36 +02:00
Manu [tennox]
2f6dc9ba17 fix(cli/machines/deploy): warn on local input
see: https://git.clan.lol/clan/clan-core/issues/3112
2025-05-17 15:30:32 +01:00
Johannes Kirschbauer
fe0507b47c refactor: move clan_cli.error to clan_lib.error 2025-05-16 16:14:39 +02:00
Qubasa
8d80fe343d clan-app: Fix machine update cancel task 2025-05-13 14:06:02 +02:00
Michael Hoang
b46ae13453 cli: fix machines update not outputting stdout of nixos-rebuild 2025-05-10 17:02:56 +10:00
Qubasa
01f9bb358e clan-cli: Use machine object everywhere instead of name + flake 2025-05-09 13:13:14 +02:00
Johannes Kirschbauer
d8883db24d Refactor(machine/update): cleanup dataflow and logic conditions to be intuitive 2025-05-06 16:49:32 +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
19947c6d6b fix incorrect target host when build host is set 2025-05-06 09:26:59 +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
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
28c06bbdc1 update: fix sudo password prompt 2025-05-04 10:51:49 +02:00
pinpox
938dc5b155 Set terminal on nix flake update/archive
When using resident SSH-keys (-sk), e.g. from a Yubikey that require a
Pin, a terminal is needed to be able to enter it during deployment.
2025-05-02 15:41:29 +02:00
Jörg Thalheim
22608dd0c2 correct capitilization for targetHost in error message 2025-05-01 15:11:05 +02:00
DavHau
02ca5bd870 gui: make update machine work
Also fix error when age plugins not defined
2025-04-30 15:28:49 +07:00
Johannes Kirschbauer
f6628ec1a9 Refactor(clan_lib): move clan_cli.api into clan_lib.api 2025-04-26 19:51:35 +02:00
Michael Hoang
5eae0c65d8 cli: support updating nix-darwin machines 2025-04-22 23:39:47 +10:00
Michael Hoang
3151d4ba86 cli: only use sudo when deploying locally 2025-04-22 23:14:03 +10:00
Michael Hoang
2768d959e7 cli: use sudo consistently when running nixos-rebuild switch 2025-04-22 23:14:03 +10:00
Michael Hoang
f336f6514c Back out "cli: don't update macOS machines"
This backs out commit 83a2de0f47.
2025-04-22 23:14:03 +10:00
Michael Hoang
fc7a4d2b75 machines: fix nixos-rebuild not getting retried 2025-04-15 16:16:03 +02:00