Johannes Kirschbauer
155f3721eb
refactor: cleanup unused imports
...
They are registered already if they are located as module in clan_lib
2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
6a8604f2b8
refactor(clan_lib): move show_clan_meta to clan_lib
2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
ea65ca448d
refactor(clan_lib): move update to clan_lib.clan
2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
ebf3964197
Refactor(api/update_machine): rename to set_machine; use name, flake
2025-06-09 13:33:19 +02:00
lassulus
2460ac970f
Revert "clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser"
...
This reverts commit 2ca3b5d698 .
2025-06-09 11:28:15 +02:00
hsjobeki
2a576a604b
Merge pull request 'Chore(api): narrow down get_machine' ( #3863 ) from api-narrowing into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3863
2025-06-09 08:59:36 +00:00
Qubasa
2ca3b5d698
clan-cli: Use Remote class in DeployInfo, add tests for qrcode parser and json parser
2025-06-07 00:51:24 +02:00
Mic92
e5127ea4e6
Merge pull request 'cli: fix buildHost source upload destination' ( #3884 ) from clan-core-update-2 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3884
2025-06-06 13:06:54 +00:00
Jörg Thalheim
9fecd0cc47
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
lassulus
c4bb842806
Merge pull request 'fix select escaping' ( #3857 ) from lassulus/test into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3857
2025-06-06 10:58:14 +00:00
lassulus
795d722461
select: fix error message showing nonsense
2025-06-06 10:12:15 +02:00
lassulus
fe7c618ae5
select: fix non escaped '
2025-06-06 10:12:15 +02:00
Michael Hoang
9479f33f6e
cli: don't generate a sops key that is world readable
...
Fixes https://git.clan.lol/clan/clan-core/issues/3808
2025-06-06 12:15:19 +10:00
Qubasa
9cec635fdc
clan_lib: Fix quoting issues
2025-06-05 17:24:36 +02:00
Johannes Kirschbauer
e24a197062
Chore(specific_machine_dir): use protocol to avoid direct dependency on machine class
2025-06-04 20:51:27 +02:00
Johannes Kirschbauer
8261ff09cc
Chore(api): narrow down get_machine
...
Dont require the user to pass the machine into the same getter function
The workflow contradicts itself here
2025-06-04 20:38:45 +02:00
hsjobeki
51b28a9265
Merge pull request 'feat(inventory/instances): add option for extraModules to roles' ( #3830 ) from flake-models into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3830
2025-06-03 18:58:13 +00:00
Johannes Kirschbauer
e5c0c1e69c
Fix(inventory/extraModules): use more narrow type for better persistence
2025-06-03 18:57:34 +02:00
Johannes Kirschbauer
43e85b5482
Chore: update clan nix_models
2025-06-03 18:18:12 +02:00
Johannes Kirschbauer
2ff09100e5
chore: delete duplicate inventory models
2025-06-03 17:52:07 +02:00
Jörg Thalheim
89b436b8a1
fix buildhost re-using control socket for updates
...
this is actually a serious issue because it also would result doing ssh
to the wrong host: https://git.clan.lol/clan/clan-core/issues/3822
2025-06-03 14:01:49 +02:00
Michael Hoang
10b89fe8fd
cli: allow using commands from local flakerefs for debugging
2025-06-03 14:07:45 +10:00
Qubasa
bd7a5694e2
clan-cli: Fix test_create::test_clan_create_api
2025-06-02 15:39:50 +02:00
Qubasa
27791477b1
inventory: Add buildHost argument
2025-06-02 14:52:13 +02:00
DavHau
65d9ef02dc
generate-test-vars: fake prompt inputs
...
Use fake prompt inputs when generating vars for testing
2025-05-31 17:14:26 +07:00
DavHau
e81771a724
tests: test vars generation for all clan service tests
2025-05-31 12:17:52 +07:00
DavHau
7ecc142ba9
sops: initialize age_plugins early
...
This avoids re-initializing the Flake object deep in the tree, which in turn leads to issue when overriding the Flake for testing, eg the URl would reset.
2025-05-31 11:27:17 +07:00
hsjobeki
672ef7c4d2
Merge pull request 'Tests(inventoryStore): add tests for intersecting nix/json lists' ( #3783 ) from flake-models into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3783
2025-05-30 08:35:13 +00:00
Johannes Kirschbauer
c42d981285
Test(InventoryPersistence): improve error message
2025-05-30 10:23:57 +02:00
Jörg Thalheim
229401e6ef
vars upload: also add become_root
2025-05-28 20:35:45 +02:00
Jörg Thalheim
e733619139
test_upload_single_file: add missing ssh_control_master
2025-05-28 20:25:53 +02:00
Jörg Thalheim
14324a059b
move test_ssh_remote to remote_test
2025-05-28 20:13:48 +02:00
Jörg Thalheim
ac31b20522
re-store controllmaster in various places where it got removed.
2025-05-28 16:21:30 +02:00
Jörg Thalheim
75dd389c2c
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
31274212a8
ssh/remote: Improve error message if _control_path_dir is not set
2025-05-28 16:21:30 +02:00
Jörg Thalheim
e0ebea7eb8
update/upload_sources remove ssh_control_master again from upload_sources
2025-05-28 16:21:30 +02:00
Jörg Thalheim
f06313d5b2
add sudo_askpass_proxy
2025-05-28 16:21:30 +02:00
Jörg Thalheim
5a560ff219
ssh/remote: make sure we also cleanup clan-ssh in the error case
2025-05-28 16:21:30 +02:00
Jörg Thalheim
91406b2016
remove unused method
2025-05-28 16:21:30 +02:00
Johannes Kirschbauer
1582402634
Tests(inventoryStore): add tests for intersecting nix/json lists
2025-05-28 15:39:52 +02:00
Johannes Kirschbauer
dc94749647
Tests(inventoryStore): add fixture, make extensible
2025-05-28 15:06:17 +02:00
Johannes Kirschbauer
2da7ebaa21
Fix(machines/create): use 'InventorySnapshot' as init argument
...
Inventory as a model is generally not json serializable
InventorySnapshot is the return value of InventoryStore.{read, write}
And should be used in API calls, because the other fields might not be compatible in general
2025-05-28 14:09:45 +02:00
Johannes Kirschbauer
e57c8f6f9a
feat(InventoryStore): return a restricted view of the inventory
2025-05-28 14:04:34 +02:00
Johannes Kirschbauer
467aa546c4
Chore: update clan nix_models
2025-05-28 14:03:23 +02:00
Johannes Kirschbauer
19dbc0ff73
chore(nix_models): migrate import to use exported clan models
2025-05-28 14:03:22 +02:00
Johannes Kirschbauer
8eb2ad6c6d
feat(nix_models): replace inventory model by holistic clan model
2025-05-28 14:02:43 +02:00
Johannes Kirschbauer
5271b5c599
Fix(inventoryStore): use 'nix_eval' wrapper to set the store correct
2025-05-28 11:34:16 +02:00
Johannes Kirschbauer
f6c869dbae
Fix(clan_cli): filter tests files from source
2025-05-28 11:34:12 +02:00
Johannes Kirschbauer
673b6bb31f
Fix(tests): fix failing pytests
2025-05-28 11:01:54 +02:00
Johannes Kirschbauer
6f0a4549a5
Tests(inventoryStore): fixup tests to run in ci
2025-05-28 10:42:47 +02:00