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
DavHau
d37c7c4c05
buildClan function: export all machines via nixosModules/darwinModules
...
We want each machine not only to be exposed via nixosConfigurations but also as a module.
This allows re-importing the machine in tests and override the architecture for example.
2025-06-09 12:51:22 +00: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
Johannes Kirschbauer
57e71e6c66
Refactor(api/list_machines): rename from list_inv_machines
2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
e65cba43f7
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
7c4b836963
refactor(clan_lib): move show_clan_meta to clan_lib
2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
ad948ec097
refactor(clan_lib): move update to clan_lib.clan
2025-06-09 13:33:25 +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
hsjobeki
4faec2c4d2
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
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
Michael Hoang
4b26108b3d
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
Johannes Kirschbauer
ea1c1a5185
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
DavHau
d9f69d7007
generate-test-vars: fake prompt inputs
...
Use fake prompt inputs when generating vars for testing
2025-05-31 17:14:26 +07:00
DavHau
de3a08ab63
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
Jörg Thalheim
dcb430037f
vars upload: also add become_root
2025-05-28 20:35:45 +02:00
Jörg Thalheim
1cbc1d9af8
test_upload_single_file: add missing ssh_control_master
2025-05-28 20:25:53 +02:00
Jörg Thalheim
1688972bce
move test_ssh_remote to remote_test
2025-05-28 20:13:48 +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
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
Johannes Kirschbauer
104343a334
feat(InventoryStore): return a restricted view of the inventory
2025-05-28 14:04:34 +02:00
Johannes Kirschbauer
d482e22610
chore(nix_models): migrate import to use exported clan models
2025-05-28 14:03:22 +02:00
Johannes Kirschbauer
dd9ea44770
refactor(persist/utils): rename apply_patch to 'set_value_by_path'
2025-05-28 10:16:48 +02:00
Johannes Kirschbauer
63733f2c14
Fix(test): migrate machine cli command tests to use the new functions
2025-05-27 17:57:08 +02:00
Johannes Kirschbauer
e6d1f71907
Feat(inventory): remove legacy action functions
...
Inventory should only and always be accessed through the inventory store.
Manually reading and writing to the json file is highly insecure
2025-05-27 17:20:04 +02:00
Johannes Kirschbauer
2312a65c17
Chore: rename secrets.get_machine to avoid ambiguity
2025-05-26 17:52:46 +02:00
Johannes Kirschbauer
90d9dbb242
Refactor(lib/inventory): move machine actions into clan_lib/machines/actions.py
2025-05-26 17:51:12 +02:00
Johannes Kirschbauer
55195e57e0
fix(morph/test): temporary workaround for morph test
2025-05-26 16:06:12 +02:00
Johannes Kirschbauer
14701fda01
chore: add todo comments for template logic in create machine
2025-05-26 16:05:20 +02:00
Johannes Kirschbauer
fe933d8eb7
Fix(machines/create): check if machine is already created
2025-05-23 22:31:06 +02:00
Johannes Kirschbauer
c8588eddb6
Fix(machines/create): always add 'deploy.targetHost'
...
Rationale: not passing the value, is equivalent to deleting a value from the inventory store
See: 'delete_by_path'
deploy.targetHost has a default of null (None)
2025-05-23 22:07:09 +02:00
Johannes Kirschbauer
0bf183b73b
fix(tests): use inventory store to interact with the inventory
2025-05-23 21:46:35 +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
Mic92
91994445ff
Merge pull request 'fix build_host not beeing applied' ( #3740 ) from fix-build-host into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3740
2025-05-22 11:25:20 +00:00
Jörg Thalheim
e275bb20bc
fix build_host not beeing applied
2025-05-22 00:22:04 +02:00
lassulus
c64895fdff
clan-cli: split clan into cli and lib
2025-05-21 20:28:41 +02:00
lassulus
cb0d7ae36a
Merge pull request 'clan-cli: split backups into cli and lib' ( #3733 ) from clan_lib_backups into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3733
2025-05-21 12:16:02 +00:00
DavHau
d833b62614
GUI: add credentials page (vars)
...
add it to machine details
2025-05-21 11:47:04 +00:00
lassulus
44e3df3ebf
clan-cli: split backups into cli and lib
2025-05-21 13:46:35 +02:00
lassulus
cb84722c11
clan-cli: clan_cli.bwrap -> clan_lib.bwrap
2025-05-21 12:06:38 +02:00
lassulus
2de3dcef15
clan-cli: clan_cli.inventory -> clan_lib.inventory
2025-05-21 12:06:38 +02:00
hsjobeki
56a00e0afd
Merge pull request 'Refactor(clan_lib): move serde tests next to serde module' ( #3728 ) from hsjobeki/clan-core:chores-1 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3728
2025-05-21 08:15:11 +00:00
Johannes Kirschbauer
70d06a189b
Refactor(clan_lib): move serde tests next to serde module
2025-05-21 09:36:00 +02:00
Johannes Kirschbauer
b7c6e8917b
docs: replace remote url by local file links to allow for checking
2025-05-20 18:49:35 +02:00
Johannes Kirschbauer
d3fc1725f0
docs: replace outdates reference links to 'guides' in the cli
2025-05-20 18:49:35 +02:00
hsjobeki
3edd6487cc
Merge pull request 'feat(docs,api): expose inventory.instances interface' ( #3721 ) from hsjobeki/clan-core:inventory-services-1 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3721
2025-05-20 15:29:14 +00:00